From ab1906e72e81d4b4e3b6376cace49c0b552f8d46 Mon Sep 17 00:00:00 2001 From: Martin Grenfell Date: Sat, 24 Dec 2011 13:18:18 +0000 Subject: [PATCH] add yaml syntax checker --- doc/syntastic.txt | 4 ++++ syntax_checkers/yaml.vim | 31 +++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 syntax_checkers/yaml.vim diff --git a/doc/syntastic.txt b/doc/syntastic.txt index 9a53afd4..6b9b6e41 100644 --- a/doc/syntastic.txt +++ b/doc/syntastic.txt @@ -347,6 +347,10 @@ The latest dev versions are on github ============================================================================== 7. Changelog *syntastic-changelog* +next + - Support for new filetypes: + - yaml + 2.2.0 - only do syntax checks when files are saved (not when first opened) - add g:syntastic_check_on_open option to get the old behavior back diff --git a/syntax_checkers/yaml.vim b/syntax_checkers/yaml.vim new file mode 100644 index 00000000..9e14826d --- /dev/null +++ b/syntax_checkers/yaml.vim @@ -0,0 +1,31 @@ +"============================================================================ +"File: yaml.vim +"Description: Syntax checking plugin for syntastic.vim +"Maintainer: Martin Grenfell +"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. +" +" +"Installation: $ npm install -g js-yaml js-yaml.bin +" +"============================================================================ +if exists("loaded_yaml_syntax_checker") + finish +endif +let loaded_yaml_syntax_checker = 1 + +if !executable("js-yaml") + finish +endif + +function! SyntaxCheckers_yaml_GetLocList() + let makeprg='jsyaml --compact ' . shellescape(expand('%')) + let makeprg='js-yaml --compact ' . shellescape(expand('%')) + let errorformat='Error on line %l\, col %c:%m,%-G%.%#' + return SyntasticMake({ 'makeprg': makeprg, + \ 'errorformat': errorformat, + \ 'defaults': {'bufnr': bufnr("")} }) +endfunction