Make options configurable for iverilog (#1143)

This commit is contained in:
RedBug312 2017-11-20 06:59:17 +08:00 committed by w0rp
parent 344add6a28
commit 1afe2992e2
2 changed files with 27 additions and 1 deletions

View file

@ -1,6 +1,14 @@
" Author: Masahiro H https://github.com/mshr-h
" Description: iverilog for verilog files
call ale#Set('verilog_iverilog_options', '')
function! ale_linters#verilog#iverilog#GetCommand(buffer) abort
return 'iverilog -t null -Wall '
\ . ale#Var(a:buffer, 'verilog_iverilog_options')
\ . ' %t'
endfunction
function! ale_linters#verilog#iverilog#Handle(buffer, lines) abort
" Look for lines like the following.
"
@ -30,6 +38,6 @@ call ale#linter#Define('verilog', {
\ 'name': 'iverilog',
\ 'output_stream': 'stderr',
\ 'executable': 'iverilog',
\ 'command': 'iverilog -t null -Wall %t',
\ 'command_callback': 'ale_linters#verilog#iverilog#GetCommand',
\ 'callback': 'ale_linters#verilog#iverilog#Handle',
\})

View file

@ -0,0 +1,18 @@
Before:
Save g:ale_verilog_iverilog_options
let g:ale_verilog_iverilog_options = ''
After:
Restore
call ale#linter#Reset()
Execute(Set Verilog iverilog linter additional options to `-y.`):
runtime! ale_linters/verilog/iverilog.vim
" Additional args for the linter
let g:ale_verilog_iverilog_options = '-y.'
call ale#Lint()
let g:cmd = ale_linters#verilog#iverilog#GetCommand(bufnr(''))
AssertEqual g:cmd, 'iverilog -t null -Wall -y. %t'