forked from github-mirrors/ale
Improve pyrex cython linter.
Like many other linters, use variables for the executable and options used by the linter. By default, the linter now report every warnings as errors with `--warning-errors`. Also add include directory and set working directory to file directory.
This commit is contained in:
parent
620951b6d3
commit
bedd30ee11
|
@ -1,10 +1,27 @@
|
|||
" Author: w0rp <devw0rp@gmail.com>
|
||||
" Author: w0rp <devw0rp@gmail.com>,
|
||||
" Nicolas Pauss <https://github.com/nicopauss>
|
||||
" Description: cython syntax checking for cython files.
|
||||
|
||||
call ale#Set('pyrex_cython_executable', 'cython')
|
||||
call ale#Set('pyrex_cython_options', '--warning-extra --warning-errors')
|
||||
|
||||
function! ale_linters#pyrex#cython#GetExecutable(buffer) abort
|
||||
return ale#Var(a:buffer, 'pyrex_cython_executable')
|
||||
endfunction
|
||||
|
||||
function! ale_linters#pyrex#cython#GetCommand(buffer) abort
|
||||
let l:local_dir = ale#Escape(fnamemodify(bufname(a:buffer), ':p:h'))
|
||||
|
||||
return ale#Escape(ale_linters#pyrex#cython#GetExecutable(a:buffer))
|
||||
\ . ' --working ' . l:local_dir . ' --include-dir ' . l:local_dir
|
||||
\ . ' ' . ale#Var(a:buffer, 'pyrex_cython_options')
|
||||
\ . ' --output-file ' . g:ale#util#nul_file . ' %t'
|
||||
endfunction
|
||||
|
||||
call ale#linter#Define('pyrex', {
|
||||
\ 'name': 'cython',
|
||||
\ 'output_stream': 'stderr',
|
||||
\ 'executable': 'cython',
|
||||
\ 'command': 'cython --warning-extra -o ' . g:ale#util#nul_file . ' %t',
|
||||
\ 'executable_callback': 'ale_linters#pyrex#cython#GetExecutable',
|
||||
\ 'command_callback': 'ale_linters#pyrex#cython#GetCommand',
|
||||
\ 'callback': 'ale#handlers#unix#HandleAsError',
|
||||
\})
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
===============================================================================
|
||||
ALE Pyrex (Cython) Integration *ale-pyrex-options*
|
||||
|
||||
|
||||
===============================================================================
|
||||
cython *ale-pyrex-cython*
|
||||
|
||||
g:ale_pyrex_cython_executable *g:ale_pyrex_cython_executable*
|
||||
*b:ale_pyrex_cython_executable*
|
||||
Type: |String|
|
||||
Default: `'cython'`
|
||||
|
||||
This variable can be changed to use a different executable for cython.
|
||||
|
||||
|
||||
g:ale_pyrex_cython_options *g:ale_pyrex_cython_options*
|
||||
*b:ale_pyrex_cython_options*
|
||||
Type: |String|
|
||||
Default: `'--warning-extra --warning-errors'`
|
||||
|
||||
This variable can be changed to modify flags given to cython.
|
||||
|
||||
|
||||
===============================================================================
|
||||
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
|
@ -185,6 +185,8 @@ CONTENTS *ale-contents*
|
|||
puglint.............................|ale-pug-puglint|
|
||||
puppet................................|ale-puppet-options|
|
||||
puppetlint..........................|ale-puppet-puppetlint|
|
||||
pyrex (cython)........................|ale-pyrex-options|
|
||||
cython..............................|ale-pyrex-cython|
|
||||
python................................|ale-python-options|
|
||||
autopep8............................|ale-python-autopep8|
|
||||
black...............................|ale-python-black|
|
||||
|
|
Loading…
Reference in New Issue