右下角显示plain text即vhdl高亮完全未启动;必须手动绑定.vhd/.vhdl后缀至source.vhdl语法,并在settings–user中配置{"extensions": {"vhd": "source.vhdl", "vhdl": "source.vhdl"}},否则关键字灰色、括号不匹配。

右下角显示 Plain Text,就等于 VHDL 语法高亮完全没启动——不是插件装错了,是 source.vhdl 作用域根本没绑定到 .vhd 文件上。
为什么装了 VHDL 插件还是灰色关键字?
Sublime Text 不会自动把 .vhd 后缀映射到 source.vhdl 语法作用域,哪怕插件已安装、语法文件存在。FPGA 工程几乎全用 .vhd,而很多插件默认只绑了 .vhdl,漏掉 "vhd": "source.vhdl" 这一行,等于白装。
- 打开任意
top.vhd文件,右下角必须显示VHDL(不是Plain Text) - 若显示
Plain Text,点击它 →Open all with current extension as…→VHDL(注意:不是Set Syntax → VHDL,后者只对当前文件临时生效) - 这步操作会写入
Packages/User/VHDL.sublime-settings,但更可靠的是直接改用户设置
Settings – User 必须含 extensions 映射
打开 Preferences → Settings – User,确认存在这一行配置:
{"extensions": {"vhd": "source.vhdl", "vhdl": "source.vhdl"}}
常见失效原因:
- 拼写错误:比如写成
vhd1、vhdl1或漏掉vhd键 - JSON 格式错误:多逗号、少引号、括号不闭合,导致整段配置被忽略
- 插件升级或重装 Sublime 后该配置被覆盖或清空
- 配色方案不支持
source.vhdl作用域(如部分老旧 theme 只认source.verilog)
构建系统里 $file 遇到空格或中文路径就失败
按 Ctrl+B 编译时提示 command not found 或 No such file,大概率是工程路径含空格(如 My FPGA Project/top.vhd)或中文(如 桌面/vhdl_test.vhd)。
- Sublime 的构建系统默认不转义路径空格,
$file会被拆成多个参数 - 解决方法:在构建系统中用 shell 封装,例如 Linux/macOS 写成
sh -c "ghdl -a \"$file\"",Windows 写成cmd /c "ghdl -a \"%FILE%\"" - 别依赖
sublime-build里裸写的$file直接调用 ghdl/vcom,尤其当项目放在桌面、下载目录或带中文用户名的路径下
别装冷门或停更的 VHDL 插件
某些叫 VHDL Syntax 或 VHDL-Mode 的分支常年未更新,不支持 Sublime Text 4,容易触发 Unable to load syntax file 错误。
- 推荐从 Package Control 官方渠道安装:打开
Ctrl+Shift+P→Package Control: Install Package→ 搜VHDL,选社区维护活跃、最近半年有提交的版本 - 安装后务必验证:新建文件 →
Save As为test.vhd→ 看右下角是否立刻变VHDL→ 输入entity或begin是否变色 - 若仍不生效,先禁用其他语法类插件(如 Verilog 插件可能劫持
.vhd),再重试
最常被忽略的点:语法绑定和构建路径是两个独立开关。即使高亮正常了,Ctrl+B 仍可能因路径问题静默失败;反过来,构建能跑通但右下角是 Plain Text,说明你根本没在写 VHDL,只是在编译一段纯文本。











