资讯专栏INFORMATION COLUMN

vim + syntastic + verilator or iverilog

baukh789 / 554人阅读

摘要:若文章有錯誤請留言指證需要轉載請通知筆者讓你可以在裡可以使用功能讓你在寫時檢查看看有沒有語法上的錯誤或者可能潛在的錯誤首先要先安裝有兩種選擇或是看你偏好哪一種我是經由安裝我是使用安裝你也可以透過其他安裝請參考官方文件透過安裝這裡我是透過安裝

若文章有錯誤請留言指證
需要轉載請通知筆者

Introduction

syntastic讓你可以在vim裡可以使用lint功能,讓你在寫code時檢查看看有沒有語法上的錯誤或者可能潛在的錯誤


Install linter

首先要先安裝linter有兩種選擇: Icarus Verilog或是verilator,看你偏好哪一種
我是經由homebrew安裝:

$brew install verilator
$brew install iverilog

syntastic

syntastic我是使用vundle安裝,你也可以透過其他package manager安裝.請參考官方文件

透過vundle安裝(這裡我是透過vundle安裝syntastic,如果不會使用vundle,請參考Vundle官方)

Plugin "scrooloose/syntastic"

vimrc加上以下幾行, 以下是參考syntastic官方的設定

set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

設置lintor:verilatoriverilog我都設定了,兩個都有則會一起檢查,若是第一個掛了它會自動找第二個,如果你只想使用其中一種,留著你要的那一個即可

let g:syntastic_verilog_checkers = ["verilator","iverilog"]

Use

完成之後可以用:SyntasticInfo查看是否有配置完成

接下來就可以使用:SyntasticCheck開啟語法檢查功能啦
syntastic好像也有提供在:w時提供檢查的功能


Some problem

syntastic會根據filetype去開啟不同語言的linter
可以用:set filetype?看看是不是verilog

有些人會使用verilog_systemverilog的套件來讓verilog產生語法高亮,filetype則會是verilog_systemverilog,此時syntastic則不會支持

目前我的解法是在verilog_systemverilog套件裡判斷副檔名的地方更改.
本來是長這樣:

au! BufNewFile,BufRead *.v,*.vh,*.vp,*.sv,*.svi,*.svh,*.svp setfiletype verilog_systemverilog

為了同時使用syntastic verilog_systemverilog的語法高亮,我的做法是將.v檔案當成普通的verilog並讓syntastic只支持.v,我將上面改成:

au! BufNewFile,BufRead *.vh,*.vp,*.sv,*.svi,*.svh,*.svp setfiletype verilog_systemverilog

au! BufNewFile,BufRead *.v setfiletype verilog_systemverilog.verilog

也就是讓.v檔案同時有兩種filetype, .v檔案之外都當成verilog_systemverilog.


Summary

簡單來說你可以用一樣的方法去設定其他語言的linter
可以分成以下step:

1. 安裝語言相對應的linter
2. 安裝syntastic(如果本來就有可以跳此步驟)
3. 查看syntastic官方文件,看syntastic有沒有支持你的linter
4. 根據syntastic官方文件去設定你的linter

step3syntastic所支持的linter列表


Reference

[VIM插件: SYNTASTIC[语法检查]](http://www.wklken.me/posts/20...

[[資工雜筆] 建置 vim + syntastic + eslint + gcclint](https://noootown.wordpress.co...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24904.html

相关文章

  • Vim之代码异步检测插件 ALE -- 实时检查verilog等代码的正确性

    摘要:之代码异步检测插件前言知名的代码检测插件主要是两个虽是后起之秀,但目前是功能最强大的一个实时检测。标识栏状态栏以及命令行消息支持。这可以极大提升你代码输写的正确性。 Vim之代码异步检测插件 ALE 前言 知名的 vim 代码检测插件主要是两个 syntastic neomake ALE ALE 虽是后起之秀,但目前是功能最强大的一个 实时检测。为了让代码可以在编辑时进行实时的检...

    lifefriend_007 评论0 收藏0
  • 我的.vimrc,代码完成基于YcmCompleteMe版

    摘要:部分必需正确配置的目录。刚有个哥们问怎样表明就成功了,我定义了为命令,按就会执行,如果代码正确而运行不出错就成功了,若代码不正确运行就会出现窗口,给出错误提示,这也表明配置已经成功。配置文档的倒数到注释掉。 相应的安装部分见上篇文章:vim学习笔记 .vimrc配置 1.基于YcmCompleteMe、taglist.vim、The-NERD-tree等配置,F2调出目录树窗口,F3调...

    tinysun1234 评论0 收藏0
  • 面向web前端及node开发人员的vim配置

    摘要:之后,在终端输入如果你需要支持,安装支持到这里还没有完,作为前端人,这个还不能正常工作,它需要一些依赖,下面我们来安装这些依赖安装查看回到目录安装之后需要在您的项目根目录建立一个文件,没有内容,空白即可。 鉴于 window 下基本用不到 vim,所以下面内容不再提及 window,具体可以在相应 github 中查看手册操作基础:已装有上有 nodejs(npm)。没装的可以移步官网...

    mo0n1andin 评论0 收藏0
  • 面向web前端及node开发人员的vim配置

    摘要:之后,在终端输入如果你需要支持,安装支持到这里还没有完,作为前端人,这个还不能正常工作,它需要一些依赖,下面我们来安装这些依赖安装查看回到目录安装之后需要在您的项目根目录建立一个文件,没有内容,空白即可。 鉴于 window 下基本用不到 vim,所以下面内容不再提及 window,具体可以在相应 github 中查看手册操作基础:已装有上有 nodejs(npm)。没装的可以移步官网...

    Zoom 评论0 收藏0
  • 面向web前端及node开发人员的vim配置

    摘要:之后,在终端输入如果你需要支持,安装支持到这里还没有完,作为前端人,这个还不能正常工作,它需要一些依赖,下面我们来安装这些依赖安装查看回到目录安装之后需要在您的项目根目录建立一个文件,没有内容,空白即可。 鉴于 window 下基本用不到 vim,所以下面内容不再提及 window,具体可以在相应 github 中查看手册操作基础:已装有上有 nodejs(npm)。没装的可以移步官网...

    Loong_T 评论0 收藏0

发表评论

0条评论

baukh789

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<