syntastic/syntax_checkers/racket/racket.vim
LCD 47 95879f19a9 Security: disable the racket checker by default.
This checker executes the code in the files it checks. This is probably fine
if you wrote the files yourself, but it can be a problem if you're trying to
check third party files. If you are 100% willing to let Vim run the code in
your files, set g:enable_racket_racket_checker to 1 in your vimrc to enable
this checker: vim let g:enable_racket_racket_checker = 1 There is also a
buffer-local version of this variable, that takes precedence over it in the
buffers where it is defined.

Reference: https://github.com/scrooloose/syntastic/issues/1773
2016-05-23 16:54:33 +03:00

52 lines
1.6 KiB
VimL

"============================================================================
"File: racket.vim
"Description: Syntax checking plugin for syntastic.vim
"Author: Steve Bragg <steve at empresseffects dot com>
"
"License: This program is free software. It comes without any warranty,
" to the extent permitted by applicable law. You can redistribute
" it and/or modify it under the terms of the Do What The Fuck You
" Want To Public License, Version 2, as published by Sam Hocevar.
" See http://sam.zoy.org/wtfpl/COPYING for more details.
"
"============================================================================
if exists('g:loaded_syntastic_racket_racket_checker')
finish
endif
let g:loaded_syntastic_racket_racket_checker=1
let s:save_cpo = &cpo
set cpo&vim
function! SyntaxCheckers_racket_racket_GetLocList() dict
let makeprg = self.makeprgBuild({})
" example of error message
"eval-apply.rkt:460:30: the-empty-environment: unbound identifier in module
" in: the-empty-environment
let errorformat = '%f:%l:%v: %m'
let loclist = SyntasticMake({
\ 'makeprg': makeprg,
\ 'errorformat': errorformat })
for e in loclist
if has_key(e, 'col')
let e['col'] += 1
endif
endfor
return loclist
endfunction
call g:SyntasticRegistry.CreateAndRegisterChecker({
\ 'filetype': 'racket',
\ 'name': 'racket',
\ 'enable': 'enable_racket_racket_checker' })
let &cpo = s:save_cpo
unlet s:save_cpo
" vim: set sw=4 sts=4 et fdm=marker: