Smart VHDL
Syntax Highlighting, Snippets, code navigation and more for VHDL
Details
Installs
- Total 11K
- Win 7K
- Mac 948
- Linux 3K
Oct 10 | Oct 9 | Oct 8 | Oct 7 | Oct 6 | Oct 5 | Oct 4 | Oct 3 | Oct 2 | Oct 1 | Sep 30 | Sep 29 | Sep 28 | Sep 27 | Sep 26 | Sep 25 | Sep 24 | Sep 23 | Sep 22 | Sep 21 | Sep 20 | Sep 19 | Sep 18 | Sep 17 | Sep 16 | Sep 15 | Sep 14 | Sep 13 | Sep 12 | Sep 11 | Sep 10 | Sep 9 | Sep 8 | Sep 7 | Sep 6 | Sep 5 | Sep 4 | Sep 3 | Sep 2 | Sep 1 | Aug 31 | Aug 30 | Aug 29 | Aug 28 | Aug 27 | Aug 26 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 1 | 0 | 3 | 0 | 1 | 0 | 4 | 3 | 0 | 2 | 0 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 2 | 3 | 1 | 1 | 0 | 0 | 7 | 0 | 0 | 0 | 5 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 2 | 2 | 0 | 1 | 0 | 0 |
Mac | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 |
Linux | 0 | 0 | 2 | 1 | 0 | 0 | 0 | 0 | 3 | 2 | 2 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 3 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 4 | 0 | 1 |
Readme
- Source
- raw.githubusercontent.com
Sublime Text 'Smart' VHDL Package
General
The goal of this plugin is to provide IDE-like features for VHDL (similar to my other plugin for SystemVerilog) :
Compare to the basic VHDL plugin it already proposes:
- a proper symbol definition for easy code navigation
- Some basic indentation definition
- A complete set of snippets written by https://github.com/ccornish
- Tooltip to get signal definition on mouse hover
- Generate a design hierarchy (list of every sub-block) (available in the command panel)
- Navigation side-bar:
- Display instances/procedure/functions inside the current module/package
- Double click on instance/type to jump to it
Future features includes code completion (for record, enum, …), code alignement, block instantiation, …
Description
Syntax Highlighting:
Syntax highlighting is based on the VHDL bundle for Textmate, with a rework of scope to be aligned with the SystemVerilog plugin and some support of VHDL2008 features
Note: the default color scheme (Monokai) is missing a lot of scope, and might not give the best results. You can try my personal variation of Sunburst : https://bitbucket.org/Clams/sublimesystemverilog/downloads/Sunburst2.tmTheme
Code Navigation:
- Show signal declaration in tooltip or status bar
- Show hierarchy of a block (all its sub-block and their sub-block)
- Find Instances: find all instance of a module inside a project
Module Instance helper:
- Instantiation: Select a module from a list and create instantiation and connection
Code Alignement:
- Align module instantiation
Configuration
To see all existing configuration option, go to Preferences->Package Settings->SmartVHDL->Settings (Default).
To edit settings open the Settings (User), and add parameter with the value you want.
Keymapping example
To map key to the different feature, simply add the following to your user .sublime-keymap file:
{
"keys": ["ctrl+f10"], "command": "vhdl_module_inst",
"context":
[
{ "key": "num_selections", "operator": "equal", "operand": 1 },
{ "key": "selector", "operator": "equal", "operand": "source.vhdl"}
]
},
{
"keys": ["ctrl+shift+a"], "command": "vhdl_align",
"context":
[
{ "key": "selector", "operator": "equal", "operand": "source.vhdl"}
]
},
{
"keys": ["ctrl+alt+f"], "command": "vhdl_find_instance",
"context":
[
{ "key": "selector", "operator": "equal", "operand": "source.vhdl"}
]
},
{
"keys": ["f12"], "command": "vhdl_hierarchy_goto_definition",
"context":[
{ "key": "selector", "operator": "equal", "operand": "text.result-vhdl"}
]
},
{ "keys": ["f1"], "command": "vhdl_toggle_navbar", "args":{"cmd":"toggle"}},
{ "keys": ["ctrl+f1"], "command": "vhdl_toggle_lock_navbar"},
{
"keys": ["alt+f1"], "command": "vhdl_show_navbar",
"context":[{ "key": "selector", "operator": "equal", "operand": "source.vhdl"}]
}