Initial commit, adds support for nagelfar TCL syntax checker and moves the tclsh syntax checker into a tcl directory.

This commit is contained in:
James Pickard 2012-01-11 11:53:56 -05:00
parent 45738010af
commit e455bb1d0a

View File

@ -1,28 +1,42 @@
"============================================================================
"File: tcl.vim
"Description: Syntax checking plugin for syntastic.vim
"Maintainer: Eric Thomas <eric.l.m.thomas at gmail dot com>
"Description: Figures out which tcl syntax checker (if any) to load
" from the tcl directory.
"Maintainer: James Pickard <james.pickard at gmail. got 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.
"
" Use g:syntastic_tcl_checker option to specify which tcl checker executable
" should be used (see below for a list of supported checkers).
" If g:syntastic_tcl_checker is not set, just use the first syntax
" checker that we find installed.
"============================================================================
if exists("loaded_tcl_syntax_checker")
finish
endif
let loaded_tcl_syntax_checker = 1
"bail if the user doesnt have tclsh installed
if !executable("tclsh")
finish
endif
function! SyntaxCheckers_tcl_GetLocList()
let makeprg = 'tclsh '.shellescape(expand('%'))
let errorformat = '%f:%l:%m'
let s:supported_checkers = ["tclsh", "nagelfar.tcl"]
return SyntasticMake({ 'makeprg': makeprg, 'errorformat': errorformat })
function! s:load_checker(checker)
exec "runtime syntax_checkers/tcl/" . a:checker . ".vim"
endfunction
if exists("g:syntastic_tcl_checker")
if index(s:supported_checkers, g:syntastic_tcl_checker) != -1 && executable(g:syntastic_tcl_checker)
call s:load_checker(g:syntastic_tcl_checker)
else
echoerr "tcl syntax not supported or not installed."
endif
else
for checker in s:supported_checkers
if executable(checker)
call s:load_checker(checker)
break
endif
endfor
endif