sublime text 需安装 veriloghighlighter 插件并手动将 .sv 文件绑定为 systemverilog 语法,构建系统中路径变量必须加双引号,否则高亮、补全和编译均失效。

Sublime Text 本身不识别 .v 或 .sv 文件,装完插件也不高亮、不补全、右下角还是 “Plain Text”——这根本不是配置失败,而是语法定义压根没加载进来。
VerilogHighlighter 插件必须精确安装,大小写和空格都不能错
常见错误是搜 “Verilog Syntax”“Verilog-HDL” 或 “Verilog SystemVerilog” 并安装,结果语法依然不生效。真正起作用的是 VerilogHighlighter(无空格、首字母大写、结尾无 s)。
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),输入Package Control: Install Package回车 - 在弹出的搜索框中**逐字输入
VerilogHighlighter**,注意大小写和拼写,选中后回车安装 - 安装完必须重启 Sublime Text,否则插件不激活
- 新建
test.sv文件,右下角点击Plain Text→ 手动选择SystemVerilog(不是Verilog)
.sv 文件默认不绑定语法,必须手动注册扩展名关联
.v 文件通常能被自动识别为 Verilog,但 .sv 完全无默认映射——这是绝大多数人卡住的关键点。
- 打开任意一个
.sv文件,确保右下角已设为SystemVerilog - 菜单栏 →
View→Syntax→Open all with current extension as…→SystemVerilog - 该操作会写入
Packages/User/Preferences.sublime-settings中的extensions映射,避免每次手动切 - 如果之前误加过类似
"extensions": ["sv"]→"syntax": "Packages/Text/Plain text.tmLanguage"的规则,需手动删掉
代码片段(mod / alw / if)只在正确作用域按 Tab 触发
Sublime 不做语义分析,mod 不会自动弹窗补全,也不会在注释里或字符串中生效——它纯粹靠 scope 匹配 + Tab 键触发。
- 确认右下角状态栏显示的是
SystemVerilog(.sv)或Verilog(.v),不是Plain Text或VHDL - 输入
mod后光标必须停在缩写末尾,**立刻按Tab**(不是空格、回车或鼠标点击) - 片段定义在
VerilogHighlighter/snippets/下,scope 字段必须是source.systemverilog或source.verilog,改自定义片段时不能漏掉 - 想补全用户定义的
interface或package内容?那需要 LSP 支持(如subl-lsp+slangserver),纯 snippet 做不到
构建系统调用 iverilog 必须显式处理路径含空格问题
Build System 中直接写 $file 在路径含空格时会崩,报错类似 no such file or directory: C:\Users\John(截断在空格处)。
- 新建 Build System(
Tools → Build System → New Build System) - 粘贴内容时,所有路径变量必须加双引号:
"shell_cmd": "cd \"$file_path\" && iverilog -o \"${file_base_name}.vvp\" \"$file_name\" && vvp \"${file_base_name}.vvp\"" -
selector设为"source.systemverilog"或"source.verilog",否则 Ctrl+B 不触发 - 保存为
iverilog.sublime-build到Packages/User/目录下
最容易被忽略的是:.sv 文件的语法绑定和构建系统的引号包裹——前者导致你写了半天没高亮,后者导致编译命令直接报错找不到文件。这两个点不解决,其他配置全是白搭。











