国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Vim之代碼異步檢測(cè)插件 ALE -- 實(shí)時(shí)檢查verilog等代碼的正確性

lifefriend_007 / 2032人閱讀

摘要:之代碼異步檢測(cè)插件前言知名的代碼檢測(cè)插件主要是兩個(gè)雖是后起之秀,但目前是功能最強(qiáng)大的一個(gè)實(shí)時(shí)檢測(cè)。標(biāo)識(shí)欄狀態(tài)欄以及命令行消息支持。這可以極大提升你代碼輸寫的正確性。

Vim之代碼異步檢測(cè)插件 ALE 前言

知名的 vim 代碼檢測(cè)插件主要是兩個(gè)

syntastic

neomake

ALE

ALE 雖是后起之秀,但目前是功能最強(qiáng)大的一個(gè)

實(shí)時(shí)檢測(cè)。為了讓代碼可以在編輯時(shí)進(jìn)行實(shí)時(shí)的檢測(cè),ale 的運(yùn)行方式是將代碼做為 stdin 導(dǎo)入檢測(cè)工具(不支持的話使用臨時(shí)文件),這樣做的好處是我們可以更早的發(fā)現(xiàn)錯(cuò)誤。

并發(fā)運(yùn)行。ale 默認(rèn)使用所有可用的檢測(cè)工具并發(fā)執(zhí)行檢測(cè),譬如說我們有時(shí)需要同時(shí)對(duì) javascript 運(yùn)行 eslint 以及 jscs。

標(biāo)識(shí)欄、狀態(tài)欄以及命令行消息支持。

安裝 Vim 8 on Unix
mkdir -p ~/.vim/pack/git-plugins/start
git clone https://github.com/w0rp/ale.git ~/.vim/pack/git-plugins/start/ale
NeoVim on Unix
mkdir -p ~/.local/share/nvim/site/pack/git-plugins/start
git clone https://github.com/w0rp/ale.git ~/.local/share/nvim/site/pack/git-plugins/start/ale
Vim 8 on Windows
## Run these commands in the "Git for Windows" Bash terminal
mkdir -p ~/vimfiles/pack/git-plugins/start
git clone https://github.com/w0rp/ale.git ~/vimfiles/pack/git-plugins/start/ale
Vundle

把下面行加入到,vimrc

Plugin "w0rp/ale"
Linter

ale 的 linter 都要自己安裝
還好系統(tǒng)一般都是有 gcc, python, gofmt 之類的
需要額外安裝的大約有

vint: vimscript

mdl: markdown

iverilog: verilog

vint

安裝方法如下:

pip3 install vim-vint
mdl

安裝方法如下:

gem install mdl
iverilog

安裝 gperf, 下載源碼: 鏈接

./configure && make && make install

下載 iverilog 源碼:

git clone https://github.com/steveicarus/iverilog.git
cd iverilog
./autoconf.sh
./configure && make && make isntall
配置使用
"-----------------------------------------------------------------------------
" plugin - ale.vim
"-----------------------------------------------------------------------------
"keep the sign gutter open
let g:ale_sign_column_always = 1
let g:ale_sign_error = ">>"
let g:ale_sign_warning = "--"

" show errors or warnings in my statusline
let g:airline#extensions#ale#enabled = 1

" self-define statusline
"function! LinterStatus() abort
"    let l:counts = ale#statusline#Count(bufnr(""))
"
"    let l:all_errors = l:counts.error + l:counts.style_error
"    let l:all_non_errors = l:counts.total - l:all_errors
"
"    return l:counts.total == 0 ? "OK" : printf(
"      "%dW %dE",
"      all_non_errors,
"      all_errors
"    )
"endfunction
"set statusline=%{LinterStatus()}

" echo message
" %s is the error message itself
" %linter% is the linter name
" %severity is the severity type
" let g:ale_echo_msg_error_str = "E"
" let g:ale_echo_msg_warning_str = "W"
" let g:ale_echo_msg_format = "[%linter%] %s [%severity%]"

" use quickfix list instead of the loclist
let g:ale_set_loclist = 0
let g:ale_set_quickfix = 1

" only enable these linters
"let g:ale_linters = {
"    "javascript": ["eslint"]
"}

nmap   (ale_previous_wrap)
nmap   (ale_next_wrap)

" run lint only on saving a file
" let g:ale_lint_on_text_changed = "never"
" dont run lint on opening a file
" let g:ale_lint_on_enter = 0

"------------------------END ale.vim--------------------------------------
效果

可看到因?yàn)榈?9,70,71, 73行的幾個(gè)模塊定義沒有提供,所以左邊線上有紅色的>>
把光標(biāo)定位到73行, 在下面命令行會(huì)給出具體的錯(cuò)誤:

Unknown module type: pmu

總結(jié)

ALE可以讓你一邊編碼一邊實(shí)時(shí)檢查代碼的語(yǔ)法問題,同時(shí)還完全不影響vim的性能。這可以極大提升你代碼輸寫的正確性。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/25035.html

相關(guān)文章

  • 如何優(yōu)雅使用 Vim(二):插件介紹

    摘要:如何優(yōu)雅的使用二插件介紹插件使用管理。文件管理器樹形結(jié)構(gòu)的文件管理器,目前使用。不同層次的括號(hào)顏色不一樣,如下圖另見然而這些彩虹括號(hào)插件,都免不了與沖突會(huì)使語(yǔ)法高亮失效,只好放棄了。 如何優(yōu)雅的使用 Vim(二):插件介紹 插件使用 vim-plug 管理。很長(zhǎng)一段時(shí)間,我都在用 Vundle,切換到 vim-plug 并非完全必要。 插件定義開始 call plug#begin(~...

    yeooo 評(píng)論0 收藏0
  • vim + syntastic + verilator or iverilog

    摘要:若文章有錯(cuò)誤請(qǐng)留言指證需要轉(zhuǎn)載請(qǐng)通知筆者讓你可以在裡可以使用功能讓你在寫時(shí)檢查看看有沒有語(yǔ)法上的錯(cuò)誤或者可能潛在的錯(cuò)誤首先要先安裝有兩種選擇或是看你偏好哪一種我是經(jīng)由安裝我是使用安裝你也可以透過其他安裝請(qǐng)參考官方文件透過安裝這裡我是透過安裝 若文章有錯(cuò)誤請(qǐng)留言指證需要轉(zhuǎn)載請(qǐng)通知筆者 Introduction syntastic讓你可以在vim裡可以使用lint功能,讓你在寫code時(shí)檢...

    baukh789 評(píng)論0 收藏0
  • Vim中集成emacs下verilog-mode功能

    摘要:在上安裝配置更新最新下載最新版可以見安裝從網(wǎng)上找到的教程清一色是讓在目錄下新建一個(gè)目錄然后放進(jìn)去,再寫個(gè)要新建還需要用窗口但我照做了沒有用在下,依次輸入回車,就可以看到下面界面里面并不包含目錄,所以它沒有起作用從的輸出看,第一 在vim上安裝配置verilog-mode 更新emasc最新verilog-mode 下載 最新版可以見 verilog-mode 安裝 window 從網(wǎng)上...

    mating 評(píng)論0 收藏0
  • Vim 寫 Python 最佳實(shí)踐

    摘要:本文內(nèi)容整理自我在知乎的回答用寫的最佳實(shí)踐是什么,下面的內(nèi)容是對(duì)知乎舊有回答的一個(gè)補(bǔ)充,尤其有一些主要針對(duì)如果想要更多內(nèi)容,可以查看知乎對(duì)于該問題的一些回答。主要是針對(duì)提供的內(nèi)容進(jìn)行再提取進(jìn)行展示。 先來曬個(gè)圖: showImg(https://segmentfault.com/img/bVIDeB?w=1434&h=1430); 對(duì)于一些 Python 的小項(xiàng)目,使用 vim 是一個(gè)...

    TANKING 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<