Depending on the type of file being edited, the following dwim functions perform different actions.
verilog-ext-nav-beg-of-defun-dwim
verilog-ext-nav-end-of-defun-dwim
verilog-ext-nav-down-dwim
verilog-ext-nav-up-dwim
verilog-ext-nav-prev-dwim
verilog-ext-nav-next-dwim
If current file has a module definition it will be detected as an RTL environment. Otherwise, it will be considered a Verification class-based environment.
verilog-ext-nav-beg-of-defun-dwim
and verilog-ext-nav-end-of-defun-dwim
verilog-ext-nav-down-dwim
and verilog-ext-nav-up-dwim
verilog-ext-nav-prev-dwim
and verilog-ext-nav-next-dwim
The following functions are defined for instance navigation:
verilog-ext-find-module-instance-fwd
verilog-ext-find-module-instance-bwd
However, these are not bound to any key since they are called by verilog-ext-nav-down-dwim
(C-M-d) and verilog-ext-nav-up-dwim
(C-M-u) respectively, when current file has a module declaration (e.g. RTL code in most cases).
If point is inside a module instantiation, it is possible to navigate to its definition or references:
verilog-ext-jump-to-module-at-point-def
verilog-ext-jump-to-module-at-point-ref
This functionality requires setting up a backend for xref
and add it to xref-backend-functions
. This can be done in three ways:
xref
backend (see link)ggtags-mode
global
, ctags
(for definitions) and python
/pygments
(for references).
# For Ubuntu/Debian systems sudo apt-get install global universal-ctags python3-pygments
Running verilog-ext-jump-to-parent-module
(C-M-.) will run ag
or ripgrep
, depending on the value of verilog-ext-jump-to-parent-module-engine
, and will try to find instantiations of current file module definition on current project.
To install ag
:
sudo apt-get install silversearcher-ag
For ripgrep
you need to install a version that supports PCRE2:
apt-get
on default PPAs might not have PCRE2 enabled. Therefore the command below is recommended:$ curl -LO https://github.com/BurntSushi/ripgrep/releases/download/13.0.0/ripgrep_13.0.0_amd64.deb $ sudo dpkg -i ripgrep_13.0.0_amd64.deb
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4