前言
SublimeLinter是sublime的语法检查框架,安装这个插件是实现语法检查的前提,在安装了这个插件后,我们才可以安装使用特定语言的语法检查插件,比如对于verilog而言,有如下几种语法检查插件:
- SublimeLinter-contrib-iverilog:使用iverilog实现语法检查
- SublimeLinter-contrib-modelsim:使用modelsim实现语法检查
- SublimeLinter-contrib-xsim:使用vivado simulator(xsim)实现语法检查
使用这些插件的前提是已经安装好对应的工具,比如iverilog、modelsim、vivado
其中,modelsim实现语法检查会生成work目录,存放modelsim的一些文件,比较烦人,所以不推荐使用,这篇文章选择iverilog作为语法检查工具,iverilog的安装和使用网上有很多教程,这里就不写了
一、安装插件
(前提:已安装package control)
打开sublime,按ctrl+shift+p弹出命令面板,输入install:
选择package control:install package
然后搜索并安装如下两个插件:
安装完成后,需要进行配置才可以使用
二、配置插件
(前提:已安装iverilog且配好环境变量)
选择preference-package settings-sulimeLinter-settings,如下:
打开sublimeLinter配置文件,如下:
左侧是全局配置文件,右侧是用户配置文件,第一次打开时用户配置文件是空的,我们要做的就是将全局配置中需要修改的参数放到右侧用户配置文件,我的用户配置文件如下,供大家参考,复制到右侧然后保存即可:
// SublimeLinter Settings - User
{
"linters": {
"iverilog": {
"args": ["-i"],
"lint_mode": "load_save",
},
},
"no_column_highlights_line": true,
}
- args即Iverilog执行时的参数,iverilog在执行语法检查时并不知道代码中例化的模块在哪,加上-i可以避免未定义module问题
- lint_mode为语法检查模式,默认是background模式,即代码有任何变化都会执行语法检查,此处修改为load_save模式,即在打开文件、保存文件时执行语法检查,看个人喜好选择
- no_column_highlights_line,由于iverilog在检测语法错误时,只会给出行号,而不会给出列号,将该参数设为true,即可在不知道列号的情况下,将整行都标记起来,如果为false,则只会在错误行首标记,看个人喜好选择
三、语法检查效果
执行语法检查后,有错误的行会被标记出来,行号前会有一个小红点,整行会被红色框出,当鼠标悬停在这一行时,会弹出iverilog的错误报告,如下: