-
-
Notifications
You must be signed in to change notification settings - Fork 5
Requirements
vhdl-ext
makes use of several binaries as backend engines to support IDE-like functionality.
List of required binaries:
- Definitions and references navigation:
global
,gtags
,universal-ctags
,python
,pygments
- Jump to parent entity:
ag
,ripgrep
- Linting:
ghdl
,vhdl_lang
,vhdl-tool
- LSP:
vhdl_ls
,ghdl-ls
,vhdl-tool
,hdl_checker
For information on how to install/configure some of these binaries refer to the corresponding feature wiki page.
You can also check Bash script test-hdl/vhdl/scripts/setup-env.sh
used in ERT regressions.
Installing vhdl-ext
through package.el
or straight
will
install automatically vhdl-ts-mode
since it is a dependency.
It will still be needed to install tree-sitter and VHDL grammar
to use tree-sitter as a backend for some vhdl-ext
features.
vhdl-ts-mode
has instructions about how to set up tree-sitter:
These should be handled automatically by straight
or package.el
.
If you want more information about these packages to change customization or extend functionality refer to their respective websites:
- vhdl-ts-mode: VHDL tree-sitter major-mode
- eglot: language server protocol client, bundled with Emacs 29
- lsp-mode: language server protocol client
- ag: frontend for the silversearcher, used to find parent entity
- ripgrep: frontend for ripgrep, used to find parent entity
- hydra: tie related commands into a family of short bindings with a common prefix, used for templates
- flycheck: syntax checker for linters
- outshine: extension of outline-minor-mode used to navigate design hierarchy
- async: module for doing asynchronous processing in Emacs