diff options
author | Karel Kočí <cynerd@email.cz> | 2016-06-30 16:03:25 +0200 |
---|---|---|
committer | Karel Kočí <cynerd@email.cz> | 2016-06-30 16:03:25 +0200 |
commit | e573b3020c032400eed60b649a2cbf55266e6bb0 (patch) | |
tree | 8f572394ac8433529c7a8e70d160a2fbe8268b4e /vim/bundle/syntastic/doc | |
parent | b8c667bd64b3edd38d56c63c5bd1db53a23b4499 (diff) | |
download | myconfigs-e573b3020c032400eed60b649a2cbf55266e6bb0.tar.gz myconfigs-e573b3020c032400eed60b649a2cbf55266e6bb0.tar.bz2 myconfigs-e573b3020c032400eed60b649a2cbf55266e6bb0.zip |
Add current configurations from old repository
Diffstat (limited to 'vim/bundle/syntastic/doc')
-rw-r--r-- | vim/bundle/syntastic/doc/syntastic-checkers.txt | 6931 | ||||
-rw-r--r-- | vim/bundle/syntastic/doc/syntastic.txt | 1128 |
2 files changed, 8059 insertions, 0 deletions
diff --git a/vim/bundle/syntastic/doc/syntastic-checkers.txt b/vim/bundle/syntastic/doc/syntastic-checkers.txt new file mode 100644 index 0000000..4794849 --- /dev/null +++ b/vim/bundle/syntastic/doc/syntastic-checkers.txt @@ -0,0 +1,6931 @@ +*syntastic-checkers.txt* Syntastic checkers +*syntastic-checkers* + +============================================================================== +SYNTAX CHECKERS BY LANGUAGE *syntastic-checkers-lang* + +|syntastic| comes with checkers for the following languages: + + ActionScript.............................|syntastic-checkers-actionscript| + Ada......................................|syntastic-checkers-ada| + Ansible..................................|syntastic-checkers-ansible| + API Blueprint............................|syntastic-checkers-apiblueprint| + AppleScript..............................|syntastic-checkers-applescript| + AsciiDoc.................................|syntastic-checkers-asciidoc| + Assembly Languages.......................|syntastic-checkers-asm| + + BEMHTML..................................|syntastic-checkers-bemhtml| + Bro......................................|syntastic-checkers-bro| + + C........................................|syntastic-checkers-c| + C#.......................................|syntastic-checkers-cs| + C++......................................|syntastic-checkers-cpp| + Cabal....................................|syntastic-checkers-cabal| + Chef.....................................|syntastic-checkers-chef| + COBOL....................................|syntastic-checkers-cobol| + Coco.....................................|syntastic-checkers-co| + CoffeeScript.............................|syntastic-checkers-coffee| + Coq......................................|syntastic-checkers-coq| + CSS......................................|syntastic-checkers-css| + Cucumber.................................|syntastic-checkers-cucumber| + CUDA.....................................|syntastic-checkers-cuda| + + D........................................|syntastic-checkers-d| + Dart.....................................|syntastic-checkers-dart| + DocBook..................................|syntastic-checkers-docbk| + Dockerfile...............................|syntastic-checkers-dockerfile| + Dust.....................................|syntastic-checkers-dustjs| + + Elixir...................................|syntastic-checkers-elixir| + Erlang...................................|syntastic-checkers-erlang| + eRuby....................................|syntastic-checkers-eruby| + + Fortran..................................|syntastic-checkers-fortran| + + Gentoo Metadata..........................|syntastic-checkers-gentoo| + Gettext PO...............................|syntastic-checkers-po| + GLSL.....................................|syntastic-checkers-glsl| + Go.......................................|syntastic-checkers-go| + + Haml.....................................|syntastic-checkers-haml| + Handlebars...............................|syntastic-checkers-handlebars| + Haskell..................................|syntastic-checkers-haskell| + Haxe.....................................|syntastic-checkers-haxe| + HSS......................................|syntastic-checkers-hss| + HTML.....................................|syntastic-checkers-html| + + Java.....................................|syntastic-checkers-java| + JavaScript...............................|syntastic-checkers-javascript| + JSON.....................................|syntastic-checkers-json| + + LESS.....................................|syntastic-checkers-less| + Lex......................................|syntastic-checkers-lex| + Limbo....................................|syntastic-checkers-limbo| + LISP.....................................|syntastic-checkers-lisp| + LLVM.....................................|syntastic-checkers-llvm| + Lua......................................|syntastic-checkers-lua| + + Markdown.................................|syntastic-checkers-markdown| + MATLAB...................................|syntastic-checkers-matlab| + Mercury..................................|syntastic-checkers-mercury| + + NASM.....................................|syntastic-checkers-nasm| + Nix......................................|syntastic-checkers-nix| + nroff....................................|syntastic-checkers-nroff| + + Objective-C..............................|syntastic-checkers-objc| + Objective-C++............................|syntastic-checkers-objcpp| + OCaml....................................|syntastic-checkers-ocaml| + + Perl.....................................|syntastic-checkers-perl| + PHP......................................|syntastic-checkers-php| + POD......................................|syntastic-checkers-pod| + Pug (formerly Jade)......................|syntastic-checkers-pug| + Puppet...................................|syntastic-checkers-puppet| + Python...................................|syntastic-checkers-python| + + QML......................................|syntastic-checkers-qml| + + R........................................|syntastic-checkers-r| + R Markdown...............................|syntastic-checkers-rmd| + Racket...................................|syntastic-checkers-racket| + Relax NG.................................|syntastic-checkers-rnc| + reStructuredText.........................|syntastic-checkers-rst| + RPM spec.................................|syntastic-checkers-spec| + Ruby.....................................|syntastic-checkers-ruby| + + SASS.....................................|syntastic-checkers-sass| + Scala....................................|syntastic-checkers-scala| + SCSS.....................................|syntastic-checkers-scss| + Sh.......................................|syntastic-checkers-sh| + Slim.....................................|syntastic-checkers-slim| + SML......................................|syntastic-checkers-sml| + SQL......................................|syntastic-checkers-sql| + Stylus...................................|syntastic-checkers-stylus| + + Tcl......................................|syntastic-checkers-tcl| + TeX......................................|syntastic-checkers-tex| + Texinfo..................................|syntastic-checkers-texinfo| + Text.....................................|syntastic-checkers-text| + Turtle...................................|syntastic-checkers-turtle| + TriG.....................................|syntastic-checkers-trig| + Twig.....................................|syntastic-checkers-twig| + TypeScript...............................|syntastic-checkers-typescript| + + Vala.....................................|syntastic-checkers-vala| + Verilog..................................|syntastic-checkers-verilog| + VHDL.....................................|syntastic-checkers-vhdl| + VimL.....................................|syntastic-checkers-vim| + + xHTML....................................|syntastic-checkers-xhtml| + XML......................................|syntastic-checkers-xml| + XQuery...................................|syntastic-checkers-xquery| + XSLT.....................................|syntastic-checkers-xslt| + + YACC.....................................|syntastic-checkers-yacc| + YAML.....................................|syntastic-checkers-yaml| + YANG.....................................|syntastic-checkers-yang| + + Z80......................................|syntastic-checkers-z80| + Zope Page Templates......................|syntastic-checkers-zpt| + Zsh......................................|syntastic-checkers-zsh| + +Third-party checkers are available for additional languages. + +============================================================================== +SYNTAX CHECKERS FOR ACTIONSCRIPT *syntastic-checkers-actionscript* + +The following checkers are available for ActionScript (filetype +"actionscript"): + + 1. mxmlc....................|syntastic-actionscript-mxmlc| + +------------------------------------------------------------------------------ +1. mxmlc *syntastic-actionscript-mxmlc* + +Name: mxmlc +Maintainer: Andy Earnshaw <andyearnshaw@gmail.com> + +"mxmlc" is a compiler for ActionScript. See Apache Flex for details: + + http://flex.apache.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ADA *syntastic-checkers-ada* + +The following checkers are available for Ada (filetype "ada"): + + 1. GCC......................|syntastic-ada-gcc| + +------------------------------------------------------------------------------ +1. GCC *syntastic-ada-gcc* + +Name: gcc +Maintainer: Alfredo Di Napoli <alfredo.dinapoli@gmail.com> + +Checker options~ + *'g:syntastic_ada_compiler'* +Type: string +Default: "gcc" +Compiler executable. + + *'g:syntastic_ada_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_ada_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_ada_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_ada_config_file'* +Type: string +Default: ".syntastic_ada_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_ada_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it like this: > + let g:syntastic_ada_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'b:syntastic_ada_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + + *'g:syntastic_ada_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "ads"), all checks +are silently skipped. You can force syntastic to check header files by +setting the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_ada_gcc_<option>' variables. The only exception is +'g:syntastic_ada_gcc_exec', which can still be used to override the checker's +executable. + +============================================================================== +SYNTAX CHECKERS FOR ANSIBLE *syntastic-checkers-ansible* + +The following checkers are available for Ansible (filetype "ansible"): + + 1. Ansible-lint.............|syntastic-ansible-ansible_lint| + +------------------------------------------------------------------------------ +1. Ansible-lint *syntastic-ansible-ansible_lint* + +Name: ansible_lint +Maintainer: Erik Zaadi <erik.zaadi@gmail.com> + +"Ansible-lint" is a style checker for Ansible playbooks. See the project's +page at GitHub for details: + + https://github.com/willthames/ansible-lint + +Syntastic requires "Ansible-lint" version 2.0.4 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for Ansible playbooks, such +as "ansible-vim": + + https://github.com/pearofducks/ansible-vim + +============================================================================== +SYNTAX CHECKERS FOR API BLUEPRINT *syntastic-checkers-apiblueprint* + +The following checkers are available for API Blueprint (filetype "apiblueprint"): + + 1. Drafter..................|syntastic-apiblueprint-drafter| + +------------------------------------------------------------------------------ +1. Drafter *syntastic-apiblueprint-drafter* + +Name: drafter +Maintainer: LCD 47 <lcd047@gmail.com> + +"Drafter" is a parser for Apiary's "API Blueprint" (http://apiblueprint.org/). +See the project's page at GitHub for details: + + https://github.com/apiaryio/drafter + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for API Blueprint files, such +as "apiblueprint.vim": + + https://github.com/kylef/apiblueprint.vim + +============================================================================== +SYNTAX CHECKERS FOR APPLESCRIPT *syntastic-checkers-applescript* + +The following checkers are available for AppleScript (filetype "applescript"): + + 1. osacompile...............|syntastic-applescript-osacompile| + +------------------------------------------------------------------------------ +1. osacompile *syntastic-applescript-osacompile* + +Name: osacompile +Author: Zhao Cai <caizhaoff@gmail.com> + +"osacompile" is a compiler for "AppleScript". See the program's manual for +details: + + https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/osacompile.1.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ASCIIDOC *syntastic-checkers-asciidoc* + +The following checkers are available for AsciiDoc (filetype "asciidoc"): + + 1. Asciidoc.................|syntastic-asciidoc-asciidoc| + +------------------------------------------------------------------------------ +1. Asciidoc *syntastic-asciidoc-asciidoc* + +Name: asciidoc +Maintainer: LCD 47 <lcd047@gmail.com> + +"Asciidoc" is a translator for AsciiDoc documents (http://asciidoc.org/). + +Note~ + +If you would prefer to use Asciidoctor (http://asciidoctor.org/) as an +external checker instead of "Asciidoc", you can do that by pointing +'g:syntastic_asciidoc_asciidoc_exec' to it: > + let g:syntastic_asciidoc_asciidoc_exec = "asciidoctor" +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ASSEMBLY LANGUAGES *syntastic-checkers-asm* + +The following checkers are available for asembly languages (filetype "asm"): + + 1. GCC......................|syntastic-asm-gcc| + +------------------------------------------------------------------------------ +1. GCC *syntastic-asm-gcc* + +Name: gcc +Maintainer: Joshua Rahm <joshuarahm@gmail.com> + +This plugin supports both the AT&T and Intel dialects. + +Checker Options~ + *'g:syntastic_asm_compiler'* +Type: string +Default: "gcc" +Compiler executable. Set it to something like "mipsel-linux-gcc": > + let g:syntastic_asm_compiler = "mipsel-linux-gcc" +< + *'g:syntastic_asm_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_asm_dialect'* +Type: string +Default: unset +Normally the assembler will select the dialect to use for checking based on +the file extension (AT&T for ".s", Intel for ".asm"). If you want to override +the automatic choice set this variable to either "att" or "intel". + + *'g:syntastic_asm_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_asm_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +assembler. Set it to something like "-mtune=native": > + let g:syntastic_asm_compiler_options = "-mtune=native" +< + *'g:syntastic_asm_config_file'* +Type: string +Default: ".syntastic_asm_config" +File containing additional compilation flags to be passed to the assembler, +one option per line (see |syntastic-config-files|). + + *'g:syntastic_asm_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the assembler, in addition to the +above compilation flags. You can set it like this: > + let g:syntastic_asm_include_dirs = ["inc", "asm/src/include"] +< +and the corresponding "-Iinc -Iasm/src/include" will be added to the +compilation flags. + + *'b:syntastic_asm_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_asm_gcc_<option>' variables. The only exception is +'g:syntastic_asm_gcc_exec', which can still be used to override the checker's +executable. + +============================================================================== +SYNTAX CHECKERS FOR BEMHTML *syntastic-checkers-bemhtml* + +The following checkers are available for BEMHTML (filetype "bemhtml"): + + 1. bemhtml-lint.............|syntastic-bemhtml-bemhtmllint| + +------------------------------------------------------------------------------ +1. bemhtml-lint *syntastic-bemhtml-bemhtmllint* + +Name: bemhtmllint +Maintainer: Sergej Tatarincev + +BEMHTML is a template engine intended for using with BEM methodology +(http://bem.info/method/). See the project's page at GitHub for details: + + https://github.com/SevInf/bemhtml-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR BRO *syntastic-checkers-bro* + +The following checkers are available for Bro (filetype "bro"): + + 1. Bro......................|syntastic-bro-bro| + +------------------------------------------------------------------------------ +1. Bro *syntastic-bro-bro* + +Name: bro +Maintainer: Justin Azoff <justin.azoff@gmail.com> + +"Bro" is a network security monitor. See the project's page for details: + + https://www.bro.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR C *syntastic-checkers-c* + +The following checkers are available for C (filetype "c"): + + 1. AVR-GCC..................|syntastic-c-avrgcc| + 2. Checkpatch...............|syntastic-c-checkpatch| + 3. ClangCheck...............|syntastic-c-clang_check| + 4. Clang-Tidy...............|syntastic-c-clang_tidy| + 5. Cppcheck.................|syntastic-c-cppcheck| + 6. GCC......................|syntastic-c-gcc| + 7. make.....................|syntastic-c-make| + 8. OClint...................|syntastic-c-oclint| + 9. PC-Lint..................|syntastic-c-pc_lint| + 10. Sparse..................|syntastic-c-sparse| + 11. Splint..................|syntastic-c-splint| + +------------------------------------------------------------------------------ +1. AVR-GCC *syntastic-c-avrgcc* + +Name: avrgcc +Maintainer: Karel <karelishere@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Aditionally: + + *g:syntastic_avrgcc_config_file* +Type: string +Default: ".syntastic_avrgcc_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +------------------------------------------------------------------------------ +2. Checkpatch *syntastic-c-checkpatch* + +Name: checkpatch +Maintainer: Daniel Walker <dwalker@fifo99.com> + +"Checkpatch" is a style checker for the Linux kernel sources. It's +distributed along with the Linux kernel sources: + + https://github.com/torvalds/linux/blob/master/scripts/checkpatch.pl + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. ClangCheck *syntastic-c-clang_check* + +Name: clang_check +Maintainer: Benjamin Bannier <bbannier@gmail.com> + +"ClangCheck" is a wrapper around Clang's "LibTooling" +(http://clang.llvm.org/docs/LibTooling.html). See the official page for +details: + + http://clang.llvm.org/docs/ClangCheck.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_clang_check_config_file'* +Type: string +Default: ".syntastic_clang_check_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Note~ + +By default you can set "ClangCheck" parameters in +'g:syntastic_c_clang_check_args', and compilation parameters +(defines, optimisation flags, etc.) in the configuration file. + +However, if you want "ClangCheck" to use compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- perhaps +generated by "CMake" (https://github.com/rizsotto/Bear) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_c_clang_check_post_args' to an empty string: > + let g:syntastic_c_clang_check_post_args = "" +< +Configuration files pointed to by 'g:syntastic_clang_check_config_file' are +then ignored. + +See also: |syntastic-cpp-clang_check|. + +------------------------------------------------------------------------------ +4. Clang-Tidy *syntastic-c-clang_tidy* + +Name: clang_tidy +Maintainer: Benjamin Bannier <bbannier@gmail.com> + +"Clang-Tidy" is a lint tool based on "Clang" (http://clang.llvm.org/). See +the project's page for details: + + http://clang.llvm.org/extra/clang-tidy.html + +Installation~ + +"Clang-Tidy" is part of the "Clang" (http://clang.llvm.org/) project, but it +isn't built by default. You need to enable compilation of the "Extra Clang +Tools" (http://clang.llvm.org/docs/ClangTools.html#extra-clang-tools) to get +it. See the build tutorial for details: + + http://clang.llvm.org/docs/LibASTMatchersTutorial.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_clang_tidy_config_file'* +Type: string +Default: ".syntastic_clang_tidy_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Note~ + +By default you can set "ClangTidy" parameters in +'g:syntastic_c_clang_tidy_args', and compilation parameters +(defines, optimisation flags, etc.) in the configuration file. + +If you want "ClangTidy" to use compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- +perhaps generated by "CMake" (http://cmake.org/) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_c_clang_tidy_post_args' to an empty string: > + let g:syntastic_c_clang_tidy_post_args = "" +< +Configuration files pointed to by 'g:syntastic_clang_tidy_config_file' are +then ignored. + +See also: |syntastic-cpp-clang_tidy|. + +------------------------------------------------------------------------------ +5. Cppcheck *syntastic-c-cppcheck* + +Name: cppcheck +Maintainer: LCD 47 <lcd047@gmail.com> + +"Cppcheck" is a static analysis tool for C/C++ code. See the project's page +for details: + + http://cppcheck.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_cppcheck_config_file'* +Type: string +Default: ".syntastic_cppcheck_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +See also: |syntastic-cpp-cppcheck|. + +------------------------------------------------------------------------------ +6. GCC *syntastic-c-gcc* + +Name: gcc +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + *'g:syntastic_c_compiler'* +Type: string +Default: "gcc", or "clang" if GCC is not found +Compiler executable. + + *'g:syntastic_c_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_c_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_c_compiler_options'* +Type: string +Default: "-std=gnu99" +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_c_config_file'* +Type: string +Default: ".syntastic_c_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_c_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it to something like this: > + let g:syntastic_c_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'g:syntastic_c_no_default_include_dirs'* +Type: boolean +Default: 0 +By default syntastic adds a number of common include directories to the +compilation flags, namely: > + -I. -I.. -Iinclude -Iincludes -I../include -I../includes +< +You can disable this behaviour by setting the above variable to 1. + + *'g:syntastic_c_no_include_search'* +Type: boolean +Default: 0 +By default syntastic looks at the first 100 lines of the file being checked, +and tries to determine if it needs to include headers for some common +libraries, such as "GLib" or "Gtk". It then tries to add the corresponding +include directories to the compilation flags. You can disable this behaviour +by setting the above variable to 1. + + *'g:syntastic_c_auto_refresh_includes'* +Type: boolean +Default: 0 +Used only if "g:syntastic_c_no_include_search" is set to a false value. By +default syntastic searches for common libraries only the first time the +current file is checked. Setting the above variable to 1 instructs syntastic +to refresh the list of common libraries every time the current file is +checked. You can also force a refresh even when the above variable is 0, by +`:unlet`-ing the buffer variable 'b:syntastic_c_includes'. + + *'b:syntastic_c_cflags'* +Type: string +Default: unset +Buffer-local variable. When set, no search for common libraries is performed, +and the contents of the variable are added to the compilation flags. + + *'g:syntastic_c_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "h"), all checks +are silently skipped. You can force syntastic to check header files by +setting the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_c_gcc_<option>' variables. The only exception is +'g:syntastic_c_gcc_exec', which can still be used to override the checker's +executable. + +See also: |syntastic-cpp-gcc|. + +------------------------------------------------------------------------------ +7. make *syntastic-c-make* + +Name: make +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +8. OClint *syntastic-c-oclint* + +Name: oclint +Maintainer: "UnCO" Lin <undercooled@lavabit.com> + +"OClint" is a static code analysis tool. See the project's page for details: + + http://oclint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_oclint_config_file' +Type: string +Default: ".syntastic_oclint_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Notes~ + +By default you can set "OClint" parameters in 'g:syntastic_c_oclint_args', and +compilation parameters (defines, optimisation flags, etc.) in the config file. + +If you want "OClint" to use "Clang"-style compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- +perhaps generated by "CMake" (http://cmake.org/) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_c_oclint_post_args' to an empty string: > + let g:syntastic_c_oclint_post_args = "" +< +Config files pointed to by 'g:syntastic_oclint_config_file' are then ignored. + +See also: |syntastic-cpp-oclint|. + +------------------------------------------------------------------------------ +9. PC-Lint *syntastic-c-pc_lint* + +Name: pc_lint +Maintainer: Steve Bragg <steve@empresseffects.com> + +"PC-Lint" is a commercial static code analysis tool for Windows, produced +by "Gimpel Software" (http://www.gimpel.com/). See the project's page for +details: + + http://www.gimpel.com/html/pcl.htm + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_pc_lint_config_file'* +Type: string +Default: "options.lnt" +Name of an indirect (.lnt) file. A file with that name is looked up in the +current directory and in parent directories; first such file found is used. + +See also: |syntastic-cpp-pc_lint|. + +------------------------------------------------------------------------------ +10. Sparse *syntastic-c-sparse* + +Name: sparse +Maintainer: Daniel Walker <dwalker@fifo99.com> + +"Sparse" is a semantic parser for C, see the official wiki for details: + + https://sparse.wiki.kernel.org/index.php/Main_Page + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_sparse_config_file'* +Type: string +Default: ".syntastic_sparse_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Notes~ + +If you use "Sparse" with "GCC" you probably want to add something like this to +your vimrc: > + let g:syntastic_c_sparse_post_args="-gcc-base-dir " . + \ system("gcc -v 2>&1 | sed -n '/^Reading specs/ { s#.* /#/#; s#/[^/]*$##; p; }'") +< +This allows "Sparse" to read "GCC"'s private include files. + +------------------------------------------------------------------------------ +11. Splint *syntastic-c-splint* + +Name: splint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Splint" is a tool for statically checking C programs for security +vulnerabilities, see the project's page for details: + + http://www.splint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_splint_config_file'* +Type: string +Default: ".syntastic_splint_config" +File containing project-specific options to be passed to "Splint" +(such as defines or include directories), one option per line (cf. +|syntastic-config-files|). + +============================================================================== +SYNTAX CHECKERS FOR C# *syntastic-checkers-cs* + +The following checkers are available for C# (filetype "cs"): + + 1. mcs......................|syntastic-cs-mcs| + +------------------------------------------------------------------------------ +1. mcs *syntastic-cs-mcs* + +Name: mcs +Maintainer: Daniel Walker <dwalker@fifo99.com> + +"mcs" is a compiler for C# from the "Mono" project +(http://www.mono-project.com/Main_Page). See the program's manual for details: + + http://mono.wikia.com/wiki/Man_mcs + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR C++ *syntastic-checkers-cpp* + +The following checkers are available for C++ (filetype "cpp"): + + 1. ClangCheck...............|syntastic-cpp-clang_check| + 2. Clang-Tidy...............|syntastic-cpp-clang_tidy| + 3. Cppcheck.................|syntastic-cpp-cppcheck| + 4. Cpplint..................|syntastic-cpp-cpplint| + 5. GCC......................|syntastic-cpp-gcc| + 6. OClint...................|syntastic-cpp-oclint| + 7. PC-Lint..................|syntastic-cpp-pc_lint| + 8. Vera++...................|syntastic-cpp-verapp| + +------------------------------------------------------------------------------ +1. ClangCheck *syntastic-cpp-clang_check* + +Name: clang_check +Maintainer: Benjamin Bannier <bbannier@gmail.com> + +"ClangCheck" is a wrapper around Clang's "LibTooling" +(http://clang.llvm.org/docs/LibTooling.html). See the official page for +details: + + http://clang.llvm.org/docs/ClangCheck.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_clang_check_config_file' +Type: string +Default: ".syntastic_clang_check_config" +file containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Note~ + +By default you can set "ClangCheck" parameters in +'g:syntastic_cpp_clang_check_args', and compilation parameters (defines, +optimisation flags, etc.) in the configuration file. + +However, if you want "ClangCheck" to use compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- perhaps +generated by "CMake" (https://github.com/rizsotto/Bear) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_cpp_clang_check_post_args' to an empty string: > + let g:syntastic_cpp_clang_check_post_args = "" +< +Configuration files pointed to by 'g:syntastic_clang_check_config_file' are +then ignored. + +See also: |syntastic-c-clang_check|. + +------------------------------------------------------------------------------ +2. Clang-Tidy *syntastic-cpp-clang_tidy* + +Name: clang_tidy +Maintainer: Benjamin Bannier <bbannier@gmail.com> + +"Clang-Tidy" is a lint tool based on "Clang" (http://clang.llvm.org/). See +the project's page for details: + + http://clang.llvm.org/extra/clang-tidy.html + +Installation~ + +"Clang-Tidy" is part of the "Clang" (http://clang.llvm.org/) project, but it +isn't built by default. You need to enable compilation of the "Extra Clang +Tools" (http://clang.llvm.org/docs/ClangTools.html#extra-clang-tools) to get +it. See the build tutorial for details: + + http://clang.llvm.org/docs/LibASTMatchersTutorial.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_clang_tidy_config_file' +Type: string +Default: ".syntastic_clang_tidy_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Note~ + +By default you can set "ClangTidy" parameters in +'g:syntastic_ppc_clang_tidy_args', and compilation parameters (defines, +optimisation flags, etc.) in the configuration file. + +If you want "ClangTidy" to use compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- +perhaps generated by "CMake" (http://cmake.org/) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_cpp_clang_tidy_post_args' to an empty string: > + let g:syntastic_cpp_clang_tidy_post_args = "" +< +Configuration files pointed to by 'g:syntastic_clang_tidy_config_file' are +then ignored. + +See also: |syntastic-c-clang_tidy|. + +------------------------------------------------------------------------------ +3. Cppcheck *syntastic-cpp-cppcheck* + +Name: cppcheck +Maintainer: LCD 47 <lcd047@gmail.com> + +"Cppcheck" is a static analysis tool for C/C++ code. See the project's page +for details: + + http://cppcheck.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_cppcheck_config_file' +Type: string +Default: ".syntastic_cppcheck_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +See also: |syntastic-c-cppcheck|. + +------------------------------------------------------------------------------ +4. Cpplint *syntastic-cpp-cpplint* + +Name: cpplint +Maintainer: LCD 47 <lcd047@gmail.com> + +For details about "Cpplint" see the project's page: + + https://code.google.com/p/google-styleguide/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_cpp_cpplint_thres'* +Type: integer +Default: 5 +Error threshold. Policy violations with a severity above this value are +highlighted as errors, the others are considered warnings by syntastic. + + *'g:syntastic_cpp_cpplint_args'* +Type: string +Default: "--verbose=3" +Command line options to pass to "Cpplint" + +Note~ + +By default syntastic expects the "cpplint" script to be named "cpplint.py". +However, if your "cpplint" was installed with "pip", the script's name is +"cpplint", and you need to set 'g:syntastic_cpp_cpplint_exec' accordingly: +> + let g:syntastic_cpp_cpplint_exec = "cpplint" +< +------------------------------------------------------------------------------ +5. GCC *syntastic-cpp-gcc* + +Name: gcc +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + *'g:syntastic_cpp_compiler'* +Type: string +Default: "g++", or "clang++" if GCC is not found +Compiler executable. + + *'g:syntastic_cpp_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_cpp_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_cpp_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_cpp_config_file'* +Type: string +Default: ".syntastic_cpp_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_cpp_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it to something like this: > + let g:syntastic_cpp_include_dirs = ["includes", "headers"] +> +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'g:syntastic_cpp_no_default_include_dirs'* +Type: boolean +Default: 0 +By default syntastic adds a number of common include directories to the +compilation flags, namely: > + -I. -I.. -Iinclude -Iincludes -I../include -I../includes +< +You can disable this behaviour by setting the above variable to 1. + + *'g:syntastic_cpp_no_include_search'* +Type: boolean +Default: 0 +By default syntastic looks at the first 100 lines of the file being checked, +and tries to determine if it needs to include headers for some common +libraries, such as "GLib" or "Gtk". It then tries to add the corresponding +include directories to the compilation flags. You can disable this behaviour +by setting the above variable to 1. + + *'g:syntastic_cpp_auto_refresh_includes'* +Type: boolean +Default: 0 +Used only if "g:syntastic_cpp_no_include_search" is set to a false value. +By default syntastic searches for common libraries only the first time the +current file is checked. Setting the above variable to 1 instructs syntastic +to refresh the list of common libraries every time the current file is +checked. You can also force a refresh even when the above variable is 0, by +`:unlet`-ing the buffer variable 'b:syntastic_cpp_includes'. + + *'b:syntastic_cpp_cflags'* +Type: string +Default: unset +Buffer-local variable. When set, no search for common libraries is performed, +and the contents of the variable are added to the compilation flags. + + *'g:syntastic_cpp_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "h", "hpp", or +"hh"), all checks are silently skipped. You can force syntastic to check +header files by setting the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_cpp_gcc_<option>' variables. The only exception is +'g:syntastic_cpp_gcc_exec', which can still be used to override the checker's +executable. + +See also: |syntastic-c-gcc|. + +------------------------------------------------------------------------------ +6. OClint *syntastic-cpp-oclint* + +Name: oclint +Maintainer: "UnCO" Lin <undercooled@lavabit.com> + +"OClint" is a static code analysis tool. See the project's page for details: + + http://oclint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_oclint_config_file' +Type: string +Default: ".syntastic_oclint_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +Notes~ + +By default you can set "OClint" parameters in 'g:syntastic_cpp_oclint_args', +and compilation parameters (defines, optimisation flags, etc.) in the config +file. + +If you want "OClint" to use "Clang"-style compilation databases +(http://clang.llvm.org/docs/JSONCompilationDatabase.html) -- +perhaps generated by "CMake" (http://cmake.org/) or "Build EAR" +(https://github.com/rizsotto/Bear) -- rather than pass compilation flags +explicitly, set 'g:syntastic_c_oclint_post_args' to an empty string: > + let g:syntastic_cpp_oclint_post_args = "" +< +Config files pointed to by 'g:syntastic_oclint_config_file' are then ignored. + +See also: |syntastic-c-oclint|. + +------------------------------------------------------------------------------ +7. PC-Lint *syntastic-cpp-pc_lint* + +Name: pc_lint +Maintainer: Steve Bragg <steve@empresseffects.com> + +"PC-Lint" is a commercial static code analysis tool for Windows, produced +by "Gimpel Software" (http://www.gimpel.com/). See the project's page for +details: + + http://www.gimpel.com/html/pcl.htm + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_pc_lint_config_file' +Type: string +Default: "options.lnt" +Name of an indirect (.lnt) file. A file with that name is looked up in the +current directory and in parent directories; first such file found is used. + +See also: |syntastic-c-pc_lint|. + +------------------------------------------------------------------------------ +8. Vera++ *syntastic-cpp-verapp* + +Name: verapp +Maintainer: Lucas Verney <phyks@phyks.me> + +"Vera++" is a programmable tool for verification, analysis and transformation +of C++ source code. See the project's page for details: + + https://bitbucket.org/verateam/vera/wiki/Home + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_verapp_config_file'* +Type: string +Default: ".syntastic_verapp_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + +============================================================================== +SYNTAX CHECKERS FOR CABAL *syntastic-checkers-cabal* + +The following checkers are available for Cabal (filetype "cabal"): + + 1. Cabal....................|syntastic-cabal-cabal| + +------------------------------------------------------------------------------ +1. Cabal *syntastic-cabal-cabal* + +Name: cabal +Maintainer: Ian D. Bollinger <ian.bollinger@gmail.com> + +This checker runs "cabal check" against Haskell Cabal package descriptions. +See the project's page for more information: + + http://www.haskell.org/cabal/ + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_cabal_cabal_<option>' variables. The only exception +is 'g:syntastic_cabal_cabal_exec', which can still be used to override the +checker's executable. + +============================================================================== +SYNTAX CHECKERS FOR CHEF *syntastic-checkers-chef* + +The following checkers are available for Chef (filetype "chef"): + + 1. Foodcritic...............|syntastic-chef-foodcritic| + +------------------------------------------------------------------------------ +1. Foodcritic *syntastic-chef-foodcritic* + +Name: foodcritic +Maintainer: Doug Ireton + +"Foodcritic" is a linter for "Chef" cookbooks (http://www.opscode.com/chef/). +See the project's page for more information: + + http://acrmp.github.io/foodcritic/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for Chef files, such as +"vim-chef": + + https://github.com/dougireton/vim-chef + +============================================================================== +SYNTAX CHECKERS FOR COBOL *syntastic-checkers-cobol* + +The following checkers are available for COBOL (filetype "cobol"): + + 1. OpenCOBOL................|syntastic-cobol-cobc| + +------------------------------------------------------------------------------ +1. OpenCOBOL *syntastic-cobol-cobc* + +Name: cobc +Maintainer: LCD 47 <lcd047@gmail.com> + +"OpenCOBOL" is a compiler for COBOL. See the project's page for more +information: + + http://www.opencobol.org/ + +Checker options~ + *'g:syntastic_cobol_compiler'* +Type: string +Default: "cobc" +Compiler executable. + + *'g:syntastic_cobol_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_cobol_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_cobol_compiler_options'* +Type: string +Default: unset +Compilation flags (such as "-std=cobol2002") to be passed to the checker. + + *'g:syntastic_cobol_config_file'* +Type: string +Default: ".syntastic_cobol_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_cobol_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it to something like this: > + let g:syntastic_cobol_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'b:syntastic_cobol_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_cobol_cobc_<option>' variables. The only exception +is 'g:syntastic_cobol_cobc_exec', which can still be used to override the +checker's executable. + +============================================================================== +SYNTAX CHECKERS FOR COCO *syntastic-checkers-co* + +The following checkers are available for Coco (filetype "co"): + + 1. Coco.....................|syntastic-co-coco| + +------------------------------------------------------------------------------ +1. Coco *syntastic-co-coco* + +Name: coco +Maintainer: Andrew Kelley <superjoe30@gmail.com> + +For details about "Coco" see the project's page: + + https://github.com/satyr/coco/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR COFFEESCRIPT *syntastic-checkers-coffee* + +The following checkers are available for CoffeeScript (filetype "coffee"): + + 1. Coffee...................|syntastic-coffee-coffee| + 2. CoffeeLint...............|syntastic-coffee-coffeelint| + +------------------------------------------------------------------------------ +1. Coffee *syntastic-coffee-coffee* + +Name: coffee +Maintainer: Lincoln Stoll <l@lds.li> + +"Coffee" is a compiler for CoffeeScript. See the project's page for details: + + http://coffeescript.org/ + +Syntastic requires "Coffee" version 1.6.2 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. CoffeeLint *syntastic-coffee-coffeelint* + +Name: coffeelint +Maintainer: Lincoln Stoll <l@lds.li> + +"CoffeeLint" is a style checker for CoffeeScript. See the project's page for +details: + + http://www.coffeelint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR COQ *syntastic-checkers-coq* + +The following checkers are available for Coq (filetype "coq"): + + 1. Coqtop...................|syntastic-coq-coqtop| + +------------------------------------------------------------------------------ +1. Coqtop *syntastic-coq-coqtop* + +Name: coqtop +Maintainer: Matvey Aksenov <matvey.aksenov@gmail.com> + +"Coqtop" is the top level intrface for Coq. See the project's page for +details: + + http://coq.inria.fr/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR CSS *syntastic-checkers-css* + +The following checkers are available for CSS (filetype "css"): + + 1. CSSLint..................|syntastic-css-csslint| + 2. mixedindentlint..........|syntastic-css-mixedindentlint| + 3. PHP_CodeSniffer..........|syntastic-css-phpcs| + 4. PrettyCSS................|syntastic-css-prettycss| + 5. RECESS...................|syntastic-css-recess| + 6. stylelint................|syntastic-css-stylelint| + +------------------------------------------------------------------------------ +1. CSSLint *syntastic-css-csslint* + +Name: csslint +Maintainer: Ory Band <oryband@gmail.com> + +"CSSLint" is a lint tool for Cascading Stylesheets. See the project's page +for details: + + http://csslint.net/ + +Installation~ + +Install it with "npm": > + npm install -g csslint +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. mixedindentlint *syntastic-css-mixedindentlint* + +Name: mixedindentlint +Maintainer: Payton Swick <payton@foolord.com> + +"mixedindentlint" is a general-purpose indentation checker. See the project's +page at GitHub for more information: + + https://github.com/sirbrillig/mixedindentlint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-javascript-mixedindentlint|, |syntastic-scss-mixedindentlint|. + +------------------------------------------------------------------------------ +3. PHP_CodeSniffer *syntastic-css-phpcs* + +Name: phpcs +Maintainer: LCD 47 <lcd047@gmail.com> + +"PHP_CodeSniffer" is a style checker for PHP and CSS. See the project's page +at GitHub for details: + + https://github.com/squizlabs/PHP_CodeSniffer/ + +Installation~ + +Install it with: > + pear install PHP_CodeSniffer +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters then "PHP_CodeSniffer"'s +idea of tabstop must match Vim's 'tabstop', otherwise syntastic will highlight +the errors at shifted positions. By default syntastic does that by adding +an option "--tab-width=&tabstop" to "PHP_CodeSniffer", but that option +also instructs "PHP_CodeSniffer" to expand tabs, and some code sniffers +(f.i. "CakePHP", see https://github.com/cakephp/cakephp-codesniffer) insist on +indenting lines with tabs. To work around the resulting mess if you're using +one of these sniffers, set "--tab-width=0" and 'tabstop' to 8: > + let g:syntastic_php_phpcs_args = "--tab-width=0" + set tabstop=8 +< +See also: |syntastic-php-phpcs|. + +------------------------------------------------------------------------------ +4. PrettyCSS *syntastic-css-prettycss* + +Name: prettycss +Maintainer: LCD 47 <lcd047@gmail.com> + +"PrettyCSS" is a beautifier, lint checker, and validator for Cascading +Stylesheets. For more details see: + +PrettyCSS Demo: + + http://fidian.github.io/PrettyCSS/ + +The project's page at GitHub: + + https://github.com/fidian/PrettyCSS/ + +Installation~ + +Install it with: > + npm install -g PrettyCSS +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +5. RECESS *syntastic-css-recess* + +Name: recess +Maintainer: Tim Carry <tim@pixelastic.com> + +"RECESS" is a code quality tool for CSS built on top of LESS. See the +project's page for details: + + http://twitter.github.io/recess/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-less-recess|. + +------------------------------------------------------------------------------ +6. stylelint *syntastic-css-stylelint* + +Name: stylelint +Maintainer: Tim Carry <tim@pixelastic.com> + +"stylelint" is a style checker for Cascading Stylesheets. See the project's +page for more information: + + http://stylelint.io/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-scss-stylelint|. + +============================================================================== +SYNTAX CHECKERS FOR CUCUMBER *syntastic-checkers-cucumber* + +The following checkers are available for Cucumber (filetype "cucumber"): + + 1. Cucumber.................|syntastic-cucumber-cucumber| + +------------------------------------------------------------------------------ +1. Cucumber *syntastic-cucumber-cucumber* + +Name: cucumber +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Cucumber" is a tool that executes plain-text functional descriptions as +automated tests. See the project's page for more information: + + http://cukes.info/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR CUDA *syntastic-checkers-cuda* + +The following checkers are available for CUDA (filetype "cuda"): + + 1. NVCC.....................|syntastic-cuda-nvcc| + +------------------------------------------------------------------------------ +1. NVCC *syntastic-cuda-nvcc* + +Name: nvcc +Author: Hannes Schulz <schulz@ais.uni-bonn.de> + +"NVCC" is a CUDA Compiler from nVidia. See the project's page for details: + + https://developer.nvidia.com/cuda-llvm-compiler + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_cuda_check_header'* +Type: boolean +Default: 0 +Turn this on to check header files. The checker then creates an empty file +".syntastic_dummy.cu" in the base directory of the file being checked. +Example: > + let g:syntastic_cuda_check_header = 1 +< + *'g:syntastic_cuda_config_file'* +Type: string +Default: ".syntastic_cuda_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + +============================================================================== +SYNTAX CHECKERS FOR D *syntastic-checkers-d* + +The following checkers are available for D (filetype "d"): + + 1. DMD......................|syntastic-d-dmd| + +------------------------------------------------------------------------------ +1. DMD *syntastic-d-dmd* + +Name: dmd +Maintainer: Alfredo Di Napoli <alfredo.dinapoli@gmail.com> + +Checker options~ + *'g:syntastic_d_compiler'* +Type: string +Default: "dmd" +Compiler executable. + + *'g:syntastic_d_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_d_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_d_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_d_config_file'* +Type: string +Default: ".syntastic_d_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_d_include_dirs'* +Type: array of strings +Default: inferred from ".dub/packages" +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it like this: > + let g:syntastic_d_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'g:syntastic_d_use_dub'* +Type: boolean +Default: 1 +Whether to use "dub" to find include directories. This requires "dub" version +0.9.24 or later. + + *'g:syntastic_d_dub_exec'* +Type: string +Default: "dub" +Path to the "dub" executable. Ignored if |'g:syntastic_d_use_dub'| is unset. + + *'b:syntastic_d_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + + *'g:syntastic_d_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "di"), all checks +are silently skipped. You can force syntastic to check header files by setting +the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_d_dmd_<option>' variables. The only exception is +'g:syntastic_d_dmd_exec', which can still be used to override the checker's +executable. + +============================================================================== +SYNTAX CHECKERS FOR DART *syntastic-checkers-dart* + +The following checkers are available for Dart (filetype "dart"): + + 1. Analyzer.................|syntastic-dart-dartanalyzer| + +------------------------------------------------------------------------------ +1. Analyzer *syntastic-dart-dartanalyzer* + +Name: dartanalyzer +Maintainer: Maksim Ryzhikov <rv.maksim@gmail.com> + +"Analyzer" is a static analysis tool for Dart (https://www.dartlang.org/). +See the manual for more information: + + https://www.dartlang.org/tools/analyzer/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR DOCBOOK *syntastic-checkers-docbk* + +The following checkers are available for DocBook (filetype "docbk"): + + 1. Igor.....................|syntastic-docbk-igor| + 2. xmllint..................|syntastic-docbk-xmllint| + +------------------------------------------------------------------------------ +1. Igor *syntastic-docbk-igor* + +Name: igor +Maintainer: LCD 47 <lcd047@gmail.com> + +"Igor" is a proofreader for DocBook SGML, man pages, and text files used by +the FreeBSD project (https://www.freebsd.org/). See the author's presentation +for details: + + http://www.youtube.com/watch?v=sczHqUPygZY + +The latest version can be obtained from Glen Barber's repository: + + http://docscripts.glenbarber.us/tags/igor/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-nroff-igor|, |syntastic-text-igor|. + +------------------------------------------------------------------------------ +2. xmllint *syntastic-docbk-xmllint* + +Name: xmllint +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"xmllint" is a checker and transformer tool for XML files, distributed with +the "libxml" package (http://www.xmlsoft.org/). See the tool's manual for more +information: + + http://xmlsoft.org/xmllint.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You can use a local installation of DTDs to significantly speed up validation +and allow you to validate XML data without network access. See the +"xmlcatalog" manual, and the catalog documentation for more information: + + http://www.xmlsoft.org/xmlcatalog_man.html + http://www.xmlsoft.org/catalog.html + +For an example of a DTD catalog see f.i. "XMLCatalog": + + https://github.com/darcyparker/XMLCatalog + +In order to use it with syntastic you'll have to clone it to a local +directory, and point the environment variable "XML_CATALOG_FILES" to the file +"catalog.xml" in the said directory: > + XML_CATALOG_FILES=/some/path/XMLCatalog/catalog.xml + export XML_CATALOG_FILES +< +Otherwise "xmllint" will try to load XML catalogs from "/etc/xml/catalog". + +See also: |syntastic-xml-xmllint|, |syntastic-xslt-xmllint|. + +============================================================================== +SYNTAX CHECKERS FOR DOCKERFILE *syntastic-checkers-dockerfile* + +The following checkers are available for Dockerfile (filetype "dockerfile"): + + 1. dockerfile-lint..........|syntastic-dockerfile-dockerfile_lint| + +------------------------------------------------------------------------------ +1. dockerfile-lint *syntastic-dockerfile-dockerfile_lint* + +Name: dockerfile_lint +Maintainer: Tim Carry <tim@pixelastic.com> + +"dockerfile-lint" is a linter for Dockerfiles +(http://docs.docker.com/engine/reference/builder). See the project's page at +GitHub for details: + + https://github.com/projectatomic/dockerfile_lint + +Installation~ + +Install it with: > + npm install -g dockerfile_lint +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR DUST *syntastic-checkers-dustjs* + +The following checkers are available for Dust (filetype "dustjs"): + + 1. Swiffer..................|syntastic-dustjs-swiffer| + +------------------------------------------------------------------------------ +1. Swiffer *syntastic-dustjs-swiffer* + +Name: swiffer +Maintainer: Steven Foote <smfoote@gmail.com> + +"Swiffer" is a command line lint tool for Dust. See the project's page for +details: + + https://github.com/smfoote/Swiffer.js + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +To enable Dust syntax checking, you must set the filetype of your Dust +template files to "dustjs". An easy way to do this is by installing the dustjs +syntax highlighter: + + https://github.com/jimmyhchan/dustjs.vim + +============================================================================== +SYNTAX CHECKERS FOR ELIXIR *syntastic-checkers-elixir* + +The following checkers are available for Elixir (filetype "elixir"): + + 1. elixir...................|syntastic-elixir-elixir| + +------------------------------------------------------------------------------ +1. elixir *syntastic-elixir-elixir* + +Name: elixir +Maintainer: Richard Ramsden <rramsden@gmail.com> + +See the project's page for details: + + http://elixir-lang.org/ + +Security~ + +This checker executes the code in the files it checks: + + https://github.com/scrooloose/syntastic/issues/1141 + +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:syntastic_enable_elixir_checker' to 1 +in your vimrc to enable this checker: > + let g:syntastic_enable_elixir_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over a global one in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add "elixir" to 'g:syntastic_elixir_checkers' if +you plan to use it. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ERLANG *syntastic-checkers-erlang* + +The following checkers are available for Erlang (filetype "erlang"): + + 1. escript..................|syntastic-erlang-escript| + 2. SyntaxErl................|syntastic-erlang-syntaxerl| + +------------------------------------------------------------------------------ +1. escript *syntastic-erlang-escript* + +Name: escript +Maintainer: Pawel Salata <rockplayer.pl@gmail.com> + +"escript" is an interpreter for Erlang programs. See the tool's manual for +more information: + + http://www.erlang.org/doc/man/escript.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you get warning: "behaviour X undefined" with your customize behaviour, add +the following line in your vimrc: > + let g:syntastic_erlc_include_path = "ebin" +< + +------------------------------------------------------------------------------ +2. SyntaxErl *syntastic-erlang-syntaxerl* + +Name: syntaxerl +Maintainer: locojay + +"SyntaxErl" is a syntax checker for Erlang. It uses "rebar" +(https://github.com/basho/rebar) to determine correct deps and libs paths. +See the project's page for more information: + + https://github.com/ten0s/syntaxerl + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ERUBY *syntastic-checkers-eruby* + +The following checkers are available for eRuby (filetype "eruby"): + + 1. Ruby.....................|syntastic-eruby-ruby| + +------------------------------------------------------------------------------ +1. Ruby *syntastic-eruby-ruby* + +Name: ruby +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +Checker options~ + 'g:syntastic_ruby_exec' +Type: string +Default: "ruby" +The Ruby executable to use. + +Note~ + +The variable 'g:syntastic_ruby_exec' is also used by the Ruby +"MRI" checker (cf. |syntastic-ruby-mri|), and it can be overriden +by 'g:syntastic_eruby_ruby_exec'. However, this checker doesn't +call the "makeprgBuild()" function, and thus it ignores all other +'g:syntastic_eruby_ruby_<option>' variables. + +============================================================================== +SYNTAX CHECKERS FOR FORTRAN *syntastic-checkers-fortran* + +The following checkers are available for Fortran (filetype "fortran"): + + 1. GNU Fortran..............|syntastic-fortran-gfortran| + +------------------------------------------------------------------------------ +1. GNU Fortran *syntastic-fortran-gfortran* + +Name: gfortran +Maintainer: Karl Yngve Lervåg <karl.yngve@lervag.net> + +"GNU Fortran" is a checker for Fortran files using either GNU +Fortran (https://gcc.gnu.org/fortran/) or Intel Fortran Compilers +(https://software.intel.com/en-us/fortran-compilers). + +Checker options~ + *'g:syntastic_fortran_compiler'* +Type: string +Default: "gfortran" +Compiler executable. Set this to either "gfortran" (to use GNU Fortran), or to +"ifort" (for Intel Fortran). + + *'g:syntastic_fortran_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_fortran_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_fortran_compiler_options'* +Type: string +Default: unset +Compilation flags (such as "-std=f95") to be passed to the checker. + + *'g:syntastic_fortran_config_file'* +Type: string +Default: ".syntastic_fortran_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_fortran_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it like this: > + let g:syntastic_fortran_include_dirs = ["includes", "headers"]" +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'b:syntastic_fortran_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_fortran_gfortran_<option>' variables. The only +exception is 'g:syntastic_fortran_gfortran_exec', which can still be used to +override the checker's executable. + +============================================================================== +SYNTAX CHECKERS FOR GENTOO METADATA *syntastic-checkers-gentoo* + +The following checkers are available for Gentoo Metadata (filetype "gentoo"): + + 1. xmllint..................|syntastic-gentoo-xmllint| + +------------------------------------------------------------------------------ +1. xmllint *syntastic-gentoo-xmllint* + +Name: xmllint +Maintainer: James Rowe <jnrowe@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +The DTDs required to validate "metadata.xml" files are available in +"$PORTDIR/metadata/dtd", and these local files can be used to significantly +speed up validation. You can create a catalog file with: > + xmlcatalog --create --add rewriteURI http://www.gentoo.org/dtd/ \ + ${PORTDIR:-/usr/portage}/metadata/dtd/ /etc/xml/gentoo +< +See "xmlcatalog" for more information: + + http://www.xmlsoft.org/catalog.html + +============================================================================== +SYNTAX CHECKERS FOR GETTEXT PO *syntastic-checkers-po* + +The following checkers are available for gettext .po files (filetype "po"): + + 1. msgfmt...................|syntastic-po-msgfmt| + +------------------------------------------------------------------------------ +1. msgfmt *syntastic-po-msgfmt* + +Name: msgfmt +Maintainer: Ryo Okubo <syucream1031@gmail.com> + +"msgfmt" is a compiler for gettext Portable Object +(http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html) +translation files. See the program's manual for details: + + http://www.gnu.org/software/gettext/manual/html_node/msgfmt-Invocation.html#msgfmt-Invocation + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR GLSL *syntastic-checkers-glsl* + +The following checkers are available for GLSL (filetype "glsl"): + + 1. cgc......................|syntastic-glsl-cgc| + +------------------------------------------------------------------------------ +1. cgc *syntastic-glsl-cgc* + +Name: cgc +Maintainer: Joshua Rahm <joshuarahm@gmail.com> + +"cgc" is a compiler that translates Cg or GLSL programs into OpenGL or DirectX +code. See the manual for more details: + + http://http.developer.nvidia.com/Cg/cgc.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_glsl_extensions'* +Type: dictionary +Default: unset + +You can control the profiles used by "cgc" with magic comments: put the magic +comment "// profile:" followed by the profile for "cgc" to use. For example +use > + // profile: glslf +< +to force the fragment shader profile. + +If the magic comment does not exist, then the dictionary +'g:syntastic_glsl_extensions' is used to infer the appropriate profile from +the current file's extension. If this dictionary does not exist either, a +default dictionary is used instead. Finally, if the current file's extension +cannott be found in these dictionaries, the checker assumes a vertex shader +profile. + + *'g:syntastic_glsl_options'* +Type: string +Default: unset +Additional arguments to pass to "cgc". + +============================================================================== +SYNTAX CHECKERS FOR GO *syntastic-checkers-go* + +The following checkers are available for Go (filetype "go"): + + 1. go.......................|syntastic-go-go| + 2. gofmt....................|syntastic-go-gofmt| + 3. Golint...................|syntastic-go-golint| + 4. Go Meta Linter...........|syntastic-go-gometalinter| + 5. gotype...................|syntastic-go-gotype| + 6. vet......................|syntastic-go-govet| + +------------------------------------------------------------------------------ +1. go *syntastic-go-go* + +Name: go +Maintainer: Kamil Kisiel <kamil@kamilkisiel.net> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_go_go_build_args'* +Type: string +Default: "-buildmode=archive" +arguments passed to "go build" + + *'g:syntastic_go_go_test_args'* +Type: string +Default: "-buildmode=archive" +arguments passed to "go test". + +Note~ + +This syntax checker does not reformat your source code. Use a |BufWritePre| +autocommand towards that end: > + autocmd FileType go autocmd BufWritePre <buffer> Fmt +< +------------------------------------------------------------------------------ +2. gofmt *syntastic-go-gofmt* + +Name: gofmt +Maintainer: Brandon Thomson <bt@brandonthomson.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +This syntax checker does not reformat your source code. Use a |BufWritePre| +autocommand towards that end: > + autocmd FileType go autocmd BufWritePre <buffer> Fmt +< +------------------------------------------------------------------------------ +3. Golint *syntastic-go-golint* + +Name: golint +Maintainer: Hiroshi Ioka <hirochachacha@gmail.com> + +"Golint" is a linter for Go. See the project's page for details: + + https://github.com/golang/lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. Go Meta Linter *syntastic-go-gometalinter* + +Name: gometalinter +Maintainer: Joshua Rubin <joshua@rubixconsulting.com> + +"Go Meta Linter" is a linter for Go. It runs a number of other linters +against your files, and normalises their output to a standard format. +See the project's page at GitHub for details: + + https://github.com/alecthomas/gometalinter + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +5. gotype *syntastic-go-gotype* + +Name: gotype +Maintainer: luz <ne.tetewi@gmail.com> + +See the tool's documentation for details: + + https://godoc.org/golang.org/x/tools/cmd/gotype + +------------------------------------------------------------------------------ +6. vet *syntastic-go-govet* + +Name: govet +Maintainer: Kamil Kisiel <kamil@kamilkisiel.net> + +See the tool's documentation for details: + + https://godoc.org/golang.org/x/tools/cmd/vet + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_go_govet_<option>' variables. + +============================================================================== +SYNTAX CHECKERS FOR HAML *syntastic-checkers-haml* + +The following checkers are available for Haml (filetype "haml"): + + 1. Haml.....................|syntastic-haml-haml| + 2. HAML-Lint................|syntastic-haml-haml_lint| + +------------------------------------------------------------------------------ +1. Haml *syntastic-haml-haml* + +Name: haml +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +See the project's page for details: + + http://haml.info/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. HAML-Lint *syntastic-haml-haml_lint* + +Name: haml_lint +Maintainer: Shane da Silva <shane@dasilva.io> + +"HAML-Lint" is a checker for HAML files. See the project's page for details: + + https://github.com/causes/haml-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR HANDLEBARS *syntastic-checkers-handlebars* + +The following checkers are available for Handlebars (filetype "handlebars"): + + 1. Handlebars...............|syntastic-handlebars-handlebars| + +------------------------------------------------------------------------------ +1. Handlebars *syntastic-handlebars-handlebars* + +Name: handlebars +Maintainer: Jeremy Mack + +"Handlebars" is a JavaScript library for building semantic templates. See the +project's page for details: + + http://handlebarsjs.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for Handlebars files, such as +"vim-mustache-handlebars": + + https://github.com/mustache/vim-mustache-handlebars + +============================================================================== +SYNTAX CHECKERS FOR HASKELL *syntastic-checkers-haskell* + +The following checkers are available for Haskell (filetype "haskell"): + + 1. hdevtools................|syntastic-haskell-hdevtools| + 2. HLint....................|syntastic-haskell-hlint| + 3. Style scanner............|syntastic-haskell-scan| + +------------------------------------------------------------------------------ +1. hdevtools *syntastic-haskell-hdevtools* + +Name: hdevtools +Maintainer: Anthony Carapetis <anthony.carapetis@gmail.com> + +"hdevtools" is a backend for text editor plugins. See the project's page at +GitHub for details: + + https://github.com/bitc/hdevtools/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters, then Vim's 'tabstop' +must match "hdevtools"'s idea of tabstop, otherwise column numbers will be +shifted. At the time of this writing, "hdevtools"'s tabstop is hardcoded to 8, +so you should probably add something like this to your vimrc: > + set tabstop=8 +< +------------------------------------------------------------------------------ +2. HLint *syntastic-haskell-hlint* + +Name: hlint +Maintainer: Nicolas Wu <nicolas.wu@gmail.com> + +"HLint" is a linter and style checker for Haskell. See the project's page for +details: + + http://community.haskell.org/~ndm/hlint/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters, Vim's 'tabstop' must +match "HLint"'s idea of tabstop, otherwise column numbers will be shifted. At +the time of this writing "HLint"'s tabstop is hardcoded to 8, so you should +probably add something like this to your vimrc: > + set tabstop=8 +< +------------------------------------------------------------------------------ +3. Style scanner *syntastic-haskell-scan* + +Name: scan +Maintainer: LCD 47 <lcd047@gmail.com> + +"Style scanner" is a style checker for Haskell. See the project's page for +details: + + http://projects.haskell.org/style-scanner/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters, Vim's 'tabstop' must +match "Style scanner"'s idea of tabstop, otherwise column numbers will be +shifted. At the time of this writing "Style scanner"'s tabstop is hardcoded to +8, so you should probably add something like this to your vimrc: > + set tabstop=8 +< +============================================================================== +SYNTAX CHECKERS FOR HAXE *syntastic-checkers-haxe* + +The following checkers are available for Haxe (filetype "haxe"): + + 1. Haxe.....................|syntastic-haxe-haxe| + +------------------------------------------------------------------------------ +1. Haxe *syntastic-haxe-haxe* + +Name: haxe +Maintainer: David Bernard <david.bernard.31@gmail.com> + +"Haxe" is a programming language and compiler that can produce applications +and source code for multiple different platforms from a single code-base. See +the project's page for details: + + http://haxe.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:vaxe_hxml'* + *'b:vaxe_hxml'* +Type: string +Default: unset +By default the checker will search parent folders for "hxml" files, and +use the first one it finds. You can override that behaviour by pointing +'g:vaxe_hxml' or 'b:vaxe_hxml' to a specific build file. Those variables can +also be set by Vaxe: + + https://github.com/jdonaldson/vaxe + +============================================================================== +SYNTAX CHECKERS FOR HSS *syntastic-checkers-hss* + +The following checkers are available for HSS (filetype "hss"): + + 1. HSS......................|syntastic-hss-hss| + +------------------------------------------------------------------------------ +1. HSS *syntastic-hss-hss* + +Name: hss +Maintainer: Justin Donaldson <jdonaldson@gmail.com> + +"HSS" is a tool that extends the CSS syntax with features such as variables +and nested blocks. See the project's page for details: + + http://ncannasse.fr/projects/hss + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR HTML *syntastic-checkers-html* + +The following checkers are available for HTML (filetype "html"): + + 1. ESLint...................|syntastic-html-eslint| + 2. gjslint..................|syntastic-html-gjslint| + 3. HTML tidy................|syntastic-html-tidy| + 4. JSHint...................|syntastic-html-jshint| + 5. textlint.................|syntastic-html-textlint| + 6. Validator................|syntastic-html-validator| + 7. W3.......................|syntastic-html-w3| + +------------------------------------------------------------------------------ +1. ESLint *syntastic-html-eslint* + +Name: eslint +Maintainer: LCD 47 <lcd047@gmail.com> + +"ESLint" is a tool for identifying and reporting on patterns found in +ECMAScript/JavaScript code. It can also detect problems in JavaScript code +embedded in HTML files. See the project's page for details: + + https://github.com/nzakas/eslint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You can also use "eslint_d" (https://github.com/mantoni/eslint_d.js), version +2.1.0 or later, instead of "ESLint". Just point 'g:syntastic_html_eslint_exec' +to it: + + https://github.com/mantoni/eslint_d.js#editor-integration + +See also: |syntastic-javascript-eslint|, |syntastic-typescript-eslint|. + +------------------------------------------------------------------------------ +2. gjslint *syntastic-html-gjslint* + +Name: gjslint +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Closure Linter", or "gjslint", is a style checker for JavaScript. It can also +detect problems in HTML files. See the project's page for more information: + + https://developers.google.com/closure/utilities/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-javascript-gjslint|. + +------------------------------------------------------------------------------ +3. HTML tidy *syntastic-html-tidy* + +Name: tidy +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"HTML Tidy" is a syntax checker and formatter for HTML. See the project's page +for more information: + + http://www.html-tidy.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_html_tidy_ignore_errors'* +Type: array of strings +Default: [] +List of errors to ignore. Case-sensitive patterns matched as substrings +(not regular expressions) against the error messages. See also +|'syntastic_quiet_messages'|. + + *'g:syntastic_html_tidy_blocklevel_tags'* +Type: array of strings +Default: [] +List of additional blocklevel tags to be added to "--new-blocklevel-tags". + + *'g:syntastic_html_tidy_inline_tags'* +Type: array of strings +Default: [] +List of additional inline tags to be added to "--new-inline-tags". + + *'g:syntastic_html_tidy_empty_tags'* +Type: array of strings +Default: [] +List of additional empty tags, to be added to "--new-empty-tags". + +See also: |syntastic-xhtml-tidy|. + +------------------------------------------------------------------------------ +4. jshint *syntastic-html-jshint* + +Name: JSHint +Maintainer: LCD 47 <lcd047@gmail.com> + +"JSHint" can detect JavaScript errors and potential problems in HTML +files. See the project's page for details: + + http://jshint.com/ + +Syntastic requires "JSHint" version 2.4.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters then "JSHint"'s idea of +tabstop must match Vim's 'tabstop', otherwise syntastic will highlight the +errors at shifted positions. By default "JSHint"'s tabstop is 4, while Vim's +default 'tabstop' is 8. + +In order to change "JSHint"'s tabstop you have to change its "indent" config +option (cf. http://jshint.com/docs/options/#indent). One way to do that is +to put it in a file named ".jshintrc" in the current directory, the parent +directories, or your home directory. The file is supposed to be in JSON +format. For example: > + { + "indent": 8 + } +< +See JSHint documentation for more details: + + http://jshint.com/docs/ + +Please note however that setting "indent" also triggers the indentation checks +in "JSHint". If that is undesirable, your only other option is to leave +"JSHint"'s tabstop alone, and change Vim's 'tabstop' to 4. To change Vim's +'tabstop', you can add this to your vimrc: > + set tabstop=4 +< +See also: |syntastic-javascript-jshint|, |syntastic-xhtml-jshint|. + +------------------------------------------------------------------------------ +5. textlint *syntastic-html-textlint* + +Name: textlint +Maintainer: LCD 47 <lcd047@gmail.com> + +"textlint" is a natural language linter for text, Markdown, and HTML files. +See the project's page for details: + + https://textlint.github.io/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You need to install both "textlint" and the "textlint HTML" plugin for this to +work: + + https://github.com/textlint/textlint-plugin-html + +See also: |syntastic-markdown-textlint|, |syntastic-text-textlint|. + +------------------------------------------------------------------------------ +6. Validator *syntastic-html-validator* + +Name: validator +Maintainer: LCD 47 <lcd047@gmail.com> + +"Validator" is a non-DTD-based HTML checker. See the project's page for +details: + + http://validator.github.io/validator/ + +As a syntastic checker, you can validate your files against the online service +(see https://validator.nu/), or you can install "vnu.jar": + + https://github.com/validator/validator/releases/latest + +then run it as a HTTP server: > + $ java -Xss512k -cp /path/to/vnu.jar nu.validator.servlet.Main 8888 +< +Requirement~ + +This checker uses cURL: + + http://curl.haxx.se/ + +Checker options~ + + *'g:syntastic_html_validator_api'* +Type: string +Default: "http://validator.nu/" +URL of the service to use for checking. Leave it to the default to run the +checks against "https://validator.nu/", or set it to "http://localhost:8888/" +if you have "vnu.jar" installed, and you're running it as a standalone HTTP +server. See: + + http://validator.github.io/validator/#standalone + + *'g:syntastic_html_validator_parser'* +Type: string +Default: empty +Parser to use. Legal values are: "xml", "xmldtd", "html", "html5", "html4", +and "html4tr". Set it to "html5" to check HTML5 files. References: + + https://wiki.whatwg.org/wiki/Validator.nu_Common_Input_Parameters#parser + + *'g:syntastic_html_validator_nsfilter'* +Type: string +Default: empty +Sets the "nsfilter" for the parser. See: + + https://wiki.whatwg.org/wiki/Validator.nu_Common_Input_Parameters#nsfilter + + *'g:syntastic_html_validator_exec'* +Type: string +Default: "curl" +Path to the "cURL" executable. Override it with a full path if your "cURL" is +not installed in a standard location. + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_html_validator_<option>' variables. The only exception +is 'g:syntastic_html_validator_exec', which can be used to override the path +to the "cURL" executable. + +Note~ + +Non-zero exit codes from "cURL" are typically network errors, and are signaled +by syntastic with messages such as: > + syntastic: error: checker html/validator returned abnormal status 26 +< +You can lookup the meaning of these codes in cURL's manual: + + http://curl.haxx.se/docs/manpage.html#EXIT + +------------------------------------------------------------------------------ +7. W3 *syntastic-html-w3* + +Name: w3 +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"W3" is the W3C Markup Validator for HTML. See the project's page for +details: + + https://validator.w3.org/source/ + +As a syntastic checker, you can validate your files against the online service +(see http://validator.w3.org/), or you can install it from sources and run it +as a local service: + + https://github.com/w3c/markup-validator/ + +Requirement~ + +This checker uses cURL: + + http://curl.haxx.se/ + +Checker options~ + + *'g:syntastic_html_w3_api'* +Type: string +Default: "http://validator.w3.org/check" +URL of the service to use for checking. Leave it to the default to +run the checks against "http://validator.w3.org/", or set it to +"http://localhost/w3c-validator/check" if you're running a local service. + + *'g:syntastic_html_w3_exec'* +Type: string +Default: "curl" +Path to the "cURL" executable. Override it with a full path if your "cURL" is +not installed in a standard location. + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_html_w3_<option>' variables. The only exception is +'g:syntastic_html_w3_exec', which can be used to override the path to the +"cURL" executable. + +Note~ + +Non-zero exit codes from "cURL" are typically network errors, and are signaled +by syntastic with messages such as: > + syntastic: error: checker html/validator returned abnormal status 26 +< +You can lookup the meaning of these codes in cURL's manual: + + http://curl.haxx.se/docs/manpage.html#EXIT + +============================================================================== +SYNTAX CHECKERS FOR JAVA *syntastic-checkers-java* + +The following checkers are available for Java (filetype "java"): + + 1. checkstyle...............|syntastic-java-checkstyle| + 2. javac....................|syntastic-java-javac| + +------------------------------------------------------------------------------ +1. checkstyle *syntastic-java-checkstyle* + +Name: checkstyle +Maintainer: Dmitry Geurkov <d.geurkov@gmail.com> + +"Checkstyle" is a style checker for Java. See the project's page for details: + + http://checkstyle.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_java_checkstyle_classpath'* +Type: string +Default: "checkstyle-6.10.1-all.jar" +Classpath to use. Multiple files are allowed. + + *'g:syntastic_java_checkstyle_conf_file'* +Type: string +Default: "sun_checks.xml" +Path to the configuration file for the "-c" option (cf. +http://checkstyle.sourceforge.net/cmdline.html#Command_line_usage). + + +Notes~ + +1. The checker was tested with "checkstyle" version 5.5. If you're using +it with version 5.6 or later you should remove DoubleCheckedLocking from +your configuration file: + + http://stackoverflow.com/a/12798807/1658042 + +2. At the time of this writing, the "checkstyle" checker doesn't distinguish +between error severity levels. All messages are treated as errors, regardless +of their severity defined in the "checkstyle" config file. + +3. You can specify a property file: > + let g:syntastic_java_checkstyle_post_args = + \ ["-p", "/path/to/checkstyle.properties"] +< +4. You probably want to download the "fat jar" "checkstyle-*-all.jar" and +point |'g:syntastic_java_checkstyle_classpath'| to it: + + http://iweb.dl.sourceforge.net/project/checkstyle/checkstyle/ + http://checkstyle.sourceforge.net/cmdline.html#Usage_by_Classpath_update + +Current builds at Maven Central do not package "checkstyles" with its +dependencies: + + http://search.maven.org/#search|gav|1|g%3A%22com.puppycrawl.tools%22%20AND%20a%3A%22checkstyle%22 + +However, |'g:syntastic_java_checkstyle_classpath'| accepts multiple files if +you want to include the "checkstyle" jar and all of its dependencies. + +------------------------------------------------------------------------------ +2. javac *syntastic-java-javac* + +Name: javac +Maintainers: Jochen Keil <jochen.keil@gmail.com> + Dmitry Geurkov <d.geurkov@gmail.com> + +Commands~ + +The following commands are available: + + *:SyntasticJavacEditClasspath* +This opens a new window where you can specify a classpath. Individual paths +may be specified one per line, or separated by colons ":" on UNIX, or by +semicolons ";" on Windows. + + *:SyntasticJavacEditConfig* +This command relevant only if |'g:syntastic_java_javac_config_file_enabled'| +is set. It opens a buffer where you can specify project-specific options from +the list below. These options will be saved in a file pointed to by +|'g:syntastic_java_javac_config_file'| (".syntastic_javac_config" by default). +Set |'g:syntastic_java_javac_config_file'| to a full path to use a +project-wide configuration file, rather than a file in the current directory. +The settings have to be specified as Vim commands. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_java_javac_executable'* +Type: string +Default: "javac" +Compiler executable used for checking files. + + *'g:syntastic_java_maven_executable'* +Type: string +Default: "mvn" +Maven executable used for loading classpath for "maven" projects. + + *'g:syntastic_java_javac_options'* +Type: string +Default: "-Xlint" +Options for "javac". + + *'g:syntastic_java_javac_classpath'* +Type: string +Default: "" +Classpath. It can be changed by running the `:SyntasticJavacEditClasspath` +command. + + *'g:syntastic_java_javac_delete_output'* +Type: boolean +Default: 1 +When set the checker will delete the ".class" files created by "javac". + + *'g:syntastic_java_javac_autoload_maven_classpath'* +Type: boolean +Default: 1 +If enabled and a file "pom.xml" is found in the current working directory, +"maven" is used to load classpath. + + *'g:syntastic_java_javac_config_file'* +Type: string +Default: ".syntastic_javac_config" +Path to the configuration file used by "javac". As usual, if a filename is +specified rather than a full path, the file is created and looked for in the +current directory. + + *'g:syntastic_java_javac_config_file_enabled'* +Type: boolean +Default: 0 +When enabled, the classpath is written to the file pointed to by +|'g:syntastic_java_javac_config_file'|. The file is created as needed. +You can edit this file with the `:SyntasticJavacEditClasspath` command. +The change will take effect next time you run the checker. + + *'g:syntastic_java_javac_custom_classpath_command'* +Type: string +Default: "" +Custom command to run in order to get the classpath. The command classpath +output can be in traditional Java form, or specified on separate lines. +"%file_path%", "%FILE_NAME%", and "%FILE_DIR%" are expanded to the current +file's full path, filename, and base directory respectively, all of them +escaped for use in a shell command. + +Using Ant~ + +When using "ant" (http://ant.apache.org/) you can have a custom build target +(named for example "path") that will output your project's classpath. You can +then use `:SyntasticJavacEditConfig` and add the following line to use it with +"javac" checker: > + let g:syntastic_java_javac_custom_classpath_command = + \ "ant -q path | grep echo | cut -f2- -d] | tr -d ' ' | tr ':' '\n'" +< +Using Gradle~ + +For "Gradle" projects (http://gradle.org/) you might consider using +"gradle-syntastic-plugin": + + https://github.com/Scuilion/gradle-syntastic-plugin + +This will write the relevant classpath to a file ".syntastic_javac_config". + +============================================================================== +SYNTAX CHECKERS FOR JAVASCRIPT *syntastic-checkers-javascript* + +The following checkers are available for JavaScript (filetype "javascript"): + + 1. Closure Compiler.........|syntastic-javascript-closurecompiler| + 2. ESLint...................|syntastic-javascript-eslint| + 3. Flow.....................|syntastic-javascript-flow| + 4. gjslint..................|syntastic-javascript-gjslint| + 5. JavaScript Lint..........|syntastic-javascript-jsl| + 6. JSCS.....................|syntastic-javascript-jscs| + 7. JSHint...................|syntastic-javascript-jshint| + 8. JSLint...................|syntastic-javascript-jslint| + 9. JSXHint..................|syntastic-javascript-jsxhint| + 10. mixedindentlint.........|syntastic-javascript-mixedindentlint| + 11. standard................|syntastic-javascript-standard| + 12. tern-lint...............|syntastic-javascript-tern_lint| + +------------------------------------------------------------------------------ +1. Closure Compiler *syntastic-javascript-closurecompiler* + +Name: closurecompiler +Maintainer: Motohiro Takayama <mootoh@gmail.com> + +"Closure Compiler" is a compiler for JavaScript maintained by Google. See the +project's page for details: + + https://developers.google.com/closure/compiler/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_javascript_closurecompiler_path'* +Type: string +Default: unset +Path to "google-closure-compiler.jar" + + *'g:syntastic_javascript_closurecompiler_script'* +Type: string +Default: unset +Path to a "closurecompiler" executable script. + +Note~ + +In order to enable the checker you have to set exactly one of the options +above. If you have a package manager (such as "Homebrew") that installs a +shell script that runs "Closure Compiler", point +|'g:syntastic_javascript_closurecompiler_script'| to that script. Otherwise +set |'g:syntastic_javascript_closurecompiler_path'| to point to the "Closure +Compiler" jar file. + +------------------------------------------------------------------------------ +2. ESLint *syntastic-javascript-eslint* + +Name: eslint +Maintainer: Maksim Ryzhikov <rv.maksim@gmail.com> + +"ESLint" is a tool for identifying and reporting on patterns found in +ECMAScript/JavaScript code. See the project's page for details: + + https://github.com/nzakas/eslint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You can also use "eslint_d" (https://github.com/mantoni/eslint_d.js), +version 2.1.0 or later, instead of "ESLint". Just point +'g:syntastic_javascript_eslint_exec' to it: + + https://github.com/mantoni/eslint_d.js#editor-integration + +See also: |syntastic-html-eslint|, |syntastic-typescript-eslint|. + +------------------------------------------------------------------------------ +3. Flow *syntastic-javascript-flow* + +Name: flow +Maintainer: Michael Robinson <mike@pagesofinterest.net> + +"Flow" is a static type checker for JavaScript, written by Facebook. See the +project's page for details: + + http://flowtype.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Notes~ + +Syntastic requires "Flow" version 0.6 or later. + +To use "Flow" with your projects, you must: + +a. Install it: + + https://github.com/sindresorhus/flow-bin + +b. Configure your project: +> + cd /path/to/your/project + flow init +< +c. Read the docs to find out more. It won't work out of the box. + + http://flowtype.org/docs/existing.html + +------------------------------------------------------------------------------ +4. gjslint *syntastic-javascript-gjslint* + +Name: gjslint +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Closure Linter", or "gjslint", is a style checker for JavaScript. See the +project's page for more information: + + https://developers.google.com/closure/utilities/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-html-gjslint|. + +------------------------------------------------------------------------------ +5. JavaScript Lint *syntastic-javascript-jsl* + +Name: jsl +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +For details about "JavaScript Lint" see the project's page: + + http://www.javascriptlint.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +6. JSCS *syntastic-javascript-jscs* + +Name: jscs +Maintainer: LCD 47 <lcd047@gmail.com> + +"JSCS" is a code style checker for JavaScript. See the project's page for +more information: + + https://github.com/mdevils/node-jscs + +Syntastic requires "JSCS" version 0.2.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +7. JSHint *syntastic-javascript-jshint* + +Name: jshint +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"JSHint" is a tool to detect errors and potential problems in JavaScript +files. See the project's page for details: + + http://jshint.com/ + +Syntastic requires "JSHint" version 1.0.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Notes~ + +If you're checking files containing tab characters then "JSHint"'s idea of +tabstop must match Vim's 'tabstop', otherwise syntastic will highlight the +errors at shifted positions. By default "JSHint"'s tabstop is 4, while Vim's +default 'tabstop' is 8. + +In order to change "JSHint"'s tabstop you have to change its "indent" config +option (cf. http://jshint.com/docs/options/#indent). One way to do that is +to put it in a file named ".jshintrc" in the current directory, the parent +directories, or your home directory. The file is supposed to be in JSON +format. For example: > + { + "indent": 8 + } +< +See JSHint documentation for more details: + + http://jshint.com/docs/ + +Please note however that setting "indent" also triggers the indentation checks +in "JSHint". If that is undesirable, your only other option is to leave +"JSHint"'s tabstop alone, and change Vim's 'tabstop' to 4. To change Vim's +'tabstop', you can add this to your vimrc: > + set tabstop=4 +< +See also: |syntastic-html-jshint|, |syntastic-xhtml-jshint|. + +------------------------------------------------------------------------------ +8. JSLint *syntastic-javascript-jslint* + +Name: jslint +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"JSLint" is a code quality checker for JavaScript. See the program's page for +details: + + http://www.jslint.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +By default the checker calls "JSLint" with these options: > + --white --nomen --regexp --plusplus --bitwise --newcap --sloppy --vars +< +This can be changed by setting 'g:syntastic_javascript_jslint_args' in your +vimrc to your own list of options, for example: > + let g:syntastic_javascript_jslint_args = + \ "--nomen --regexp --browser --devel --windows --sloppy --vars" +< +Setting this variable to the empty string "" is allowed, and instructs +syntastic to call "JSLint" with no options. + +------------------------------------------------------------------------------ +9. JSXHint *syntastic-javascript-jsxhint* + +Name: JSXHint +Maintainer: Thomas Boyt <me@thomasboyt.com> + +"JSXHint" is a wrapper around JSHint (http://jshint.com/) for +linting JSX syntax, which is inline markup-in-JS used by React +(http://facebook.github.io/react/docs/getting-started.html). + +See the project's page for details: + + https://github.com/strml/jsxhint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Installation~ + +Install it with "npm": > + npm install -g jsxhint +< +Syntastic requires "JSXHint" version v0.4.1 or later. You also need "JSHint" +v1.1.0 or later. + +Note~ + +Since "JSXHint" is a wrapper around JSHint, the following note relevant to +the latter still applies: + +If you're checking files containing tab characters then JSHint's idea of +tabstop must match Vim's 'tabstop', otherwise syntastic will highlight the +errors at shifted positions. By default JSHint's tabstop is 4, while Vim's +default 'tabstop' is 8. + +In order to change "JSHint"'s tabstop you have to change its "indent" config +option (http://jshint.com/docs/options/#indent). One way to do that is to +put it in a file named ".jshintrc" in the current directory, the parent +directories, or your home directory. The file is supposed to be in JSON +format. For example: > + { + "indent": 8 + } +< +See JSHint documentation for more details: + + http://jshint.com/docs/ + +Please note however that setting "indent" also triggers the indentation checks +in JSHint. If that is undesirable, your only other option is to leave JSHint's +tabstop alone, and change Vim's 'tabstop' to 4. To change Vim's 'tabstop', you +can add this to your 'vimrc': > + set tabstop=4 +< +Alternative~ + +"JSXHint" will not show JSX-related errors in syntastic, because failed JSX +compiles will result in the uncompiled data being passed to JSHint: + + https://github.com/STRML/JSXHint/issues/45 + +To get around this, "Syntastic-React" can be used as a replacement for +"JSXHint": + + https://github.com/jaxbot/syntastic-react + +------------------------------------------------------------------------------ +10. mixedindentlint *syntastic-javascript-mixedindentlint* + +Name: mixedindentlint +Maintainer: Payton Swick <payton@foolord.com> + +"mixedindentlint" is a general-purpose indentation checker. See the project's +page at GitHub for more information: + + https://github.com/sirbrillig/mixedindentlint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-css-mixedindentlint|, |syntastic-scss-mixedindentlint|. + +------------------------------------------------------------------------------ +11. standard *syntastic-javascript-standard* + +Name: standard +Maintainer: LCD 47 <lcd047@gmail.com> + +"Standard" is a code style checker for JavaScript. See the project's page for +more information: + + https://github.com/feross/standard + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_javascript_standard_generic'* +Type: boolean +Default: 0 +Flag that can be used to disable version checks for "standard". + +Note~ + +Most forks of "standard" can also be used with syntastic. Just +set 'g:syntastic_javascript_standard_generic' to 1, and point +'g:syntastic_javascript_standard_exec' to the fork's executable. For +example to use happiness (https://github.com/JedWatson/happiness) instead of +"standard": > + let g:syntastic_javascript_checkers = ["standard"] + let g:syntastic_javascript_standard_exec = "happiness" + let g:syntastic_javascript_standard_generic = 1 +< +------------------------------------------------------------------------------ +12. tern-lint *syntastic-javascript-tern_lint* + +Name: tern_lint +Maintainer: LCD 47 <lcd047@gmail.com> + +"tern-lint" is a static type checker for JavaScript. See the project's page +for more information: + + https://github.com/angelozerr/tern-lint + +Syntastic requires a version of Vim compiled with the |+byte_offset| feature +to use this checker. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +"tern-lint" recursively scans files starting from (Vim's idea of) the current +directory, regardless of the current file. + +============================================================================== +SYNTAX CHECKERS FOR JSON *syntastic-checkers-json* + +The following checkers are available for JSON (filetype "json"): + + 1. JSONLint.................|syntastic-json-jsonlint| + 2. jsonval..................|syntastic-json-jsonval| + +------------------------------------------------------------------------------ +1. JSONLint *syntastic-json-jsonlint* + +Name: jsonlint +Maintainer: Miller Medeiros <contact@millermedeiros.com> + +"JSONLint" is a validator for JSON. See the project's page for details: + + http://jsonlint.com/ + +Installation~ + +Install it with: > + npm install -g jsonlint +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. jsonval *syntastic-json-jsonval* + +Name: jsonval +Maintainer: Miller Medeiros <contact@millermedeiros.com> + +"jsonval" is a validator for JSON. See the project's page at GitHub for +details: + + https://github.com/dangerousben/jsonval + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR LESS *syntastic-checkers-less* + +The following checkers are available for LESS (filetype "less"): + + 1. lessc....................|syntastic-less-lessc| + 2. RECESS...................|syntastic-less-recess| + +------------------------------------------------------------------------------ +1. lessc *syntastic-less-lessc* + +Name: lessc +Maintainer: Julien Blanchard <julien@sideburns.eu> + +"lessc" is a compiler for LESS. See the project's page for details: + + http://lesscss.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + *'g:syntastic_less_use_less_lint'* +Type: boolean +Default: 0 +Flag that can be set to instruct syntastic to run "less-lint" instead of +"less". + +------------------------------------------------------------------------------ +2. RECESS *syntastic-less-recess* + +Name: recess +Maintainer: Tim Carry <tim@pixelastic.com> + +"RECESS" is a code quality tool for CSS built on top of LESS. See the +project's page for details: + + http://twitter.github.io/recess/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-css-recess|. + +============================================================================== +SYNTAX CHECKERS FOR LEX *syntastic-checkers-lex* + +The following checkers are available for Lex (filetype "lex"): + + 1. flex.....................|syntastic-lex-flex| + +------------------------------------------------------------------------------ +1. flex *syntastic-lex-flex* + +Name: flex +Maintainer: LCD 47 <lcd047@gmail.com> + +"Flex" is the GNU implementation of the standard UNIX lexical analyzer "lex" +(http://en.wikipedia.org/wiki/Lex_programming_tool). See the project's page +for more information: + + http://flex.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR LIMBO *syntastic-checkers-limbo* + +The following checkers are available for Limbo (filetype "limbo"): + + 1. Limbo....................|syntastic-limbo-limbo| + +------------------------------------------------------------------------------ +1. Limbo *syntastic-limbo-limbo* + +Name: limbo +Maintainer: Alex Efros <powerman-asdf@ya.ru> + +"Limbo" is a compiler for the Limbo language +(http://doc.cat-v.org/inferno/4th_edition/limbo_language/), the +language used to write applications for the "Inferno" operating system +(http://doc.cat-v.org/inferno/). See the "Inferno" project's page for +a reference implementation: + + http://code.google.com/p/inferno-os/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR LISP *syntastic-checkers-lisp* + +The following checkers are available for LISP (filetype "lisp"): + + 1. CLISP....................|syntastic-lisp-clisp| + +------------------------------------------------------------------------------ +1. CLISP *syntastic-lisp-clisp* + +Name: clisp +Maintainer: Karl Yngve Lervåg <karl.yngve@lervag.net> + +"CLISP" is an interpreter for LISP programs. See the project's page for +details: + + http://www.clisp.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR LLVM *syntastic-checkers-llvm* + +The following checkers are available for LLVM (filetype "llvm"): + + 1. LLVM.....................|syntastic-llvm-llvm| + +------------------------------------------------------------------------------ +1. LLVM *syntastic-llvm-llvm* + +Name: llvm +Maintainer: Andrew Kelley <superjoe30@gmail.com> + +"LLVM" is the intermediate language for the LLVM compilers (http://llvm.org/). +See the reference manual for details: + + http://llvm.org/docs/LangRef.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR LUA *syntastic-checkers-lua* + +The following checkers are available for Lua (filetype "lua"): + + 1. luac.....................|syntastic-lua-luac| + 2. luacheck.................|syntastic-lua-luacheck| + +------------------------------------------------------------------------------ +1. luac *syntastic-lua-luac* + +Name: luac +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +"luac" is a compiler for Lua. See the tool's manual for details: + + http://www.lua.org/manual/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +"luac" truncates filenames when the full path of the files involved is longer +than a certain fixed amount. Syntastic can't detect this situation, and will +silently ignore error messages with truncated filenames. + +------------------------------------------------------------------------------ +2. luacheck *syntastic-lua-luacheck* + +Name: luacheck +Maintainer: Thiago Bastos <tbastos@tbastos.com> + +"Luacheck" is a tool for static analysis of Lua code. See the project's page +for details: + + https://github.com/mpeterv/luacheck + +In contrast to "luac" (see |syntastic-lua-luac|) which only flags syntax +errors, this checker detects code smells, so you probably want to enable both +when available. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +A sensible set of options for LUA projects might be something like this: > + let g:syntastic_check_on_open = 1 + let g:syntastic_lua_checkers = ["luac", "luacheck"] + let g:syntastic_lua_luacheck_args = "--no-unused-args" +< +============================================================================== +SYNTAX CHECKERS FOR MARKDOWN *syntastic-checkers-markdown* + +The following checkers are available for Markdown (filetype "markdown"): + + 1. Markdown lint tool.......|syntastic-markdown-mdl| + 2. textlint.................|syntastic-markdown-textlint| + +------------------------------------------------------------------------------ +1. Markdown lint tool *syntastic-markdown-mdl* + +Name: mdl +Maintainer: Charles Beynon <etothepiipower@gmail.com> + +"Markdown lint tool" is a style checker for Markdown files. See the project's +page at GitHub for details: + + https://github.com/mivok/markdownlint + +Installation~ + +Install it with: > + gem install mdl +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You can also use the "Node.js"-based "markdownlint-cli" as a checker instead +of "mdl": + + https://github.com/igorshubovych/markdownlint-cli + +To do that, you have to point 'g:syntastic_markdown_mdl_exec' to +"markdownlint", and set 'g:syntastic_markdown_mdl_args' to an empty string (or +to a set of valid "markdownlint-cli" options): > + let g:syntastic_markdown_mdl_exec = "markdownlint" + let g:syntastic_markdown_mdl_args = "" +< +------------------------------------------------------------------------------ +2. textlint *syntastic-markdown-textlint* + +Name: textlint +Maintainer: LCD 47 <lcd047@gmail.com> + +"textlint" is a natural language linter for text, Markdown, and HTML files. +See the project's page for details: + + https://textlint.github.io/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-html-textlint|, |syntastic-text-textlint|. + +============================================================================== +SYNTAX CHECKERS FOR MATLAB *syntastic-checkers-matlab* + +The following checkers are available for MATLAB (filetype "matlab"): + + 1. mlint....................|syntastic-matlab-mlint| + +------------------------------------------------------------------------------ +1. mlint *syntastic-matlab-mlint* + +Name: mlint +Maintainer: Jason Graham <jason@the-graham.com> + +"mlint" is a code checker for MATLAB. The "mlint" binary is distributed with +the "MATLAB" package: + + http://www.mathworks.com/help/matlab/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR MERCURY *syntastic-checkers-mercury* + +The following checkers are available for Mercury (filetype "mercury"): + + 1. mmc......................|syntastic-mercury-mmc| + +------------------------------------------------------------------------------ +1. mmc *syntastic-mercury-mmc* + +Name: mmc +Maintainer: Joshua Rahm <joshuarahm@gmail.com> + +"mmc" is a compiler for Mercury. See Mercury's page for more details: + + http://www.mercurylang.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR NASM *syntastic-checkers-nasm* + +The following checkers are available for NASM (filetype "nasm"): + + 1. nasm.....................|syntastic-nasm-nasm| + +------------------------------------------------------------------------------ +1. nasm *syntastic-nasm-nasm* + +Name: nasm +Maintainer: HĂĽvard Pettersson <haavard.pettersson@gmail.com> + +"NASM" is an assembler and disassembler for the Intel x86 architecture. See +the project's page for details: + + http://www.nasm.us/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR NIX *syntastic-checkers-nix* + +The following checkers are available for Nix (filetype "nix"): + + 1. Nix......................|syntastic-nix-nix| + +------------------------------------------------------------------------------ +1. Nix *syntastic-nix-nix* + +Name: nix +Maintainer: Tim Cuthbertson <tim@gfxmonk.net> + +"Nix" is a checker for language "Nix" using "nix-instantiate". See the +project's page for details: + + http://nixos.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR NROFF *syntastic-checkers-nroff* + +The following checkers are available for nroff (filetype "nroff"): + + 1. Igor.....................|syntastic-nroff-igor| + 2. mandoc...................|syntastic-nroff-mandoc| + +------------------------------------------------------------------------------ +1. Igor *syntastic-nroff-igor* + +Name: igor +Maintainer: LCD 47 <lcd047@gmail.com> + +"Igor" is a proofreader for DocBook SGML, man pages, and text files used by +the FreeBSD project (https://www.freebsd.org/). See the author's presentation +for details: + + http://www.youtube.com/watch?v=sczHqUPygZY + +The latest version can be obtained from Glen Barber's repository: + + http://docscripts.glenbarber.us/tags/igor/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-docbk-igor|, |syntastic-text-igor|. + +------------------------------------------------------------------------------ +2. mandoc *syntastic-nroff-mandoc* + +Name: mandoc +Maintainer: LCD 47 <lcd047@gmail.com> + +See the project's page for details: + + http://mdocml.bsd.lv/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR OBJECTIVE-C *syntastic-checkers-objc* + +The following checkers are available for Objective-C (filetype "objc"): + + 1. GCC......................|syntastic-objc-gcc| + 2. OClint...................|syntastic-objc-oclint| + +------------------------------------------------------------------------------ +1. GCC *syntastic-objc-gcc* + +Name: gcc +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + *'g:syntastic_objc_compiler'* +Type: string +Default: "gcc", or "clang" if GCC is not found +Compiler executable. + + *'g:syntastic_objc_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_objc_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_objc_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_objc_config_file'* +Type: string +Default: ".syntastic_objc_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_objc_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it like this: > + let g:syntastic_objc_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'g:syntastic_objc_no_default_include_dirs'* +Type: boolean +Default: 0 +By default syntastic adds a number of common include directories to the +compilation flags, namely: > + -I. -I.. -Iinclude -Iincludes -I../include -I../includes +< +You can disable this behaviour by setting the above variable to 1. + + *'b:syntastic_objc_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + + *'g:syntastic_objc_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "h"), all checks +are silently skipped. You can force syntastic to check header files by +setting the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_objc_gcc_<option>' variables. The only exception is +'g:syntastic_objc_gcc_exec', which can still be used to override the checker's +executable. + +See also: |syntastic-objcpp-gcc|. + +------------------------------------------------------------------------------ +2. OClint *syntastic-objc-oclint* + +Name: oclint +Maintainer: "UnCO" Lin <undercooled@lavabit.com> + +"OClint" is a static code analysis tool. See the project's page for details: + + http://oclint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_oclint_config_file' +Type: string +Default: ".syntastic_oclint_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +See also: |syntastic-objcpp-oclint|. + +============================================================================== +SYNTAX CHECKERS FOR OBJECTIVE-C++ *syntastic-checkers-objcpp* + +The following checkers are available for Objective-C++ (filetype "objcpp"): + + 1. GCC......................|syntastic-objcpp-gcc| + 2. OClint...................|syntastic-objcpp-oclint| + +------------------------------------------------------------------------------ +1. GCC *syntastic-objcpp-gcc* + +Name: gcc +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + *'g:syntastic_objcpp_compiler'* +Type: string +Default: "gcc", or "clang" if GCC is not found +Compiler executable. + + *'g:syntastic_objcpp_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_objcpp_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_objcpp_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_objcpp_config_file'* +Type: string +Default: ".syntastic_objcpp_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_objcpp_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the above +compilation flags. You can set it like this: > + let g:syntastic_objcpp_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'g:syntastic_objcpp_no_default_include_dirs'* +Type: boolean +Default: 0 +By default syntastic adds a number of common include directories to the +compilation flags, namely: > + -I. -I.. -Iinclude -Iincludes -I../include -I../includes +< +You can disable this behaviour by setting the above variable to 1. + + *'b:syntastic_objcpp_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + + *'g:syntastic_objcpp_check_header'* +Type: boolean +Default: 0 +If the current file is a header (namely if its extension is "h"), all checks +are silently skipped. You can force syntastic to check header files by +setting the above variable to 1. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_objcpp_gcc_<option>' variables. The only exception +is 'g:syntastic_objcpp_gcc_exec', which can still be used to override the +checker's executable. + +See also: |syntastic-objc-gcc|. + +------------------------------------------------------------------------------ +2. OClint *syntastic-objcpp-oclint* + +Name: oclint +Maintainer: "UnCO" Lin <undercooled@lavabit.com> + +"OClint" is a static code analysis tool. See the project's page for details: + + http://oclint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_oclint_config_file' +Type: string +Default: ".syntastic_oclint_config" +File containing compilation flags (such as defines or include directories), +one option per line (cf. |syntastic-config-files|). + +See also: |syntastic-objc-oclint|. + +============================================================================== +SYNTAX CHECKERS FOR OCAML *syntastic-checkers-ocaml* + +The following checkers are available for OCaml (filetype "ocaml"): + + 1. camlp4o..................|syntastic-ocaml-camlp4o| + +------------------------------------------------------------------------------ +1. camlp4o *syntastic-ocaml-camlp4o* + +Name: camlp4o +Maintainer: Tőrők Edwin <edwintorok@gmail.com> + +"ocamlc" is a compiler for Caml. See the project's page for details: + + http://caml.inria.fr/ + +Checker options~ + *'g:syntastic_ocaml_use_ocamlc'* +Type: boolean +Default: 0 +Enable this variable to use "ocamlc". + + *'g:syntastic_ocaml_use_janestreet_core'* +Type: boolean +Default: 0 +It's possible to use "ocamlc" in conjunction with Jane Street's "core". In +order to do that you have to set the above variable. + + *'g:syntastic_ocaml_janestreet_core_dir'* +Type: string +Default: "." +Path to Jane Street's "core". + + *'g:syntastic_ocaml_camlp4r'* +Type: boolean +Default: 0 +By default, .ml and .mli files are checked with the "camlp4o" preprocessor, +.mll with "ocamllex", and .mly with "menhir". If your source code requires +"camlp4r" you can set this variable. + + *'g:syntastic_ocaml_use_ocamlbuild'* +Type: boolean +Default: 0 +Whether to enable typechecking and syntax extensions. This tells syntastic to +run "ocamlbuild <name>.inferred.mli". It writes object files to the "_build" +directory, and possibly rebuilds your "myocamlbuild.ml" plugin. If you are +using syntax extensions / external libraries and have a properly set up +"_tags" (and "myocamlbuild.ml" file), setting this flag should just work. For +best results your current directory should be the project root (same situation +if you want useful output from `:make`). + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_ocaml_camlp4o_<option>' variables. + +Note~ + +You might consider using the checkers packaged with Merlin instead of this +one. They provide type errors and let you use packages outside core: + + https://github.com/the-lambda-church/merlin + +============================================================================== +SYNTAX CHECKERS FOR PERL *syntastic-checkers-perl* + +The following checkers are available for Perl (filetype "perl"): + + 1. perl.....................|syntastic-perl-perl| + 2. Perl::Critic.............|syntastic-perl-perlcritic| + 3. Pod::Checker.............|syntastic-perl-podchecker| + +------------------------------------------------------------------------------ +1. perl *syntastic-perl-perl* + +Name: perl +Maintainers: Anthony Carapetis <anthony.carapetis@gmail.com> + Eric Harmon + +Security~ + +This checker runs "perl -c" against your files, which in turn executes any +"BEGIN", "UNITCHECK", and "CHECK" blocks, and any "use" statements in your +file (cf. http://perldoc.perl.org/perlrun.html#*-c*). This is probably fine if +you wrote the file 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 +file, set 'g:syntastic_enable_perl_checker' to 1 in your vimrc to enable this +checker: > + let g:syntastic_enable_perl_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over it in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add it to 'g:syntastic_perl_checkers' if you plan +to use it. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_perl_interpreter'* +Type: string +Default: "perl" +The perl interpreter to use. + + *'g:syntastic_perl_lib_path'* +Type: list os strings +Default: [] +List of include directories to be added to the perl command line. Example: > + let g:syntastic_perl_lib_path = [ "./lib", "./lib/auto" ] +< +Note~ + +The variable |'g:syntastic_perl_interpreter'| is shared with the YAML::XS +checker (cf. |syntastic-yaml-yamlxs|). If for some reasons you don't want to +use the same interpreter for both checkers, you can override it locally by +setting 'g:syntastic_perl_perl_exec'. + +------------------------------------------------------------------------------ +2. Perl::Critic *syntastic-perl-perlcritic* + +Name: perlcritic +Maintainer: LCD 47 <lcd047@gmail.com> + +"Perl::Critic" is a static analyzer for Perl. See the project's page for +details: + + http://perlcritic.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_perl_perlcritic_thres'* +Type: integer +Default: 5 +Error threshold: policy violations with a severity above this value are +highlighted as errors, the others are warnings. + +Note~ + +You can override the format of "perlcritic" messages, for example: > + let g:syntastic_perl_perlcritic_post_args = + \ '--verbose "\%s:\%f:\%l:\%c: \%p: \%m\n"' +< +Just make sure to leave alone the leading "\%s:\%f:\%l:\%c:". + +------------------------------------------------------------------------------ +3. Pod::Checker *syntastic-perl-podchecker* + +Name: podchecker +Maintainer: LCD 47 <lcd047@gmail.com> + +"Pod::Checker" is a checker for pod documents. See the module's manual for +details: + + http://perldoc.perl.org/Pod/Checker.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-pod-podchecker|. + +============================================================================== +SYNTAX CHECKERS FOR PHP *syntastic-checkers-php* + +The following checkers are available for PHP (filetype "php"): + + 1. PHP......................|syntastic-php-php| + 2. PHP_CodeSniffer..........|syntastic-php-phpcs| + 3. PHPLint..................|syntastic-php-phplint| + 4. PHP Mess Detector........|syntastic-php-phpmd| + +------------------------------------------------------------------------------ +1. PHP *syntastic-php-php* + +Name: php +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. PHP_CodeSniffer *syntastic-php-phpcs* + +Name: phpcs +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"PHP_CodeSniffer" is a style checker for PHP and CSS. See the project's page +at GitHub for details: + + https://github.com/squizlabs/PHP_CodeSniffer/ + +Installation~ + +Install it with: > + pear install PHP_CodeSniffer +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters then "PHP_CodeSniffer"'s +idea of tabstop must match Vim's 'tabstop', otherwise syntastic will highlight +the errors at shifted positions. By default syntastic does that by adding +an option "--tab-width=&tabstop" to "PHP_CodeSniffer", but that option +also instructs "PHP_CodeSniffer" to expand tabs, and some code sniffers +(f.i. "CakePHP", see https://github.com/cakephp/cakephp-codesniffer) insist on +indenting lines with tabs. To work around the resulting mess if you're using +one of these sniffers, set "--tab-width=0" and 'tabstop' to 8: > + let g:syntastic_php_phpcs_args = "--tab-width=0" + set tabstop=8 +< +See also: |syntastic-css-phpcs|. + +------------------------------------------------------------------------------ +3. PHPLint *syntastic-php-phplint* + +Name: phplint +Maintainer: LCD 47 <lcd047@gmail.com> + +"PHPLint" is a style checker for PHP. See the project's page for details: + + http://www.icosaedro.it/phplint/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. PHP Mess Detector *syntastic-php-phpmd* + +Name: phpmd +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"PHP Mess Detector" is a code analyzer for PHP. See the project's page for +details: + + http://phpmd.org + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR POD *syntastic-checkers-pod* + +The following checkers are available for POD (filetype "pod"): + + 1. Pod::Checker.............|syntastic-pod-podchecker| + +------------------------------------------------------------------------------ +1. Pod::Checker *syntastic-pod-podchecker* + +Name: podchecker +Maintainer: LCD 47 <lcd047@gmail.com> + +"Pod::Checker" is a checker for pod documents. See the module's manual for +details: + + http://perldoc.perl.org/Pod/Checker.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-perl-podchecker|. + +============================================================================== +SYNTAX CHECKERS FOR PUG (FORMERLY JADE) *syntastic-checkers-pug* + +The following checkers are available for Pug (formerly Jade; filetype "pug"): + + 1. pug_lint.................|syntastic-pug-pug_lint| + +------------------------------------------------------------------------------ +1. pug_lint *syntastic-pug-pug_lint* + +Name: pug_lint +Maintainer: Ben Parnell <benjaminparnell.94@gmail.com> + +"pug-lint" is a linter and style checker for Pug (formerly known as "Jade"; +http://jade-lang.com/). See the project's page at GitHub for details: + + https://github.com/pugjs/pug-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR PUPPET *syntastic-checkers-puppet* + +The following checkers are available for Puppet (filetype "puppet"): + + 1. puppet...................|syntastic-puppet-puppet| + 2. puppet-lint..............|syntastic-puppet-puppetlint| + +------------------------------------------------------------------------------ +1. puppet *syntastic-puppet-puppet* + +Name: puppet +Maintainer: Eivind Uggedal <eivind@uggedal.com> + +"Puppet" is an automated administrative engine for UNIX systems. See the +project's page for details: + + http://projects.puppetlabs.com/projects/puppet + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. puppet-lint *syntastic-puppet-puppetlint* + +Name: puppetlint +Maintainer: Eivind Uggedal <eivind@uggedal.com> + +"puppet-lint" is a style checker for puppet manifests +(http://projects.puppetlabs.com/projects/puppet). See the project's page for +details: + + http://puppet-lint.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR PYTHON *syntastic-checkers-python* + +The following checkers are available for Python (filetype "python"): + + 1. flake8...................|syntastic-python-flake8| + 2. Frosted..................|syntastic-python-frosted| + 3. mypy.....................|syntastic-python-mypy| + 4. Prospector...............|syntastic-python-prospector| + 5. py3kwarn.................|syntastic-python-py3kwarn| + 6. pycodestyle..............|syntastic-python-pycodestyle| + 7. pydocstyle...............|syntastic-python-pydocstyle| + 8. Pyflakes.................|syntastic-python-pyflakes| + 9. Pylama...................|syntastic-python-pylama| + 10. Pylint..................|syntastic-python-pylint| + 11. python..................|syntastic-python-python| + +------------------------------------------------------------------------------ +1. flake8 *syntastic-python-flake8* + +Name: flake8 +Maintainers: Sylvain Soliman <Sylvain.Soliman+git@gmail.com> + kstep <me@kstep.me> + +"Flake8" is a wrapper around PyFlakes (https://launchpad.net/pyflakes), pep8 +(https://github.com/jcrocholl/pep8), and Ned Batchelder's McCabe script +(http://nedbatchelder.com/blog/200803/python_code_complexity_microtool.html). +See the project's page and the official docs for details: + + https://gitlab.com/pycqa/flake8 + http://flake8.readthedocs.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. Frosted *syntastic-python-frosted* + +Name: frosted +Maintainer: LCD 47 <lcd047@gmail.com> + +"Frosted" is a fork of pyflakes (https://launchpad.net/pyflakes). See the +project's page for details: + + https://github.com/timothycrosley/frosted + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. mypy *syntastic-python-mypy* + +Name: mypy +Maintainer: Russ Hewgill <Russ.Hewgill@gmail.com> + +"mypy" is a static type checker for Python. See the project's page for +details: + + http://www.mypy-lang.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. Prospector *syntastic-python-prospector* + +Name: prospector +Maintainer: LCD 47 <lcd047@gmail.com> + +"Prospector" is a static analysis tool for Python. It brings +together the functionality of other tools such as pylint +(http://www.pylint.org/), pyflakes (https://launchpad.net/pyflakes), +pep8 (https://github.com/jcrocholl/pep8), pydocstyle (formerly +"pep257"; https://github.com/PyCQA/pydocstyle), and McCabe complexity +(http://nedbatchelder.com/blog/200803/python_code_complexity_microtool.html). +See the project's official documentation for details: + + http://prospector.readthedocs.org/en/latest/ + +Syntastic supports "Prospector" versions 0.7 and later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +5. py3kwarn *syntastic-python-py3kwarn* + +Name: py3kwarn +Author: Liam Curry <liam@curry.name> + +"Py3kwarn" is a code checker for Python that detects incompatibilities with +Python 3. See the project's page for details: + + https://github.com/liamcurry/py3kwarn + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +6. pycodestyle *syntastic-python-pycodestyle* + +Name: pycodestyle +Maintainer: LCD 47 <lcd047@gmail.com> + +"pycodestyle" (formerly "pep8") is a style checker for Python, derived from +the conventions in PEP 8 (http://www.python.org/dev/peps/pep-0008/). See the +project's page for details: + + https://github.com/PyCQA/pycodestyle + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +7. pydocstyle *syntastic-python-pydocstyle* + +Name: pydocstyle +Maintainer: LCD 47 <lcd047@gmail.com> + +"pydocstyle" (formerly "pep257") is a docstring style checker +for Python, derived from the conventions established in PEP 257 +(http://www.python.org/dev/peps/pep-0257/). See the project's page for +details: + + https://github.com/PyCQA/pydocstyle + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +8. Pyflakes *syntastic-python-pyflakes* + +Name: pyflakes +Authors: Martin Grenfell <martin.grenfell@gmail.com> + kstep <me@kstep.me> + Parantapa Bhattacharya <parantapa@gmail.com> + +"Pyflakes" is a simple code checker for Python. See the project's page for +more information: + + https://launchpad.net/pyflakes + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +9. Pylama *syntastic-python-pylama* + +Name: pylama +Maintainer: LCD 47 <lcd047@gmail.com> + +"Pylama" is a wrapper around pep8 (https://github.com/jcrocholl/pep8), +pydocstyle (formerly "pep257"; https://github.com/PyCQA/pydocstyle), +Pyflakes (https://launchpad.net/pyflakes), +Pylint (http://www.pylint.org/), and Ned Batchelder's McCabe script +(http://nedbatchelder.com/blog/200803/python_code_complexity_microtool.html). +See the project's page for details: + + https://github.com/klen/pylama + +Note~ + +The Pylint backend requires you to install "pylama_pylint": + + https://github.com/klen/pylama_pylint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +10. Pylint *syntastic-python-pylint* + +Name: pylint +Author: Parantapa Bhattacharya <parantapa@gmail.com> + +"Pylint" is a code checker for Python. See the project's page for details: + + http://www.pylint.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Notes~ + +On OS X you need to set the environment variable "LC_CTYPE" to "UTF-8" +before running Vim: > + LC_CTYPE=en_US.UTF-8 + export LC_CTYPE +< +Several people have expressed interest in showing the old message IDs +along with the error messages. You can override the message format in +'g:syntastic_python_pylint_post_args'. Please note that the new format must +start with "{path}:{line}:{column}:{C}: ", otherwise syntastic will not +recognise any messages. Example: > + let g:syntastic_python_pylint_post_args = + \ '--msg-template="{path}:{line}:{column}:{C}: [{symbol} {msg_id}] {msg}"' +< +------------------------------------------------------------------------------ +11. python *syntastic-python-python* + +Name: python +Maintainer: LCD 47 <lcd047@gmail.com> + +This checker uses Python's builtin "compile()" function for detecting syntax +errors. + +Syntastic requires Python version 2.6 or later. + +Codecs~ + +In Python you have the ability to specify a particular codec at the top of +the file with a special comment that looks something like this: > + # coding: spec +< +Further references: + + https://docs.python.org/reference/lexical_analysis.html#encoding-declarations + +Python will see this comment at import time and use the corresponding codec to +transform the file before using it. The "python" checker has an option +|'g:syntastic_python_python_use_codec'| that will make syntastic aware of such +comments before running compiler checks on the file. + +Please note that transforming a file like this affects line numbers and +column numbers, and syntastic has no way to make the necessary adjustments. +Consequently, errors might appear on surprising lines if you enable this +feature and the transformed file has code on different lines than the raw +file. For this reason the use of these transformations should be limitted +to codecs that preserve line numbers, such as the "spec" codec provided by +"NoseOfYeti": + + https://noseofyeti.readthedocs.org/en/latest/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_python_python_use_codec'* +Type: boolean +Default: 0 +Enables handling of "# coding: spec" comments. + +============================================================================== +SYNTAX CHECKERS FOR QML *syntastic-checkers-qml* + +The following checkers are available for QML (filetype "qml"): + + 1. qmllint..................|syntastic-qml-qmllint| + +------------------------------------------------------------------------------ +1. qmllint *syntastic-qml-qmllint* + +Name: qmllint +Maintainer: Peter Wu <peter@lekensteyn.nl> + +"qmllint" is a QML syntax verifier. It was introduced with Qt 5.4 (cf. +https://www.kdab.com/kdab-contributions-qt-5-4-qmllint/) as part of Qt +Declarative: + + https://code.qt.io/cgit/qt/qtdeclarative.git/tree/tools/qmllint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR R *syntastic-checkers-r* + +The following checkers are available for R (filetype "r"): + + 1. lint.....................|syntastic-r-lint| + 2. lintr....................|syntastic-r-lintr| + 3. svtools..................|syntastic-r-svtools| + +------------------------------------------------------------------------------ +1. lint *syntastic-r-lint* + +Name: lint +Maintainer: LCD 47 <lcd047@gmail.com> + +This is a style checker for R files, using the R package "lint": + + http://cran.r-project.org/web/packages/lint/ + +Checker option~ + + *'g:syntastic_r_lint_styles'* +Type: string +Default: "lint.style" +R list of style tests to apply. + +Set 'g:syntastic_r_lint_styles' to something like this: > + let g:syntastic_r_lint_styles = + \ 'list(spacing.indentation.notabs, spacing.indentation.evenindent)' +< +See "lint"'s manual for possible values: + + http://cran.r-project.org/web/packages/lint/lint.pdf + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_r_lint_<option>' variables. The only exception is +'g:syntastic_r_lint_exec', which can still be used to override the "R" +executable. + +Limitations~ + +The checker uses column numbers only when running into syntax errors. If +you're checking files containing tab characters, then Vim's 'tabstop' must +match R's idea of tabstop, otherwise column numbers will be shifted. At the +time of this writing R's tabstop is hardcoded to 8, so you should probably +add something like this to your vimrc: > + set tabstop=8 +< +The "lint" package will only show at most 5 messages of a kind. At the time of +this writing this is not configurable. + +Beware also that the checker is pretty slow when using the default style +setting of "lint.style". + +------------------------------------------------------------------------------ +2. lintr *syntastic-r-lintr* + +Name: lintr +Maintainer: Jim Hester <james.f.hester@gmail.com> + +"lintr" is a static code analysys tool for R files. See the project's page at +GitHub for details: + + https://github.com/jimhester/lintr + +Security~ + +This checker executes parts of the files it checks. This is probably fine if +you wrote the file 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 +file, set 'g:syntastic_enable_r_lintr_checker' to 1 in your vimrc to enable +this checker: > + let g:syntastic_enable_r_lintr_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over it in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add "lintr" to 'g:syntastic_r_checkers' if you plan +to use it. + +Checker Options~ + *'g:syntastic_r_lintr_linters'* +Type: string +Default: "default_linters" +Which "lintr" linters to apply to your code. + + *'g:syntastic_r_lintr_cache'* +Type: string +Default: "FALSE" +Whether to use the lintr cache. This speeds up linting time, but can introduce +false positives in some cases. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_r_lintr_<option>' variables. The only exception is +'g:syntastic_r_lintr_exec', which can still be used to override the "R" +executable. + +See also: |syntastic-rmd-lintr|. + +------------------------------------------------------------------------------ +3. svtools *syntastic-r-svtools* + +Name: svtools +Maintainer: LCD 47 <lcd047@gmail.com> + +This is a checker for R files, using the R package "svTools": + + http://cran.r-project.org/web/packages/svTools/ + +In turn, this package delegates most of the work to the "checkUsage()" +function in the codetools package: + + http://cran.r-project.org/web/packages/codetools/ + +Security~ + +This checker executes parts of the files it checks. This is probably fine if +you wrote the file 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 +file, set 'g:syntastic_enable_r_svtools_checker' to 1 in your vimrc to enable +this checker: > + let g:syntastic_enable_r_svtools_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over it in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add "svtools" to 'g:syntastic_r_checkers' if you +plan to use it. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_r_svtools_<option>' variables. The only exception is +'g:syntastic_r_svtools_exec', which can still be used to override the "R" +executable. + +Limitations~ + +"svTools" version 0.9-4 (current at the time of this writing) has a number +of problems that prevents it from checking most sources. You might consider +applying this patch as a workaround: + + https://gist.github.com/lcd047/9988687#file-svtools-patch + +At the time of this writing "svTools" doesn't produce meaningful column +numbers (the column numbers are always set to 1). The patch mentioned above +enables "svTools" to produce more useful column numbers, but only for syntax +errors. If you apply the said patch and you're checking files containing +tab characters Vim's 'tabstop' must match "R"'s idea of tabstop, otherwise +column numbers will be shifted. At the time of this writing "R"'s tabstop is +hardcoded to 8, so you should probably add something like this to your vimrc: > + set tabstop=8 +< +============================================================================== +SYNTAX CHECKERS FOR R MARKDOWN *syntastic-checkers-rmd* + +The following checkers are available for R Markdown (filetype "rmd"): + + 1. lintr....................|syntastic-rmd-lintr| + +------------------------------------------------------------------------------ +1. lintr *syntastic-rmd-lintr* + +Name: lintr +Maintainer: Jim Hester <james.f.hester@gmail.com> + +"lintr" is a static code analysys tool for R files. See the project's page at +GitHub for details: + + https://github.com/jimhester/lintr + +Security~ + +This checker executes parts of the files it checks. This is probably fine if +you wrote the file 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 +file, set 'g:syntastic_enable_r_lintr_checker' to 1 in your vimrc to enable +this checker: > + let g:syntastic_enable_r_lintr_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over it in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add "lintr" to 'g:syntastic_rmd_checkers' if you +plan to use it. + +Checker Options~ + 'g:syntastic_r_lintr_linters' +Type: string +Default: "default_linters" +Which "lintr" linters to apply to your code. + + 'g:syntastic_r_lintr_cache' +Type: string +Default: "FALSE" +Whether to use the lintr cache. This speeds up linting time, but can introduce +false positives in some cases. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_rmd_lintr_<option>' variables. The only exception is +'g:syntastic_rmd_lintr_exec', which can still be used to override the "R" +executable. + +See also: |syntastic-r-lintr|. + +============================================================================== +SYNTAX CHECKERS FOR RACKET *syntastic-checkers-racket* + +The following checkers are available for Racket (filetype "racket"): + + 1. code-ayatollah...........|syntastic-racket-code-ayatollah| + 2. racket...................|syntastic-racket-racket| + +------------------------------------------------------------------------------ +1. code-ayatollah *syntastic-racket-code-ayatollah* + +Name: code_ayatollah +Maintainer: LCD 47 <lcd047@gmail.com> + +Installation~ + +Download "code-ayatollah.rkt" (http://tmp.barzilay.org/code-ayatollah.rkt) +and point 'g:syntastic_racket_code_ayatollah_script' to it: > + let g:syntastic_racket_code_ayatollah_script = "/path/to/code-ayatollah.rkt" +< +Of course, you also need "racket" (http://racket-lang.org/). + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. racket *syntastic-racket-racket* + +Name: racket +Maintainer: Steve Bragg <steve@empresseffects.com> + +Security~ + +This checker executes the code in the files it checks: + + https://github.com/scrooloose/syntastic/issues/1773 + +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:syntastic_enable_racket_racket_checker' +to 1 in your vimrc to enable this checker: > + let g:syntastic_enable_racket_racket_checker = 1 +< +There is also a buffer-local version of this variable, that takes precedence +over a global one in the buffers where it is defined. + +Please note that setting this variable doesn't automatically enable the +checker, you still need to add "racket" to 'g:syntastic_racket_checkers' if +you plan to use it. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR RELAX NG *syntastic-checkers-rnc* + +The following checkers are available for Relax NG (filetype "rnc"): + + 1. rnv......................|syntastic-rnc-rnv| + +------------------------------------------------------------------------------ +1. rnv *syntastic-rnc-rnv* + +Name: rnv +Maintainer: Remko Tronçon <remko@el-tramo.be> + +"RNV" is an implementation of Relax NG Compact Syntax validator (cf. +http://relaxng.org/compact-20021121.html). See the project's page for +details: + + http://www.davidashen.net/rnv.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR RESTRUCTUREDTEXT *syntastic-checkers-rst* + +The following checkers are available for reStructuredText (filetype "rst"): + + 1. rst2pseudoxml............|syntastic-rst-rst2pseudoxml| + 2. rstcheck.................|syntastic-rst-rstcheck| + 3. Sphinx...................|syntastic-rst-sphinx| + +------------------------------------------------------------------------------ +1. rst2pseudoxml *syntastic-rst-rst2pseudoxml* + +Name: rst2pseudoxml +Maintainer: James Rowe <jnrowe@gmail.com> + +"rst2pseudoxml" is part of the Python package Docutils: + + http://docutils.sourceforge.net/ + +We use "rst2pseudoxml", as it is ever so marginally faster than the other +"rst2${x}" tools in docutils. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. rstcheck *syntastic-rst-rstcheck* + +Name: rstcheck +Maintainer: Steven Myint <git@stevenmyint.com> + +"rstcheck" is a checker for reStructuredText files. See the project's page at +GitHub for details: + + https://github.com/myint/rstcheck + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. Sphinx *syntastic-rst-sphinx* + +Name: sphinx +Maintainer: Buck Evan <buck@yelp.com> + +"Sphinx" is a checker for documentation files written in the Sphinx dialect +of reStructuredText, using the "pseudoxml" builder of "sphinx-build". See the +project's page for details: + + http://sphinx-doc.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_rst_sphinx_source_dir'* +Type: string +Default: unset +Base directory of the project being checked. + + *'g:syntastic_rst_sphinx_config_dir'* +Type: string +Default: unset +Directory containing the "conf.py" file. + +Notes~ + +The checker needs to know two paths to run: the source directory where the +project's files are located, and the directory where the configuration file +"conf.py" is located. By default it looks for "conf.py" in the base directory +of the current file, then upwards in parent directories. If a configuration +file is found and the file is readable, its base directory is assumed to be +both the source directory and the configuration directory of the project. + +If syntastic can't determine the source directory or the configuration +directory, or if you want to override the autodetected paths, options +|'g:syntastic_rst_sphinx_source_dir'| and |'g:syntastic_rst_sphinx_config_dir'| +take precedence over the detected values. + +Please not also that the checker creates output files in a temporary directory +that is created upon the first run in the current session, and is removed when +Vim exits. If you need to change the location of this directory you can do +so by exporting the environment variables "TMPDIR" or "TMP" (on UNIX and Mac +OS-X), or "TEMP" (on Windows) before running Vim. Various index files are also +cached in this directory, so it might be advantageous to avoid quitting Vim +between checker runs. + +============================================================================== +SYNTAX CHECKERS FOR RPM SPEC *syntastic-checkers-spec* + +The following checkers are available for Linux RPM packages (filetype "spec"): + + 1. rpmlint..................|syntastic-spec-rpmlint| + +------------------------------------------------------------------------------ +1. rpmlint *syntastic-spec-rpmlint* + +Name: rpmlint +Maintainer: LCD 47 <lcd047@gmail.com> + +"rpmlint" is a trool for checking Linux RPM packages. See the project's page +for details: + + http://sourceforge.net/projects/rpmlint/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR RUBY *syntastic-checkers-ruby* + +The following checkers are available for Ruby (filetype "ruby"): + + 1. Flog.....................|syntastic-ruby-flog| + 2. JRuby....................|syntastic-ruby-jruby| + 3. MacRuby..................|syntastic-ruby-macruby| + 4. MRI......................|syntastic-ruby-mri| + 5. reek.....................|syntastic-ruby-reek| + 6. RuboCop..................|syntastic-ruby-rubocop| + 7. Ruby-lint................|syntastic-ruby-rubylint| + +------------------------------------------------------------------------------ +1. Flog *syntastic-ruby-flog* + +Name: flog +Maintainer: Tim Carry <tim@pixelastic.com> + +"Flog" is a complexity checker for Ruby files. See the project's page for +details: + + http://ruby.sadi.st/Flog.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_ruby_flog_threshold_warning'* +Type: number +Default: 45 +Threshold for warnings. Functions with complexity below this number are not +flagged as either errors or warnings. + + *'g:syntastic_ruby_flog_threshold_error'* +Type: number +Default: 90 +Threshold for errors. Functions with complexity above this number are flagged +as errors. + + +Note~ + +"Flog" reports complexity values as floating point numbers. If your Vim is +not compiled with the "+float" feature, both the numbers reported by flog and +the two options above are rounded by syntastic towards zero (that is, "39.9" +is taken as "39"). + +------------------------------------------------------------------------------ +2. JRuby *syntastic-ruby-jruby* + +Name: jruby +Maintainer: Leonid Shevtsov <leonid@shevtsov.me> + +"JRuby" is a Java implementation of the Ruby programming language. See the +project's page for details: + + http://jruby.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. MacRuby *syntastic-ruby-macruby* + +Name: macruby +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"MacRuby" is an implementation of Ruby for Mac OS X. See the project's +pagefor details: + + http://www.macruby.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. MRI *syntastic-ruby-mri* + +Name: mri +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_ruby_exec'* +Type: string +Default: unset +Ruby executable. This is a convenience variable shared with the eRuby checker +"Ruby" (cf. |syntastic-eruby-ruby|). Used only if 'g:syntastic_ruby_mri_exec' +is unset. + +------------------------------------------------------------------------------ +5. Reek *syntastic-ruby-reek* + +Name: reek +Maintainer: Mindaugas Mozūras + +"Reek" is a code smell detection tool for Ruby. See the project's page at +GitHub for details: + + https://github.com/troessner/reek + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +6. RuboCop *syntastic-ruby-rubocop* + +Name: rubocop +Maintainer: Recai Oktaş <roktas@bil.omu.edu.tr> + +"RuboCop" is a style checker for Ruby. See the project's page for details: + + https://github.com/bbatsov/rubocop + +Syntastic requires "RuboCop" version 0.12.0 or later. + +Running "RuboCop" under development versions of "Ruby" is explicitly NOT +supported. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Notes~ + +Most issues returned by "rubocop" are warnings, so for best results your +|'syntastic_quiet_messages'| should not filter out warnings. + +If the "RuboCop" checker is not enabled automatically by syntastic try +running "rubocop --version" from the shell. If it complains about "Parser" +(see https://github.com/whitequark/parser) expecting a different version of +"Ruby" than you are running, your configuration is not directly supported by +syntastic. + +While passing around the blame for this does have a certain entertaining value +(cf. https://github.com/bbatsov/rubocop/issues/1819), the problem is real, +since "Ruby" syntax did change between versions. The solution is to run a +system such as "rbenv" (http://rbenv.org/) or "rvm" (https://rvm.io/), that +allows you to run multiple versions of "Ruby" without conflicts: > + $ rbenv version + 2.1.3 (set by /usr/local/var/rbenv/version) + + $ rubocop --version + warning: parser/current is loading parser/ruby21, which recognizes + warning: 2.1.2-compliant syntax, but you are running 2.1.3. + 0.26.1 + + $ rbenv shell 2.1.2 + + $ rubocop --version + 0.26.1 +< +Alternatively, if you absolutely must do it the wrong way, you can +also install a wrapper script that kills the version warning and point +'g:syntastic_ruby_rubocop_exec' to it: + + https://gist.github.com/lcd047/96138909015f2f8d2d36 + +------------------------------------------------------------------------------ +7. Ruby-lint *syntastic-ruby-rubylint* + +Name: rubylint +Maintainer: Yorick Peterse <yorickpeterse@gmail.com> + +"Ruby-lint" is a linter and static code analysis tool for Ruby. See the +project's page for details: + + https://github.com/YorickPeterse/ruby-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If the "rubylint" checker is not enabled automatically by syntastic, try +running "ruby-lint --version" from the shell. If it complains about "Parser" +(see https://github.com/whitequark/parser) expecting a different version of +"Ruby" than you are running, your configuration is not directly supported by +syntastic. + +While passing around the blame for this does have a certain entertaining value +(cf. https://github.com/bbatsov/rubocop/issues/1819), the problem is real, +since "Ruby" syntax did change between versions. The solution is to run a +system such as "rbenv" (http://rbenv.org/) or "rvm" (https://rvm.io/), that +allows you to run multiple versions of "Ruby" without conflicts: > + $ rbenv version + 2.1.3 (set by /usr/local/var/rbenv/version) + + $ ruby-lint --version + warning: parser/current is loading parser/ruby21, which recognizes + warning: 2.1.2-compliant syntax, but you are running 2.1.3. + ruby-lint v2.0.4 on ruby 2.1.3 [i486-linux] + + $ rbenv shell 2.1.2 + + $ ruby-lint --version + ruby-lint v2.0.4 on ruby 2.1.2 [i486-linux] +< +Alternatively, if you absolutely must do it the wrong way, you can +also install a wrapper script that kills the version warning and point +'g:syntastic_ruby_rubylint_exec' to it: + + https://gist.github.com/lcd047/492245d9923af45fb964 + +============================================================================== +SYNTAX CHECKERS FOR SASS *syntastic-checkers-sass* + +The following checkers are available for SASS (filetype "sass"): + + 1. Sass.....................|syntastic-sass-sass| + 2. Sass Lint................|syntastic-sass-sass_lint| + 3. SassC....................|syntastic-sass-sassc| + +------------------------------------------------------------------------------ +1. Sass *syntastic-sass-sass* + +Name: sass +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Sass" is a translator for SASS. See the project's page for details: + + http://sass-lang.com/ + +Installation~ + +Install it with "gem": > + gem install sass +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-scss-sass|. + +------------------------------------------------------------------------------ +2. Sass Lint *syntastic-sass-sass_lint* + +Name: sass_lint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Sass Lint" is a checker for SASS and SCSS files. See the project's page for +details: + + https://github.com/sasstools/sass-lint + +Syntastic requires "Sass Lint" version 1.5.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-scss-sass_lint|. + +------------------------------------------------------------------------------ +3. SassC *syntastic-sass-sassc* + +Name: sassc +Maintainer: LCD 47 <lcd047@gmail.com> + +"SassC" is a checker for SASS and SCSS files, based on the "libsass" library +(https://github.com/hcatlin/libsass). See the project's page for details: + + https://github.com/hcatlin/sassc + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-scss-sassc|. + +============================================================================== +SYNTAX CHECKERS FOR SCALA *syntastic-checkers-scala* + +The following checkers are available for Scala (filetype "scala"): + + 1. fsc......................|syntastic-scala-fsc| + 2. scalac...................|syntastic-scala-scalac| + 3. Scalastyle...............|syntastic-scala-scalastyle| + +------------------------------------------------------------------------------ +1. fsc *syntastic-scala-fsc* + +Name: fsc +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. scalac *syntastic-scala-scalac* + +Name: scalac +Maintainer: Rickey Visinski <rickeyvisinski@gmail.com> + +"scalac" is a compiler for Scala. See the project's page for more information: + + http://docs.scala-lang.org + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. Scalastyle *syntastic-scala-scalastyle* + +Name: scalastyle +Maintainer: LCD 47 <lcd047@gmail.com> + +"Scalastyle" is a style checker for Scala. See the project's page for +details: + + http://www.scalastyle.org/ + +Syntastic uses the command line version of "Scalastyle": + + http://www.scalastyle.org/command-line.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_scala_scalastyle_jar'* +Type: string +Default: "scalastyle-batch_2.10.jar" +Path to the "scalastyle-batch" jar file. You might want to set this to a full +path. + + *'g:syntastic_scala_scalastyle_config_file'* +Type: string +Default: "scalastyle_config.xml" +Path to the configuration file to use. You might want to also set this to a +full path. + +============================================================================== +SYNTAX CHECKERS FOR SCSS *syntastic-checkers-scss* + +The following checkers are available for SCSS (filetype "scss"): + + 1. mixedindentlint..........|syntastic-scss-mixedindentlint| + 2. Sass.....................|syntastic-scss-sass| + 3. Sass Lint................|syntastic-scss-sass_lint| + 4. SassC....................|syntastic-scss-sassc| + 5. SCSS-lint................|syntastic-scss-scss_lint| + 6. stylelint................|syntastic-scss-stylelint| + +------------------------------------------------------------------------------ +1. mixedindentlint *syntastic-scss-mixedindentlint* + +Name: mixedindentlint +Maintainer: Payton Swick <payton@foolord.com> + +"mixedindentlint" is a general-purpose indentation checker. See the project's +page at GitHub for more information: + + https://github.com/sirbrillig/mixedindentlint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-css-mixedindentlint|, |syntastic-javascript-mixedindentlint|. + +------------------------------------------------------------------------------ +2. Sass *syntastic-scss-sass* + +Name: sass +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Sass" is a translator for SASS. See the project's page for details: + + http://sass-lang.com/ + +Installation~ + +Install it with "gem": > + gem install sass +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-sass-sass|. + +------------------------------------------------------------------------------ +3. Sass Lint *syntastic-scss-sass_lint* + +Name: sass_lint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Sass Lint" is a checker for SASS and SCSS files. See the project's page for +details: + + https://github.com/sasstools/sass-lint + +Syntastic requires "Sass Lint" version 1.5.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-sass-sass_lint|. + +------------------------------------------------------------------------------ +4. SassC *syntastic-scss-sassc* + +Name: sassc +Maintainer: LCD 47 <lcd047@gmail.com> + + +"SassC" is a checker for SASS and SCSS files, based on the "libsass" library +(https://github.com/hcatlin/libsass). See the project's page for details: + + https://github.com/hcatlin/sassc + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-sass-sassc|. + +------------------------------------------------------------------------------ +5. SCSS-lint *syntastic-scss-scss_lint* + +Name: scss_lint +Maintainer: Shane da Silva <shane@dasilva.io> + +"SCSS-Lint" is a lint tool for SCSS. See the project's page for details: + + https://github.com/brigade/scss-lint + +Syntastic requires "SCSS-Lint" version 0.29.0 or later. + +Installation~ + +Install it with "gem": > + gem install scss_lint +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +6. stylelint *syntastic-scss-stylelint* + +Name: stylelint +Maintainer: Tim Carry <tim@pixelastic.com> + +"stylelint" is a style checker for Cascading Stylesheets. See the project's +page for more information: + + http://stylelint.io/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-css-stylelint|. + +============================================================================== +SYNTAX CHECKERS FOR SH *syntastic-checkers-sh* + +The following checkers are available for Sh (filetype "sh"): + + 1. Bashate..................|syntastic-sh-bashate| + 2. checkbashisms............|syntastic-sh-checkbashisms| + 3. sh.......................|syntastic-sh-sh| + 4. ShellCheck...............|syntastic-sh-shellcheck| + +------------------------------------------------------------------------------ +1. Bashate *syntastic-sh-bashate* + +Name: bashate +Maintainer: aswna + +"Bashate" is a style checker for bash scripts used by the OpenStack +(http://www.openstack.org/). See the project's page at GitHub for details: + + https://github.com/openstack-dev/bashate + +Installation~ + +Install it with "pip": > + pip install bashate +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. checkbashisms *syntastic-sh-checkbashisms* + +Name: checkbashisms +Maintainer: LCD 47 <lcd047@gmail.com> + +"checkbashisms" is part of the Linux "devscripts" package. It can be obtained +from the Debian source archive: + + http://packages.qa.debian.org/d/devscripts.html + +For FreeBSD and OpenBSD you can also install the "devel/checkbashisms" port. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +3. sh *syntastic-sh-sh* + +Name: sh +Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. ShellCheck *syntastic-sh-shellcheck* + +Name: shellcheck +Maintainer: LCD 47 <lcd047@gmail.com> + +"ShellCheck" is a static analysis tool for Bourne shell scripts. See the +project's page for details: + + http://www.shellcheck.net/about.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR SLIM *syntastic-checkers-slim* + +The following checkers are available for Slim (filetype "slim"): + + 1. Slim-Lint................|syntastic-slim-slim_lint| + 2. Slimrb...................|syntastic-slim-slimrb| + +------------------------------------------------------------------------------ +1. Slim-Lint *syntastic-slim-slim_lint* + +Name: slim_lint +Maintainer: Vasily Kolesnikov <re.vkolesnikov@gmail.com> + +"Slim-Lint" is a style checker for Slim files (http://slim-lang.com/). See +the project's page at GitHub for details: + + https://github.com/sds/slim-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Installation~ + +You can install "Slim-Lint" with "gem": > + gem install slim_lint +< +------------------------------------------------------------------------------ +2. Slimrb *syntastic-slim-slimrb* + +Name: slimrb +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"Slimrb" is a processor for the template language Slim +(http://slim-lang.com/). See the project's page for details: + + https://github.com/slim-template/slim + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR SML *syntastic-checkers-sml* + +The following checkers are available for SML (filetype "sml"): + + 1. smlnj....................|syntastic-sml-smlnj| + +------------------------------------------------------------------------------ +1. smlnj *syntastic-sml-smlnj* + +Name: smlnj +Maintainer: LCD 47 <lcd047@gmail.com> + +"smlnj" is a compiler for Standard ML '97. See the project's page for details: + + http://www.smlnj.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR SQL *syntastic-checkers-sql* + +The following checkers are available for SQL (filetype "sql"): + + 1. sqlint...................|syntastic-sql-sqlint| + +------------------------------------------------------------------------------ +1. sqlint *syntastic-sql-sqlint* + +Name: sqlint +Maintainer: Steve Purcell <steve@sanityinc.com> + +"sqlint" is a lint checker for ANSI SQL. See the project's page at GitHub for +details: + + https://github.com/purcell/sqlint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR STYLUS *syntastic-checkers-stylus* + +The following checkers are available for Stylus (filetype "stylus"): + + 1. Stylint..................|syntastic-stylus-stylint| + +------------------------------------------------------------------------------ +1. Stylint *syntastic-stylus-stylint* + +Name: stylint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Stylint" is a linter for Stylus (http://learnboost.github.io/stylus). See +the project's page at GitHub for details: + + https://github.com/rossPatton/stylint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You might also find useful the "vim-stylus" plugin: + + https://github.com/wavded/vim-stylus + +============================================================================== +SYNTAX CHECKERS FOR TCL *syntastic-checkers-tcl* + +The following checkers are available for Tcl (filetype "tcl"): + + 1. nagelfar.................|syntastic-tcl-nagelfar| + +------------------------------------------------------------------------------ +1. nagelfar *syntastic-tcl-nagelfar* + +Name: nagelfar +Maintainer: James Pickard <james.pickard@gmail.com> + +"Nagelfar" is a syntax checker for Tcl. See the project's page for details: + + http://nagelfar.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR TEX *syntastic-checkers-tex* + +The following checkers are available for TeX (filetype "tex"): + + 1. ChkTeX...................|syntastic-tex-chktex| + 2. lacheck..................|syntastic-tex-lacheck| + +------------------------------------------------------------------------------ +1. ChkTeX *syntastic-tex-chktex* + +Name: chktex +Maintainer: LCD 47 <lcd047@gmail.com> + +"ChkTeX" is a checker for TeX and LaTeX. See the project's page for details: + + http://baruch.ev-en.org/proj/chktex/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_tex_chktex_showmsgs'* +Type: boolean +Default: 1 +Whether to show informational messages ("chktex" option "-m"). By default +informational messages are shown as warnings. + +------------------------------------------------------------------------------ +2. lacheck *syntastic-tex-lacheck* + +Name: lacheck +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"lacheck" is a style checker for LaTeX documents. See the project's page for +details: + + http://www.ctan.org/tex-archive/support/lacheck + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Limitations~ + +At the time of this writing "lacheck" can't expand "\def" commands. As a +result, most "\input" commands using macros are signaled as errors. + +============================================================================== +SYNTAX CHECKERS FOR TEXINFO *syntastic-checkers-texinfo* + +The following checkers are available for Texinfo (filetype "texinfo"): + + 1. Makeinfo.................|syntastic-texinfo-makeinfo| + +------------------------------------------------------------------------------ +1. Makeinfo *syntastic-texinfo-makeinfo* + +Name: makeinfo +Maintainer: LCD 47 <lcd047@gmail.com> + +"Makeinfo" is a convertor for Texinfo files. It is distributed together with +the GNU package "texinfo": + + http://www.gnu.org/software/texinfo/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR TEXT *syntastic-checkers-text* + +The following checkers are available for plain text (filetype "text"): + + 1. atdtool..................|syntastic-text-atdtool| + 2. Igor.....................|syntastic-text-igor| + 3. language-check...........|syntastic-text-language_check| + 4. textlint.................|syntastic-text-textlint| + +------------------------------------------------------------------------------ +1. atdtool *syntastic-text-atdtool* + +Name: atdtool +Maintainer: LCD 47 <lcd047@gmail.com> + +"atdtool" is a script that runs a text file through the "After the Deadline" +language service (http://www.afterthedeadline.com/) and returns a list of +spelling, style, and grammar errors. See the project's page for details: + + https://github.com/lpenz/atdtool + +See also the list of features of "After the Deadline": + + http://www.afterthedeadline.com/features.slp + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. Igor *syntastic-text-igor* + +Name: igor +Maintainer: LCD 47 <lcd047@gmail.com> + +"Igor" is a proofreader for DocBook SGML, man pages, and text files used by +the FreeBSD (https://www.freebsd.org/). See the author's presentation for +details: + + http://www.youtube.com/watch?v=sczHqUPygZY + +The latest version can be obtained from Glen Barber's repository: + + http://docscripts.glenbarber.us/tags/igor/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-docbk-igor|, |syntastic-nroff-igor|. + +------------------------------------------------------------------------------ +3. language-check *syntastic-text-language_check* + +Name: language_check +Maintainer: Steven Myint <git@stevenmyint.com> + +"language-check" is a wrapper for the LanguageTool grammar checker +(https://www.languagetool.org/). See the project's page for details: + + https://github.com/myint/language-check + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +4. textlint *syntastic-text-textlint* + +Name: textlint +Maintainer: LCD 47 <lcd047@gmail.com> + +"textlint" is a natural language linter for text, Markdown, and HTML files. +See the project's page for details: + + https://textlint.github.io/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-html-textlint|, |syntastic-markdown-textlint|. + +============================================================================== +SYNTAX CHECKERS FOR TRIG *syntastic-checkers-trig* + +The following checkers are available for TriG (filetype "trig"): + + 1. rapper...................|syntastic-trig-rapper| + +------------------------------------------------------------------------------ +1. rapper *syntastic-trig-rapper* + +Name: rapper +Maintainer: Sebastian Tramp <mail@sebastian.tramp.name> + +"rapper" is an RDF parsing and serializing utility. See the project's page for +details: + + http://librdf.org/raptor/rapper.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for TriG files, such as +"Vim-RDF": + + https://github.com/niklasl/vim-rdf + +See also: |syntastic-turtle-rapper|. + +============================================================================== +SYNTAX CHECKERS FOR TURTLE *syntastic-checkers-turtle* + +The following checkers are available for Turtle (filetype "turtle"): + + 1. rapper...................|syntastic-turtle-rapper| + 2. ttl......................|syntastic-turtle-ttl| + +------------------------------------------------------------------------------ +1. rapper *syntastic-turtle-rapper* + +Name: rapper +Maintainer: Sebastian Tramp <mail@sebastian.tramp.name> + +"rapper" is an RDF parsing and serializing utility. See the project's page +for details: + + http://librdf.org/raptor/rapper.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for Turtle files, such as +"Vim-RDF": + + https://github.com/niklasl/vim-rdf + +See also: |syntastic-trig-rapper|. + +------------------------------------------------------------------------------ +2. ttl *syntastic-turtle-ttl* + +Name: ttl +Maintainer: Antoine Reilles <tonio@NetBSD.org> + +"ttl" is an RDF validator. See the project's page at GitHub for details: + + https://github.com/mmlab/TurtleValidator + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for Turtle files, such as +"Vim-RDF": + + https://github.com/niklasl/vim-rdf + +============================================================================== +SYNTAX CHECKERS FOR TWIG *syntastic-checkers-twig* + +The following checkers are available for Twig (filetype "twig"): + + 1. twig-lint................|syntastic-twig-twiglint| + +------------------------------------------------------------------------------ +1. twig-lint *syntastic-twig-twiglint* + +Name: twiglint +Maintainer: Alexander <iam.asm89@gmail.com> + +"twig-lint" is a lint tool for Twig templates. See the project's page at +GitHub for details: + + https://github.com/asm89/twig-lint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Notes~ + +For the standalone executable, add the following to your vimrc file: > + let g:syntastic_twig_twiglint_exec = "php" + let g:syntastic_twig_twiglint_exe = "php /path/to/twig-lint.phar" +< +For the "Composer" (https://getcomposer.org/) dependency "twig-lint" must be +in your "$PATH". No further configuration is needed. + +============================================================================== +SYNTAX CHECKERS FOR TYPESCRIPT *syntastic-checkers-typescript* + +The following checkers are available for TypeScript (filetype "typescript"): + + 1. ESLint...................|syntastic-typescript-eslint| + 2. tsc......................|syntastic-typescript-tsc| + 3. TSLint...................|syntastic-typescript-tslint| + +------------------------------------------------------------------------------ +1. ESLint *syntastic-typescript-eslint* + +Name: eslint +Maintainer: LCD 47 <lcd047@gmail.com> + +"ESLint" is a tool for identifying and reporting on patterns found +in ECMAScript/JavaScript code. With the "babel-eslint" plugin +(https://github.com/babel/babel-eslint) "ESLint" can also can also be +used to check TypeScript files. See the project's page for details: + + https://github.com/nzakas/eslint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for TypeScript files, such +as "typescript-vim": + + https://github.com/leafgarland/typescript-vim + +See also: |syntastic-html-eslint|, |syntastic-javascript-eslint|. + +------------------------------------------------------------------------------ +2. tsc *syntastic-typescript-tsc* + +Name: tsc +Maintainer: Bill Casarin <bill@casarin.ca> + +"tsc" is a compiler for TypeScript. See the project's page for details: + + http://www.typescriptlang.org/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for TypeScript files, such +as "typescript-vim": + + https://github.com/leafgarland/typescript-vim + +------------------------------------------------------------------------------ +3. TSLint *syntastic-typescript-tslint* + +Name: tslint +Maintainer: Seon-Wook Park <seon.wook@swook.net> + +"TSLint" is a lint checker for TypeScript. See the project's page for +details: + + https://github.com/palantir/tslint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for TypeScript files, such +as "typescript-vim": + + https://github.com/leafgarland/typescript-vim + +============================================================================== +SYNTAX CHECKERS FOR VALA *syntastic-checkers-vala* + +The following checkers are available for Vala (filetype "vala"): + + 1. Valac....................|syntastic-vala-valac| + +------------------------------------------------------------------------------ +1. Valac *syntastic-vala-valac* + +Name: valac +Maintainer: Konstantin Stepanov (me@kstep.me) + +"valac" is a compiler for Vala. See the project's page for details: + + https://wiki.gnome.org/Projects/Vala + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_vala_modules'* +Type: string or array of strings +Default: unset +Space-separated list of Vala modules to be passed as "--pkg" arguments. + + *'g:syntastic_vala_vapi_dirs'* +Type: string or array of strings +Default: unset +Space-separated list of "vapi" directories to be passed as "--vapidirs" +arguments. + +Notes~ + +If |'g:syntastic_vala_modules'| is unset, you can also specify a list of +module to load for the current file by adding a special comment starting with +"// modules: " and containing a space-delimited list of names. + +If |'g:syntastic_vala_vapi_dirs'| is unset, you can also specify a list of +"vapi" directories for the current file by adding a special comment starting +with "// vapidirs:" and containing a space-delimited list of names. + +============================================================================== +SYNTAX CHECKERS FOR VERILOG *syntastic-checkers-verilog* + +The following checkers are available for Verilog (filetype "verilog"): + + 1. Icarus Verilog...........|syntastic-verilog-iverilog| + 2. Verilator................|syntastic-verilog-verilator| + +------------------------------------------------------------------------------ +1. Icarus Verilog *syntastic-verilog-iverilog* + +Name: iverilog +Maintainer: Psidium <psiidium@gmail.com> + +"Icarus Verilog" is a Verilog simulation and synthesis tool. See the +project's page for details: + + http://iverilog.icarus.com/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. Verilator *syntastic-verilog-verilator* + +Name: verilator +Maintainer: Kocha <kocha.lsifrontend@gmail.com> + +Checker options~ + + *'g:syntastic_verilog_compiler'* +Type: string +Default: "verilator" +Compiler executable. + + *'g:syntastic_verilog_errorformat'* +Type: string +Default: unset +Override for the default |'errorformat'|. + + *'g:syntastic_verilog_remove_include_errors'* +Type: boolean +Default: 0 +By default, errors in files included from the file being checked are shown. +Set this variable to 1 to remove messages about errors in included files. +Please note that this means syntastic will silently abort checks if there are +fatal errors in one of the included files. + + *'g:syntastic_verilog_compiler_options'* +Type: string +Default: unset +Compilation flags (such as defines or include directories) to be passed to the +checker. + + *'g:syntastic_verilog_config_file'* +Type: string +Default: ".syntastic_verilog_config" +File containing additional compilation flags to be passed to the checker, one +option per line (cf. |syntastic-config-files|). + + *'g:syntastic_verilog_include_dirs'* +Type: array of strings +Default: [] +Include directories to be passed to the checker, in addition to the +above compilation flags. You can set it like this: > + let g:syntastic_verilog_include_dirs = ["includes", "headers"] +< +and the corresponding "-Iincludes -Iheaders" will be added to the compilation +flags. + + *'b:syntastic_verilog_cflags'* +Type: string +Default: unset +Buffer-local variable. Additional compilation flags specific to the current +buffer. + +Note~ + +This checker doesn't call the "makeprgBuild()" function, and thus it ignores +the usual 'g:syntastic_verilog_verilator_<option>' variables. The only +exception is 'g:syntastic_verilog_verilator_exec', which can still be used to +override the checker's executable. + +============================================================================== +SYNTAX CHECKERS FOR VHDL *syntastic-checkers-vhdl* + +The following checkers are available for VHDL (filetype "vhdl"): + + 1. GHDL.....................|syntastic-vhdl-ghdl| + 2. vcom.....................|syntastic-vhdl-vcom| + +------------------------------------------------------------------------------ +1. GHDL *syntastic-vhdl-ghdl* + +Name: ghdl +Maintainer: Jan Wagner <jaydyou@janidom.de> + +"GHDL" is a VHDL simulator. See the project's page for details: + + http://gna.org/projects/ghdl/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. vcom *syntastic-vhdl-vcom* + +Name: vcom +Maintainer: Jim Vogel <jim.e.vogel@gmail.com> + +"vcom" is compiler for VHDL files distributed with the "ModelSim" HDL +simulation environment: + + https://www.mentor.com/products/fpga/model/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR VIML *syntastic-checkers-vim* + +The following checkers are available for VimL (filetype "vim"): + + 1. Vimlint..................|syntastic-vim-vimlint| + 2. Vint.....................|syntastic-vim-vint| + +------------------------------------------------------------------------------ +1. Vimlint *syntastic-vim-vimlint* + +Name: vimlint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Vimlint" is a lint checker for VimL written in pure VimL, based on Yukihiro +Nakadaira's "vimlparser" (https://github.com/ynkdir/vim-vimlparser/). See the +project's page for details: + + https://github.com/syngan/vim-vimlint/ + +Installation~ + +You need to install the Vim plugins "vim-vimlint" and "vim-vimlparser" +mentioned above. + +Checker Options~ + + *'g:syntastic_vimlint_options'* +Type: dictionary +Default: |EVL102|, |EVL103|, |EVL104|, |EVL105|, |EVL106|, |EVL201|, |EVL204|, and |EVL205| + are warnings. +Dictionary of "Vimlint" options, with the same syntax as |g:vimlint#config|. +See |g:vimlint#config| and |vimlint-errorcode| for more details. + +"Vimlint" does not call the "makeprgBuild()" function, and thus ignores the +usual 'g:syntastic_vim_vimlint_<option>' variables. + +Note~ + +The values of |'g:syntastic_vimlint_options'| useful for syntastic are those +that ignore or change the severity of some "EVLxxx" messages. For example +to ignore warnings about unused arguments: > + let g:syntastic_vimlint_options = { "EVL103": 1 } +< +Limitation~ + +Certain error messages can't be turned off by |'g:syntastic_vimlint_options'|. +This is a misfeature of "Vimlint" rather than a limitation of syntastic. You +can still ignore these messages using the standard mechanism of +|'syntastic_quiet_messages'|: > + let g:syntastic_vim_vimlint_quiet_messages = { "regex": '\v\[EVL%(105|205)\]' } +< +At the time of this writing the messages that can't be turned off by setting +|'g:syntastic_vimlint_options'| are: + + |EVL105| - global variable defined without 'g:' + |EVL202| - missing call + |EVL203| - parse error in command + |EVL205| - missing 'scriptencoding' + |EVL901| - unknown type + |EVL902| - assert error. + +------------------------------------------------------------------------------ +2. Vint *syntastic-vim-vint* + +Name: vint +Maintainer: LCD 47 <lcd047@gmail.com> + +"Vint" is a lint checker for VimL. See the project's page at GitHub for +details: + + https://github.com/Kuniwak/vint + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR XHTML *syntastic-checkers-xhtml* + +The following checkers are available for xHTML (filetype "xhtml"): + + 1. HTML Tidy................|syntastic-xhtml-tidy| + 2. jshint...................|syntastic-xhtml-jshint| + +------------------------------------------------------------------------------ +1. HTML tidy *syntastic-xhtml-tidy* + +Name: tidy +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"HTML Tidy" is a syntax checker and formatter for HTML. See the HTML Tidy +Library Project for more information: + + http://tidy.sourceforge.net/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + *'g:syntastic_xhtml_tidy_ignore_errors'* +Type: array of strings +Default: [] +List of errors to ignore. Case-sensitive patterns matched as substrings +(not regular expressions) against the error messages. See also +|'syntastic_quiet_messages'|. + +See also: |syntastic-html-tidy|. + +------------------------------------------------------------------------------ +2. jshint *syntastic-xhtml-jshint* + +Name: JSHint +Maintainer: LCD 47 <lcd047@gmail.com> + +"JSHint" can detect JavaScript errors and potential problems in HTML +files. See the project's page for details: + + http://jshint.com/ + +Syntastic requires "JSHint" version 2.4.0 or later. + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +If you're checking files containing tab characters then "JSHint"'s idea of +tabstop must match Vim's 'tabstop', otherwise syntastic will highlight the +errors at shifted positions. By default "JSHint"'s tabstop is 4, while Vim's +default 'tabstop' is 8. + +In order to change "JSHint"'s tabstop you have to change its "indent" config +option (cf. http://jshint.com/docs/options/#indent). One way to do that is +to put it in a file named ".jshintrc" in the current directory, the parent +directories, or your home directory. The file is supposed to be in JSON +format. For example: > + { + "indent": 8 + } +< +See JSHint documentation for more details: + + http://jshint.com/docs/ + +Please note however that setting "indent" also triggers the indentation checks +in "JSHint". If that is undesirable, your only other option is to leave +"JSHint"'s tabstop alone, and change Vim's 'tabstop' to 4. To change Vim's +'tabstop', you can add this to your vimrc: > + set tabstop=4 +< +See also: |syntastic-html-jshint|, |syntastic-javascript-jshint|. + +============================================================================== +SYNTAX CHECKERS FOR XML *syntastic-checkers-xml* + +The following checkers are available for XML (filetype "xml"): + + 1. plutil...................|syntastic-xml-plutil| + 2. xmllint..................|syntastic-xml-xmllint| + +------------------------------------------------------------------------------ +1. plutil *syntastic-xml-plutil* + +Name: plutil +Maintainer: LCD 47 <lcd047@gmail.com> + +"plutil" is a checker for OS X and iOS property list files. See the "plist(5)" +and "plutil(1)" manual pages for details: + + https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man5/plist.5.html + https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/plutil.1.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. xmllint *syntastic-xml-xmllint* + +Name: xmllint +Maintainer: Sebastian Kusnier <sebastian@kusnier.net> + +"xmllint" is a checker and transformer tool for XML files, distributed with +the "libxml" package (http://www.xmlsoft.org/). See the tool's manual for more +information: + + http://xmlsoft.org/xmllint.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You can use a local installation of DTDs to significantly speed up validation +and allow you to validate XML data without network access. See the +"xmlcatalog" manual, and the catalog documentation for more information: + + http://www.xmlsoft.org/xmlcatalog_man.html + http://www.xmlsoft.org/catalog.html + +For an example of a DTD catalog see f.i. "XMLCatalog": + + https://github.com/darcyparker/XMLCatalog + +In order to use it with syntastic you'll have to clone it to a local +directory, and point the environment variable "XML_CATALOG_FILES" to the file +"catalog.xml" in the said directory: > + XML_CATALOG_FILES=/some/path/XMLCatalog/catalog.xml + export XML_CATALOG_FILES +< +Otherwise "xmllint" will try to load XML catalogs from "/etc/xml/catalog". + +See also: |syntastic-docbk-xmllint|, |syntastic-xslt-xmllint|. + +============================================================================== +SYNTAX CHECKERS FOR XQUERY *syntastic-checkers-xquery* + +The following checkers are available for XQuery (filetype "xquery"): + + 1. BaseX....................|syntastic-xquery-basex| + +------------------------------------------------------------------------------ +1. BaseX *syntastic-xquery-basex* + +Name: basex +Maintainer: James Wright <james.jw@hotmail.com> + +"BaseX" is an XML database engine and XPath`/`XQuery processor. See the +project's page for details: + + http://basex.org/ + +Installation~ + +1. Install "BaseX" +2. Add the "basex/bin" folder to your "$PATH". + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR XSLT *syntastic-checkers-xslt* + +The following checkers are available for XSLT (filetype "xslt"): + + 1. xmllint..................|syntastic-xslt-xmllint| + +------------------------------------------------------------------------------ +1. xmllint *syntastic-xslt-xmllint* + +Name: xmllint +Maintainer: Sebastian Kusnier <sebastian@kusnier.net> + +"xmllint" is a checker and transformer tool for XML files, distributed with +the "libxml" package (http://www.xmlsoft.org/). See the tool's manual for more +information: + + http://xmlsoft.org/xmllint.html + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +See also: |syntastic-docbk-xmllint|, |syntastic-xml-xmllint|. + +============================================================================== +SYNTAX CHECKERS FOR YACC *syntastic-checkers-yacc* + +The following checkers are available for YACC (filetype "yacc"): + + 1. Bison....................|syntastic-yacc-bison| + +------------------------------------------------------------------------------ +1. Bison *syntastic-yacc-bison* + +Name: bison +Maintainer: LCD 47 <lcd047@gmail.com> + +"Bison" is the GNU implementation of the standard UNIX parser generator +"yacc" (http://en.wikipedia.org/wiki/Yacc). See the project's page for more +information: + + http://www.gnu.org/software/bison/ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR YAML *syntastic-checkers-yaml* + +The following checkers are available for YAML (filetype "yaml"): + + 1. JavaScript YAML..........|syntastic-yaml-jsyaml| + 2. yamllint.................|syntastic-yaml-yamllint| + 3. YAML::XS.................|syntastic-yaml-yamlxs| + +------------------------------------------------------------------------------ +1. JavaScript YAML *syntastic-yaml-jsyaml* + +Name: jsyaml +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +"JavaScript YAML" is a parser for YAML. See the project's page at GitHub for +details: + + https://github.com/nodeca/js-yaml + +Installation~ + +Install it with "npm": > + npm install -g js-yaml +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +------------------------------------------------------------------------------ +2. yamllint *syntastic-yaml-yamllint* + +Name: yamllint +Maintainer: Adrien VergĂŠ + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +"yamllint" is a linter and style checker for YAML. +See the project's page at GitHub for details: + + https://github.com/adrienverge/yamllint + +Installation~ + +Install it with "pip": > + pip install yamllint +< +------------------------------------------------------------------------------ +3. YAML::XS *syntastic-yaml-yamlxs* + +Name: yamlxs +Maintainer: LCD 47 <lcd047@gmail.com> + +This is a syntax checker for YAML 1.1 using the Perl module "YAML::XS": + + https://metacpan.org/pod/YAML::XS + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Additionally: + + 'g:syntastic_perl_interpreter' +Type: string +Default: "perl" +The perl interpreter to use. + + 'g:syntastic_perl_lib_path' +Type: list +Default: [] +List of include directories to be added to the perl command line. Example: > + let g:syntastic_perl_lib_path = [ "/usr/local/lib/perl5/auto" ] +< +Note~ + +The variable |'g:syntastic_perl_interpreter'| is shared with the "perl" checker +(cf. |syntastic-perl-perl|). If for some reasons you don't want to use the same +interpreter for both checkers, you can override it locally by setting +'g:syntastic_yaml_yamlxs_exec'. + +============================================================================== +SYNTAX CHECKERS FOR YANG *syntastic-checkers-yang* + +The following checkers are available for YANG data models (filetype "yang"): + + 1. pyang....................|syntastic-yang-pyang| + +------------------------------------------------------------------------------ +1. pyang *syntastic-yang-pyang* + +Name: pyang +Maintainer: Joshua Downer <joshua.downer@gmail.com> + +"pyang" is a validator for YANG data models (http://www.yang-central.org/). +See the project's page at GitHub for more information: + + https://github.com/mbj4668/pyang + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need a plugin to set |filetype| for YANG files, such as +"yang.vim": + + https://github.com/nathanalderson/yang.vim + +============================================================================== +SYNTAX CHECKERS FOR Z80 *syntastic-checkers-z80* + +The following checkers are available for Z80 (filetype "z80"): + + 1. Z80syntaxchecker.........|syntastic-z80-z80syntaxchecker| + +------------------------------------------------------------------------------ +1. Z80syntaxchecker *syntastic-z80-z80syntaxchecker* + +Name: z80syntaxchecker +Maintainer: Romain Giot <giot.romain@gmail.com> + +"Z80syntaxchecker" is a syntax checker for Z80 assembly files. + +Installation~ + +To install "Z80syntaxchecker" either install "pycpcdemotools" +(https://github.com/cpcsdk/pycpcdemotools), or copy the following script to a +directory in your "$PATH": + + https://raw.githubusercontent.com/rgiot/pycpcdemotools/master/cpcdemotools/source_checker/z80_syntax_checker.py + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +SYNTAX CHECKERS FOR ZOPE PAGE TEMPLATES *syntastic-checkers-zpt* + +The following checkers are available for Zope Page Templates (filetype "zpt"): + + 1. zptlint..................|syntastic-zpt-zptlint| + +------------------------------------------------------------------------------ +1. zptlint *syntastic-zpt-zptlint* + +Name: zptlint +Maintainer: claytron <robots@claytron.com> + +"zptlint" is a checker for Zope Page Templates. See the project's README for +more information: + + https://trac.bubblenet.be/browser/bubblenet/pythoncode/zptlint/trunk/README.txt?format=txt + +Installation~ + +Install it with "pip": > + pip install zptlint +< +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +Note~ + +You probably also need to set |filetype| for Zope Page Templates to "zpt". +You can do that with an `:autocmd`: > + autocmd BufNewFile,BufRead *.pt,*.cpt,*.zpt set filetype=zpt syntax=xml +< +============================================================================== +SYNTAX CHECKERS FOR ZSH *syntastic-checkers-zsh* + +The following checkers are available for Zsh (filetype "zsh"): + + 1. zsh......................|syntastic-zsh-zsh| + +------------------------------------------------------------------------------ +1. zsh *syntastic-zsh-zsh* + +Name: zsh +Maintainer: Martin Grenfell <martin.grenfell@gmail.com> + +Checker options~ + +This checker is initialised using the "makeprgBuild()" function and thus it +accepts the standard options described at |syntastic-config-makeprg|. + +============================================================================== +CONFIGURATION FILES *syntastic-config-files* + + Supported checkers..........|syntastic-config-checkers| + Naming......................|syntastic-config-naming| + Location....................|syntastic-config-location| + Format......................|syntastic-config-format| + + *syntastic-config-checkers* +Currently, the following checkers can read some of their options from +syntastic-specific configuration files: + + ADA~ + GCC (|syntastic-ada-gcc|) + + Assembly Languages~ + GCC (|syntastic-asm-gcc|) + + C~ + AVR-GCC (|syntastic-c-avrgcc|) + ClangCheck (|syntastic-c-clang_check|) + Clang-Tidy (|syntastic-c-clang_tidy|) + Cppcheck (|syntastic-c-cppcheck|) + GCC (|syntastic-c-gcc|) + OCLint (|syntastic-c-oclint|) + Sparse (|syntastic-c-sparse|) + Splint (|syntastic-c-splint|) + + COBOL~ + OpenCOBOL (|syntastic-cobol-cobc|) + + C++~ + ClangCheck (|syntastic-cpp-clang_check|) + Clang-Tidy (|syntastic-cpp-clang_tidy|) + Cppcheck (|syntastic-cpp-cppcheck|) + GCC (|syntastic-cpp-gcc|) + OCLint (|syntastic-cpp-oclint|) + Vera++ (|syntastic-cpp-verapp|) + + D~ + DMD (|syntastic-d-dmd|) + + Fortran~ + GNU Fortran (|syntastic-fortran-gfortran|) + + Objective-C~ + GCC (|syntastic-objc-gcc|) + OCLint (|syntastic-objc-oclint|) + + Objective-C++~ + GCC (|syntastic-objcpp-gcc|) + OCLint (|syntastic-objcpp-oclint|) + + Verilog~ + Verilator (|syntastic-verilog-verilator|) + + *syntastic-config-naming* +Naming~ + +Depending on checker, the filename of the corresponding configuration file +can be specified by setting either 'g:syntastic_<filetype>_config_file' or +'g:syntastic_<checker>_config_file'. Refer to the docs for the particular +checkers above for the exact names. + *syntastic-config-location* +Location~ + +A configuration file is looked up in the directory of the file being checked, +then upwards in parent directories. The search stops either when a file with +the right name is found, or when the root of the filesystem is reached. + +Consequently, you would normally put a configuration file in the top directory +of your project, and you would override it when needed with other configuration +files placed in subdirectories. + *syntastic-config-format* +Format~ + +The file is expected to contain one option per line. Empty lines and lines +starting with `#` are removed. On each line, leading and trailing spaces are +also removed. Each option is then escaped, so you don't have to worry about +special characters. + +Lines starting with `-I` are assumed to be include paths, and are handled +specially. If the path following an `-I` is relative, it's treated as +being relative to the current configuration file, and is replaced by the +corresponding absolute path. If the path is absolute to begin with, it is +left unchanged. + +Please note that, aside from `-I`, syntastic doesn't try to keep track of +options with arguments. If you need to pass f.i. `-aux-info filename` to your +compiler you have to write `-aux-info` and `filename` on separate lines in the +configuration file, otherwise syntastic will quote the space and merge them in +a single string, which is probably not what you mean: > + -aux-info + filename +< +In the same vein, `=` in options not special in any way. As stated +above, everything on a line (except lines starting with `-I`, as noted) +is considered an "option" and escaped. + + vim:tw=78:sw=4:ft=help:norl: diff --git a/vim/bundle/syntastic/doc/syntastic.txt b/vim/bundle/syntastic/doc/syntastic.txt new file mode 100644 index 0000000..9b9674e --- /dev/null +++ b/vim/bundle/syntastic/doc/syntastic.txt @@ -0,0 +1,1128 @@ +*syntastic.txt* Syntax checking on the fly has never been so pimp. +*syntastic* + + + It's a bird! It's a plane! ZOMG It's ... ~ + + _____ __ __ _ ~ + / ___/__ ______ / /_____ ______/ /_(_)____ ~ + \__ \/ / / / __ \/ __/ __ `/ ___/ __/ / ___/ ~ + ___/ / /_/ / / / / /_/ /_/ (__ ) /_/ / /__ ~ + /____/\__, /_/ /_/\__/\__,_/____/\__/_/\___/ ~ + /____/ ~ + + + + Reference Manual~ + + +============================================================================== +CONTENTS *syntastic-contents* + + 1.Intro........................................|syntastic-intro| + 1.1.Quick start............................|syntastic-quickstart| + 1.2.Recommended settings...................|syntastic-recommended| + 2.Functionality provided.......................|syntastic-functionality| + 2.1.The statusline flag....................|syntastic-statusline-flag| + 2.2.Error signs............................|syntastic-error-signs| + 2.3.Error window...........................|syntastic-error-window| + 2.4.Error highlighting.....................|syntastic-highlighting| + 2.5.Aggregating errors.....................|syntastic-aggregating-errors| + 2.6.Filtering errors.......................|syntastic-filtering-errors| + 3.Commands.....................................|syntastic-commands| + 4.Global Options...............................|syntastic-global-options| + 5.Checker Options..............................|syntastic-checker-options| + 5.1.Choosing which checkers to use.........|syntastic-filetype-checkers| + 5.2.Choosing the executable................|syntastic-config-exec| + 5.3.Configuring specific checkers..........|syntastic-config-makeprg| + 5.4.Sorting errors.........................|syntastic-config-sort| + 5.5.Filtering errors.......................|syntastic-config-filtering| + 5.6.Debugging..............................|syntastic-config-debug| + 5.7.Profiling..............................|syntastic-profiling| + 6.Notes........................................|syntastic-notes| + 6.1.Handling of composite filetypes........|syntastic-composite| + 6.2.Editing files over network.............|syntastic-netrw| + 6.3.The 'shellslash' option................|syntastic-shellslash| + 6.4.Saving Vim sessions....................|syntastic-sessions| + 7.Compatibility with other software............|syntastic-compatibility| + 7.1.The csh and tcsh shells................|syntastic-csh| + 7.2.Eclim..................................|syntastic-eclim| + 7.3.The fish shell.........................|syntastic-fish| + 7.4.The fizsh shell........................|syntastic-fizsh| + 7.5.flagship...............................|syntastic-flagship| + 7.6.powerline..............................|syntastic-powerline| + 7.7.The PowerShell shell...................|syntastic-powershell| + 7.8.python-mode............................|syntastic-pymode| + 7.9.vim-auto-save..........................|syntastic-vim-auto-save| + 7.10.vim-go................................|syntastic-vim-go| + 7.11.vim-virtualenv........................|syntastic-vim-virtualenv| + 7.12.YouCompleteMe.........................|syntastic-ycm| + 7.13.The zsh shell and MacVim..............|syntastic-zsh| + 8.About........................................|syntastic-about| + 9.License......................................|syntastic-license| + + +============================================================================== +1. Intro *syntastic-intro* + +Syntastic is a syntax checking plugin that runs files through external syntax +checkers. This can be done on demand, or automatically as files are saved +and opened. If syntax errors are detected, the user is notified and is happy +because they didn't have to compile their code or execute their script to find +them. + +Syntastic comes in two parts: the syntax checker plugins, and the core. The +syntax checker plugins are defined on a per-filetype basis where each one wraps +up an external syntax checking program. The core script delegates off to these +plugins and uses their output to provide the syntastic functionality. + +Take a look at the list of supported filetypes and checkers: |syntastic-checkers|. + +Note: This doc only deals with using syntastic. To learn how to write syntax +checker integrations, see the guide on the GitHub wiki: + + https://github.com/scrooloose/syntastic/wiki/Syntax-Checker-Guide + +------------------------------------------------------------------------------ +1.1. Quick start *syntastic-quickstart* + +Syntastic comes preconfigured with a default list of enabled checkers per +|filetype|. This list is kept reasonably short to prevent slowing down Vim or +trying to use conflicting checkers. + +You can see the list of checkers available for the current filetype with the +`:SyntasticInfo` command. + +You probably want to override the configured list of checkers for the +filetypes you use, and also change the arguments passed to specific checkers +to suit your needs. See |syntastic-checker-options| below for details. + +Use `:SyntasticCheck` to manually check right now. Use `:Errors` to open the +|location-list| window, and `:lclose` to close it. You can clear the error +list with `:SyntasticReset`, and you can use `:SyntasticToggleMode` to switch +between active (checking on writing the buffer) and passive (manual) checking. + +You don't have to switch focus to the |location-list| window to jump to the +different errors. Vim provides several built-in commands for this, for +example `:lnext` and `:lprevious`. You may want to add shortcut mappings for +these commands, or perhaps install a plugin such as Tim Pope's "unimpaired" +(see https://github.com/tpope/vim-unimpaired) that provides such mappings. + +------------------------------------------------------------------------------ +1.2. Recommended settings *syntastic-recommended* + +Syntastic has numerous options that can be configured, and the defaults are +not particularly well suitable for new users. It is recommended that you start +by adding the following lines to your vimrc, and return to them later as +needed: > + set statusline+=%#warningmsg# + set statusline+=%{SyntasticStatuslineFlag()} + set statusline+=%* + + let g:syntastic_always_populate_loc_list = 1 + let g:syntastic_auto_loc_list = 1 + let g:syntastic_check_on_open = 1 + let g:syntastic_check_on_wq = 0 +< +============================================================================== +2. Functionality provided *syntastic-functionality* + +Syntax checking can be done automatically or on demand (see +|'syntastic_mode_map'| and `:SyntasticToggleMode` for configuring this). + +When syntax checking is done, the features below can be used to notify the +user of errors. See |syntastic-global-options| for how to configure and +activate/deactivate these features. + + * A statusline flag + * Signs beside lines with errors + * The |location-list| can be populated with the errors for the associated + buffer + * Erroneous parts of lines can be highlighted (this functionality is only + provided by some syntax checkers) + * Balloons (if the |+balloon_eval| feature is compiled in) can be used to + display error messages for erroneous lines when hovering the mouse over + them + * Error messages from multiple checkers can be aggregated in a single list + +------------------------------------------------------------------------------ +2.1. The statusline flag *syntastic-statusline-flag* + +To use the statusline flag, this must appear in your |'statusline'| setting > + %{SyntasticStatuslineFlag()} +< +Something like this could be more useful: > + set statusline+=%#warningmsg# + set statusline+=%{SyntasticStatuslineFlag()} + set statusline+=%* +< +When syntax errors are detected a flag will be shown. The content of the flag +is derived from the |syntastic_stl_format| option. + +Please note that these settings might conflict with other Vim plugins that +change the way statusline works. Refer to these plugins' documentation for +possible solutions. See also |syntastic-powerline| below if you're using the +"powerline" Vim plugin (https://github.com/powerline/powerline). + +------------------------------------------------------------------------------ +2.2. Error signs *syntastic-error-signs* + +Syntastic uses the `:sign` commands (provided that the |+signs| feature is +compiled in) to mark lines with errors and warnings in the sign column. To +enable this feature, use the |'syntastic_enable_signs'| option. + +Signs are colored using the Error and Todo syntax highlight groups by default +(see |group-name|). If you wish to customize the colors for the signs, you +can use the following groups: + SyntasticErrorSign - For syntax errors, links to "error" by default + SyntasticWarningSign - For syntax warnings, links to "todo" by default + SyntasticStyleErrorSign - For style errors, links to "SyntasticErrorSign" + by default + SyntasticStyleWarningSign - For style warnings, links to + "SyntasticWarningSign" by default + +Example: > + highlight SyntasticErrorSign guifg=white guibg=red +< +To set up highlighting for the line where a sign resides, you can use the +following highlight groups: + SyntasticErrorLine + SyntasticWarningLine + SyntasticStyleErrorLine - Links to "SyntasticErrorLine" by default + SyntasticStyleWarningLine - Links to "SyntasticWarningLine" by default + +Example: > + highlight SyntasticErrorLine guibg=#2f0000 +< +------------------------------------------------------------------------------ +2.3. The error window *syntastic-error-window* + +You can use the `:Errors` command to display the errors for the current buffer +in the |location-list|. + +By default syntastic doesn't fill the |location-list| with the errors found by +the checkers, in order to reduce clashes with other plugins. Consequently, if +you run `:lopen` or `:lwindow` rather than `:Errors` to open the error window +you wouldn't see syntastic's list of errors. If you insist on using `:lopen` +or `:lwindow` you should either run `:SyntasticSetLoclist` after running the +checks, or set |'syntastic_always_populate_loc_list'| which tells syntastic to +update the |location-list| automatically. + +------------------------------------------------------------------------------ +2.4. Error highlighting *syntastic-highlighting* + +Some checkers provide enough information for syntastic to be able to highlight +errors. By default the SpellBad syntax highlight group is used to color errors, +and the SpellCap group is used for warnings. If you wish to customize the +colors for highlighting you can use the following groups: + SyntasticError - Links to "SpellBad" by default (see |hl-SpellBad|) + SyntasticWarning - Links to "SpellCap" by default (see |hl-SpellCap|) + SyntasticStyleError - Links to "SyntasticError" by default + SyntasticStyleWarning - Links to "SyntasticWarning" by default + +Example: > + highlight SyntasticError guibg=#2f0000 +< +------------------------------------------------------------------------------ +2.5. Aggregating errors *syntastic-aggregating-errors* + +By default, namely if |'syntastic_aggregate_errors'| is unset, syntastic runs +in turn the checkers corresponding to the filetype of the current file (see +|syntastic-filetype-checkers|), and stops as soon as a checker reports any +errors. It then notifies you of the errors using the notification mechanisms +above. In this mode error lists are always produced by a single checker, and, +if you open the error window, the name of the checker that generated the errors +is shown on the statusline of the error window. + +If |'syntastic_aggregate_errors'| is set, syntastic runs all checkers that +apply (still cf. |syntastic-filetype-checkers|), then aggregates errors found +by all checkers in a single list, and notifies you. In this mode each error +message is labeled with the name of the checker that generated it, but you can +disable generation of these labels by turning off |'syntastic_id_checkers'|. + +If |'syntastic_sort_aggregated_errors'| is set (which is the default), messages +in the aggregated list are grouped by file, then sorted by line number, then +type, then column number. Otherwise messages produced by the same checker are +grouped together, and sorting within each group is decided by the variables +|'syntastic_<filetype>_<checker>_sort'|. + +------------------------------------------------------------------------------ +2.6 Filtering errors *syntastic-filtering-errors* + +You can selectively disable some of the errors found by checkers either +using |'syntastic_quiet_messages'|, or by specifying a list of patterns in +|'syntastic_ignore_files'|. + +See also: |'syntastic_<filetype>_<checker>_quiet_messages'| and +|'b:syntastic_skip_checks'|. + +============================================================================== +3. Commands *syntastic-commands* + +:Errors *:Errors* + +When errors have been detected, use this command to pop up the |location-list| +and display the error messages. + +Please note that the `:Errors` command overwrites the current location list with +syntastic's own location list. + +:SyntasticToggleMode *:SyntasticToggleMode* + +Toggles syntastic between active and passive mode. See |'syntastic_mode_map'| +for more info. + +:SyntasticCheck *:SyntasticCheck* + +Manually cause a syntax check to be done. By default the checkers in the +|'g:syntastic_<filetype>_checkers'| or |'b:syntastic_checkers'| lists are run, +cf. |syntastic-filetype-checkers|. If |'syntastic_aggregate_errors'| is unset +(which is the default), checking stops the first time a checker reports any +errors; if |'syntastic_aggregate_errors'| is set, all checkers that apply are +run in turn, and all errors found are aggregated in a single list. + +The command may be followed by a (space separated) list of checkers. In this +case |'g:syntastic_<filetype>_checkers'| and |'b:syntastic_checkers'| are +ignored, and the checkers named by the command's arguments are run instead, in +the order specified. The set by |'syntastic_aggregate_errors'| still apply. + +Example: > + :SyntasticCheck flake8 pylint +< +:SyntasticInfo *:SyntasticInfo* + +The command takes an optional argument, and outputs information about the +checkers available for the filetype named by said argument, or for the current +filetype if no argument was provided. + +:SyntasticReset *:SyntasticReset* + +Resets the list of errors and turns off all error notifiers. + +:SyntasticSetLoclist *:SyntasticSetLoclist* + +If |'syntastic_always_populate_loc_list'| is not set, the |location-list| is +not filled in automatically with the list of errors detected by the checkers. +This is useful if you run syntastic along with other plugins that use location +lists. The `:SyntasticSetLoclist` command allows you to stick the errors into +the location list explicitly. + +============================================================================== +4. Global Options *syntastic-global-options* + + *'syntastic_check_on_open'* +Type: boolean +Default: 0 +If this variable is enabled, syntastic in active mode will run syntax checks +when buffers are first loaded, as well as on saving: > + let g:syntastic_check_on_open = 1 +< + *'syntastic_check_on_wq'* +Type: boolean +Default: 1 +In active mode syntax checks are normally run whenever buffers are written to +disk, even when the writes happen just before quitting Vim. If you want to +skip checks when you issue `:wq`, `:x`, and `:ZZ`, set this variable to 0: > + let g:syntastic_check_on_wq = 0 +< + *'syntastic_aggregate_errors'* +Type: boolean +Default: 0 +When enabled, syntastic runs all checkers that apply to the current filetype, +then aggregates errors found by all checkers and displays them. When disabled, +syntastic runs each checker in turn, and stops to display the results the first +time a checker finds any errors. > + let g:syntastic_aggregate_errors = 1 +< + *'syntastic_id_checkers'* +Type: boolean +Default: 1 +When results from multiple checkers are aggregated in a single error list +(that is either when |'syntastic_aggregate_errors'| is enabled, or when +checking a file with a composite filetype, cf. |syntastic-composite|), it +might not be immediately obvious which checker has produced a given error +message. This variable instructs syntastic to label error messages with the +names of the checkers that created them. > + let g:syntastic_id_checkers = 0 +< + *'syntastic_sort_aggregated_errors'* +Type: boolean +Default: 1 +By default, when results from multiple checkers are aggregated in a single +error list (that is either when |'syntastic_aggregate_errors'| is enabled, or +when checking a file with a composite filetype, cf. |syntastic-composite|), +errors are grouped by file, then sorted by line number, then grouped by type +(namely errors take precedence over warnings), then they are sorted by column +number. If you want to leave messages grouped by checker output, set this +variable to 0: > + let g:syntastic_sort_aggregated_errors = 0 +< + *'syntastic_echo_current_error'* +Type: boolean +Default: 1 +If enabled, syntastic will echo current error to the command window. If +multiple errors are found on the same line, |'syntastic_cursor_columns'| is +used to decide which one is shown. > + let g:syntastic_echo_current_error = 1 +< + *'syntastic_cursor_columns'* +Type: boolean +Default: 1 +This option controls which errors are echoed to the command window if +|'syntastic_echo_current_error'| is set and multiple errors are found on the +same line. When the option is enabled, the first error corresponding to the +current column is shown. Otherwise, the first error on the current line is +echoed, regardless of the cursor position on the current line. + +When dealing with very large lists of errors, disabling this option can speed +up navigation significantly: > + let g:syntastic_cursor_column = 0 +< + *'syntastic_enable_signs'* +Type: boolean +Default: 1 +Use this option to tell syntastic whether to use the `:sign` interface to mark +syntax errors: > + let g:syntastic_enable_signs = 1 +< + *'syntastic_error_symbol'* *'syntastic_style_error_symbol'* + *'syntastic_warning_symbol'* *'syntastic_style_warning_symbol'* +Type: string +Use these options to control what the syntastic `:sign` text contains. Several +error symbols can be customized: + syntastic_error_symbol - For syntax errors, defaults to ">>" + syntastic_style_error_symbol - For style errors, defaults to "S>" + syntastic_warning_symbol - For syntax warnings, defaults to ">>" + syntastic_style_warning_symbol - For style warnings, defaults to "S>" + +Example: > + let g:syntastic_error_symbol = "\u2717" + let g:syntastic_warning_symbol = "\u26A0" +< + *'syntastic_enable_balloons'* +Type: boolean +Default: 1 +Use this option to tell syntastic whether to display error messages in balloons +when the mouse is hovered over erroneous lines: > + let g:syntastic_enable_balloons = 1 +< +Note that Vim must be compiled with |+balloon_eval|. + + *'syntastic_enable_highlighting'* +Type: boolean +Default: 1 +Use this option to tell syntastic whether to use syntax highlighting to mark +errors (where possible). Highlighting can be turned off with the following > + let g:syntastic_enable_highlighting = 0 +< + *'syntastic_always_populate_loc_list'* +Type: boolean +Default: 0 +By default syntastic doesn't fill the |location-list| with the errors found +by the checkers, in order to reduce clashes with other plugins. Enable this +option to tell syntastic to always stick any detected errors into the +|location-list|: > + let g:syntastic_always_populate_loc_list = 1 +< +Please note that if |'syntastic_auto_jump'| is set to a non-zero value the +location list is overwritten with Syntastic's own list when taking a jump, +regardless of the value of |'syntastic_always_populate_loc_list'|. The +location list is also overwritten when running the `:Errors` command. + + *'syntastic_auto_jump'* +Type: integer +Default: 0 +Enable this option if you want the cursor to jump to the first detected issue +when saving or opening a file. + +When set to 0 the cursor won't jump automatically. > + let g:syntastic_auto_jump = 0 +< +When set to 1 the cursor will always jump to the first issue detected, +regardless of type. > + let g:syntastic_auto_jump = 1 +< +When set to 2 the cursor will jump to the first issue detected, but only if +this issue is an error. > + let g:syntastic_auto_jump = 2 +< +When set to 3 the cursor will jump to the first error detected, if any. If +all issues detected are warnings, the cursor won't jump. > + let g:syntastic_auto_jump = 3 +< +Please note that in either situation taking the jump also has the side effect +of the location list being overwritten with Syntastic's own location list, +regardless of the value of |'syntastic_always_populate_loc_list'|. + + *'syntastic_auto_loc_list'* +Type: integer +Default: 2 +Use this option to tell syntastic to automatically open and/or close the +|location-list| (see |syntastic-error-window|). + +When set to 0 the error window will be neither opened nor closed +automatically. > + let g:syntastic_auto_loc_list = 0 +< +When set to 1 the error window will be automatically opened when errors are +detected, and closed when none are detected. > + let g:syntastic_auto_loc_list = 1 +< +When set to 2 the error window will be automatically closed when no errors are +detected, but not opened automatically. > + let g:syntastic_auto_loc_list = 2 +< +When set to 3 the error window will be automatically opened when errors are +detected, but not closed automatically. > + let g:syntastic_auto_loc_list = 3 +< + *'syntastic_loc_list_height'* +Type: integer +Default: 10 +Use this option to specify the height of the location lists that syntastic +opens. > + let g:syntastic_loc_list_height = 5 +< + *'syntastic_ignore_files'* +Type: list of strings +Default: [] +Use this option to specify files that syntastic should never check. It's a +list of |regular-expression| patterns. The full paths of files (see |::p|) are +matched against these patterns, and the matches are case-sensitive. Use |\c| +to specify case-insensitive patterns. Example: > + let g:syntastic_ignore_files = ['\m^/usr/include/', '\m\c\.h$'] +< + *'syntastic_filetype_map'* +Type: dictionary +Default: {} +Use this option to map non-standard filetypes to standard ones. Corresponding +checkers are mapped accordingly, which allows syntastic to check files with +non-standard filetypes: > + let g:syntastic_filetype_map = { + \ "plaintex": "tex", + \ "gentoo-metadata": "xml" } +< +Composite filetypes (cf. |syntastic-composite|) can also be mapped to simple +types, which disables the default behaviour of running both checkers against +the input file: > + let g:syntastic_filetype_map = { "handlebars.html": "handlebars" } +< + *'syntastic_mode_map'* +Type: dictionary +Default: { "mode": "active", + "active_filetypes": [], + "passive_filetypes": [] } +Use this option to fine tune when automatic syntax checking is done (or not +done). + +The option should be set to something like: > + let g:syntastic_mode_map = { + \ "mode": "active", + \ "active_filetypes": ["ruby", "php"], + \ "passive_filetypes": ["puppet"] } +< +"mode" can be mapped to one of two values - "active" or "passive". When set +to "active", syntastic does automatic checking whenever a buffer is saved or +initially opened. When set to "passive" syntastic only checks when the user +calls `:SyntasticCheck`. + +The exceptions to these rules are defined with "active_filetypes" and +"passive_filetypes". In passive mode, automatic checks are still done for +filetypes in the "active_filetypes" array (and "passive_filetypes" is +ignored). In active mode, automatic checks are not done for any filetypes in +the "passive_filetypes" array ("active_filetypes" is ignored). + +If any of "mode", "active_filetypes", or "passive_filetypes" are left +unspecified, they default to values above. + +If local variable |'b:syntastic_mode'| is defined its value takes precedence +over all calculations involving |'syntastic_mode_map'| for the corresponding +buffer. + +At runtime, the `:SyntasticToggleMode` command can be used to switch between +active and passive modes. + + *'b:syntastic_mode'* +Type: string +Default: unset +Only the local form |'b:syntastic_mode'| is used. When set to either "active" +or "passive", it takes precedence over |'syntastic_mode_map'| when deciding +whether the corresponding buffer should be checked automatically. + + *'syntastic_quiet_messages'* +Type: dictionary +Default: {} +Use this option to filter out some of the messages produced by checkers. The +option should be set to something like: > + let g:syntastic_quiet_messages = { + \ "!level": "errors", + \ "type": "style", + \ "regex": '\m\[C03\d\d\]', + \ "file:p": ['\m^/usr/include/', '\m\c\.h$'] } +< +Each element turns off messages matching the patterns specified by the +corresponding value. Values are lists, but if a list consists of a single +element you may omit the brackets (e.g. you may write "style" instead of +["style"]). Elements with values [] or "" are ignored (this is useful for +overriding filters, cf. |filter-overrides|). + + "level" - takes one of two values, "warnings" or "errors" + "type" - can be either "syntax" or "style" + "regex" - each item in list is matched against the messages' text as a + case-insensitive |regular-expression| + "file" - each item in list is matched against the filenames the messages + refer to, as a case-sensitive |regular-expression|. + +If a key is prefixed by an exclamation mark "!", the corresponding filter is +negated (i.e. the above example silences all messages that are NOT errors). + +The "file" key may be followed by one or more filename modifiers (see +|filename-modifiers|). The modifiers are applied to the filenames the messages +refer to before matching against the value (i.e. in the above example the full +path of the issues are matched against '\m^/usr/include/' and '\m\c\.h$'). + +If |'syntastic_id_checkers'| is set, filters are applied before error messages +are labeled with the names of the checkers that created them. + +There are also checker-specific variants of this option, providing finer +control. They are named |'syntastic_<filetype>_<checker>_quiet_messages'|. + +For a particular checker, if both a |'syntastic_quiet_messages'| filter and +a checker-specific filter are present, they are both applied (to the list of +errors produced by the said checker). In case of conflicting values for the +same keys, the values of the checker-specific filters take precedence. + + *filter-overrides* +Since filter elements with values [] or "" are ignored, you can disable global +filters for particular checkers, by setting the values of the corresponding +elements in |'syntastic_<filetype>_<checker>_quiet_messages'| to [] or "". For +example, the following setting will silence all warnings, except for the +ones produced by "pylint": > + let g:syntastic_quiet_messages = { "level": "warnings" } + let g:syntastic_python_pylint_quiet_messages = { "level" : [] } +< + *'syntastic_stl_format'* +Type: string +Default: "[Syntax: line:%F (%t)]" +Use this option to control what the syntastic statusline text contains. Several +magic flags are available to insert information: + %e - number of errors + %w - number of warnings + %t - total number of warnings and errors + %ne - filename of file containing first error + %nw - filename of file containing first warning + %N - filename of file containing first warning or error + %pe - filename with path of file containing first error + %pw - filename with path of file containing first warning + %P - filename with path of file containing first warning or error + %fe - line number of first error + %fw - line number of first warning + %F - line number of first warning or error + +These flags accept width and alignment controls similar to the ones used by +|'statusline'| flags: + %-0{minwid}.{maxwid}{flag} + +All fields except {flag} are optional. A single percent sign can be given as +"%%". + +Several additional flags are available to hide text under certain conditions: + %E{...} - hide the text in the brackets unless there are errors + %W{...} - hide the text in the brackets unless there are warnings + %B{...} - hide the text in the brackets unless there are both warnings AND + errors +These flags can't be nested. + +Example: > + let g:syntastic_stl_format = "[%E{Err: %fe #%e}%B{, }%W{Warn: %fw #%w}]" +< +If this format is used and the current buffer has 5 errors and 1 warning +starting on lines 20 and 10 respectively then this would appear on the +statusline: > + [Err: 20 #5, Warn: 10 #1] +< +If the buffer had 2 warnings, starting on line 5 then this would appear: > + [Warn: 5 #2] +< + *'b:syntastic_skip_checks'* +Type: boolean +Default: unset +Only the local form |'b:syntastic_skip_checks'| is used. When set to a true +value, no checks are run against the corresponding buffer. Example: > + let b:syntastic_skip_checks = 1 +< + *'syntastic_full_redraws'* +Type: boolean +Default: 0 in GUI Vim and MacVim, 1 otherwise +Controls whether syntastic calls `:redraw` or `:redraw!` for screen redraws. +Changing it can in principle make screen redraws smoother, but it can also +cause screen to flicker, or cause ghost characters. Leaving it to the default +should be safe. + + *'syntastic_exit_checks'* +Type: boolean +Default: 0 when running under "cmd.exe" on Windows, 1 otherwise +Syntastic attempts to catch abnormal termination conditions from checkers by +looking at their exit codes. The "cmd.exe" shell on Windows make these checks +meaningless, by returning 1 to Vim when the checkers exit with non-zero codes. +The above variable can be used to disable exit code checks in syntastic. + + *'syntastic_shell'* +Type: string +Default: Vim's 'shell' +This is the (full path to) the shell syntastic will use to run the checkers. +On UNIX and Mac OS-X this shell must accept Bourne-compatible syntax for +file "stdout" and "stderr" redirections ">file" and "2>file". Examples of +compatible shells are "zsh", "bash", "ksh", and of course the original Bourne +"sh". + +This shell is independent of Vim's 'shell', and it isn't used for interactive +operations. It must take care to initialize all environment variables needed +by the checkers you're using. Example: > + let g:syntastic_shell = "/bin/sh" +< + *'syntastic_nested_autocommands'* +Type: boolean +Default: 0 +Controls whether syntastic's autocommands |BufReadPost| and |BufWritePost| +are called from other |BufReadPost| and |BufWritePost| autocommands (see +|autocmd-nested|). This is known to trigger interoperability problems with +other plugins, so only enable it if you actually need that functionality. + + *'syntastic_debug'* +Type: integer +Default: 0 +Set this to the sum of one or more of the following flags to enable +debugging: + + 1 - trace general workflow + 2 - dump location lists + 4 - trace notifiers + 8 - trace autocommands + 16 - dump options + 32 - trace running of specific checkers + +Example: > + let g:syntastic_debug = 1 +< +Syntastic will then add debugging messages to Vim's |message-history|. You can +examine these messages with `:mes`. + + *'syntastic_debug_file'* +Type: string +Default: unset +When set, debugging messages are written to the file named by its value, in +addition to being added to Vim's |message-history|: > + let g:syntastic_debug_file = "~/syntastic.log" +< + *'syntastic_extra_filetypes'* +Type: list of strings +Default: [] +List of filetypes handled by checkers external to syntastic. If you have a Vim +plugin that adds a checker for syntastic, and if the said checker deals with a +filetype that is unknown to syntastic, you might consider adding that filetype +to this list: > + let g:syntastic_extra_filetypes = [ "make", "gitcommit" ] +< +This will allow `:SyntasticInfo` to do proper tab completion for the new +filetypes. + +============================================================================== +5. Checker Options *syntastic-checker-options* + +------------------------------------------------------------------------------ +5.1 Choosing which checkers to use *syntastic-filetype-checkers* + + *'g:syntastic_<filetype>_checkers'* +You can tell syntastic which checkers to run for a given filetype by setting a +variable 'g:syntastic_<filetype>_checkers' to a list of checkers, e.g. > + let g:syntastic_php_checkers = ["php", "phpcs", "phpmd"] +< + *'b:syntastic_checkers'* +There is also a per-buffer version of this setting, |'b:syntastic_checkers'|. +When set, it takes precedence over |'g:syntastic_<filetype>_checkers'|. You can +use this in an autocmd to configure specific checkers for particular paths: > + autocmd FileType python if stridx(expand("%:p"), "/some/path/") == 0 | + \ let b:syntastic_checkers = ["pylint"] | endif +< +If neither |'g:syntastic_<filetype>_checkers'| nor |'b:syntastic_checkers'| +is set, a default list of checker is used. Beware however that this list +deliberately kept minimal, for performance reasons. + +Take a look elsewhere in this manual to find out what checkers and filetypes +are supported by syntastic: |syntastic-checkers|. + +Use `:SyntasticInfo` to see which checkers are available for a given filetype. + +------------------------------------------------------------------------------ +5.2 Choosing the executable *syntastic-config-exec* + + *'syntastic_<filetype>_<checker>_exec'* +The executable run by a checker is normally defined automatically, when the +checker is registered. You can however override it, by setting the variable +'g:syntastic_<filetype>_<checker>_exec': > + let g:syntastic_ruby_mri_exec = "~/bin/ruby2" +< +This variable has a local version, 'b:syntastic_<filetype>_<checker>_exec', +which takes precedence over the global one in the corresponding buffer. + + *'b:syntastic_<checker>_exec'* +There is also a local variable named 'b:syntastic_<checker>_exec', which +takes precedence over both 'b:syntastic_<filetype>_<checker>_exec' and +'g:syntastic_<filetype>_<checker>_exec' in the buffers where it is defined. + +------------------------------------------------------------------------------ +5.3 Configuring specific checkers *syntastic-config-makeprg* + +Checkers are run by constructing a command line and by passing it to a shell +(see |'shell'| and |'syntastic_shell'|). In most cases this command line is +built using an internal function named "makeprgBuild()", which provides a +number of options that allow you to customise every part of the command that +gets called. + + *'syntastic_<filetype>_<checker>_<option>'* +Checkers that use "makeprgBuild()" construct the corresponding command line +like this: > + let makeprg = self.makeprgBuild({ + \ "exe": self.getExec(), + \ "args": "-a -b -c", + \ "fname": shellescape(expand("%", 1)), + \ "post_args": "--more --args", + \ "tail": "2>/dev/null" }) +< +The result is a command line of the form: > + <exe> <args> <fname> <post_args> <tail> +< +All fields above are optional, and can be overridden by setting global +variables 'g:syntastic_<filetype>_<checker-name>_<option-name>' - even +parameters not specified in the call to "makeprgBuild()". For example to +override the argguments and the tail: > + let g:syntastic_c_pc_lint_args = "-w5 -Iz:/usr/include/linux" + let g:syntastic_c_pc_lint_tail = "2>/dev/null" +< +These variables also have buffer-local versions named +'b:syntastic_<filetype>_<checker-name>_<option-name>', which takes precedence +over the global ones in the corresponding buffers. + +You can see the final outcome of setting these variables in the debug logs +(cf. |syntastic-config-debug|). + +Special characters need to be escaped, so that they can survive shell +expansions. Vim function |shellescape()| can help you with escaping: > + let g:syntastic_c_cppcheck_args = + \ "-DBUILD_BASENAME=my-module " . shellescape("-DBUILD_STR(s)=#s") +< +Alternatively, you can tell syntastic to escape special characters by turning +the value into a list: > + let g:syntastic_c_cppcheck_args = + \ ["-DBUILD_BASENAME=my-module", "-DBUILD_STR(s)=#s"] +< +Each element of this list is then escaped as needed, and turned into a +separate argument for the shell. + + *syntastic-config-empty* +If one of the above variables has a non-empty default and you want it to be +empty, you can set it to an empty string, e.g.: > + let g:syntastic_javascript_jslint_args = "" +< + *'syntastic_<filetype>_<checker>_exe'* +The 'exe' option is special. Normally it is the same as the 'exec' attribute +described above, but you can use it to add environment variables to the +command line, or to change the way the checker is run. For example this setup +allows you to run PC-Lint on Linux, under Wine emulation: > + let g:syntastic_c_pc_lint_exec = "wine" + let g:syntastic_c_pc_lint_exe = "wine c:/path/to/lint-nt.exe" +< + *'syntastic_<filetype>_<checker>_fname'* + +The 'fname' option is also special. Normally it is automatically set by +syntastic to the name of the current file, but you can change that as needed. +For example you can tell the SML/NJ compiler to use Compilation Manager by +omitting the filename from the command line: > + let g:syntastic_sml_smlnj_fname = "" +< + *syntastic-config-no-makeprgbuild* +For checkers that do not use the "makeprgBuild()" function you will have to +look at the source code of the checker in question. If there are specific +options that can be set they are normally documented in this manual (see +|syntastic-checkers|). + +------------------------------------------------------------------------------ +5.4 Sorting errors *syntastic-config-sort* + + *'syntastic_<filetype>_<checker>_sort'* +Syntastic may decide to group the errors produced by some checkers by file, +then sort them by line number, then by type, then by column number. If you'd +prefer to see the errors in the order in which they are output by the external +checker you can set the variable |'g:syntastic_<filetype>_<checker>_sort'| to 0. + +Alternatively, if syntastic doesn't reorder the errors produced by a checker +but you'd like it to sort them, you can set the same variable to 1. + +There is also a local version |'b:syntastic_<filetype>_<checker>_sort'| of +this variable, that takes precedence over it in the buffers where it is +defined. + +For aggregated lists (see |syntastic-aggregating-errors|) these variables are +ignored if |'syntastic_sort_aggregated_errors'| is set (which is the default). + +------------------------------------------------------------------------------ +5.5 Filtering errors *syntastic-config-filtering* + + *'syntastic_<filetype>_<checker>_quiet_messages'* +Finally, variables 'g:syntastic_<filetype>_<checker-name>_quiet_messages' can +be used to filter out some of the messages produced by specific checkers. The +effect is identical to that of |syntastic_quiet_messages|, except only messages +from the corresponding checkers are filtered. Example: > + let g:syntastic_python_pylama_quiet_messages = { + \ "type": "style", + \ "regex": '\m\[C03\d\d\]' } +< +The syntax is of course identical to that of |syntastic_quiet_messages|. + +------------------------------------------------------------------------------ +5.6 Debugging *syntastic-config-debug* + +Syntastic can log a trace of its working to Vim's |message-history|. To verify +the command line constructed by syntastic to run a checker, set the variable +|'syntastic_debug'| to a non-zero value, run the checker, then run `:mes` to +display the messages, and look for "makeprg" in the output. + +From a user's perspective, the useful values for |'syntastic_debug'| are 1, 3, +and 33: + + 1 - logs syntastic's workflow + 3 - logs workflow, checker's output, and |location-list| manipulations + 33 - logs workflow and checker-specific details (such as version checks). + +Debug logs can be saved to a file; see |'syntastic_debug_file'| for details. + +Setting |'syntastic_debug'| to 0 turns off logging. + +------------------------------------------------------------------------------ +5.7 Profiling *syntastic-profiling* + +A very useful tool for debugging performance problems is Vim's built-in +|profiler|. In order to enable profiling for syntastic you need to add two lines +to your vimrc (not to gvimrc): > + profile start syntastic.log + profile! file */syntastic/* +< +(assuming your copy of syntastic lives in a directory creatively named +"syntastic"). These lines must be executed before syntastic is loaded, so you +need to put them before package managers such as "pathogen" or "Vundle", and +(in newer Vim versions) before any commands related to |packages|. + +A log file is created in the current directory, and is updated when you quit +Vim. + +============================================================================== +6. Notes *syntastic-notes* + +------------------------------------------------------------------------------ +6.1. Handling of composite filetypes *syntastic-composite* + +Some Vim plugins use composite filetypes, such as "django.python" or +"handlebars.html". Normally syntastic deals with this situation by splitting +the filetype in its simple components, and calling all checkers that apply. +If this behaviour is not desirable, you can disable it by mapping the +composite filetypes to simple ones using |'syntastic_filetype_map'|, e.g.: > + let g:syntastic_filetype_map = { "handlebars.html": "handlebars" } +< +------------------------------------------------------------------------------ +6.2 Editing files over network *syntastic-netrw* + +The standard plugin |netrw| allows Vim to transparently edit files over +network and inside archives. Currently syntastic doesn't support this mode +of operation. It can only check files that can be accessed directly by local +checkers, without any translation or conversion. + +------------------------------------------------------------------------------ +6.3 The 'shellslash' option *syntastic-shellslash* + +The 'shellslash' option is relevant only on Windows systems. This option +determines (among other things) the rules for quoting command lines, and there +is no easy way for syntastic to make sure its state is appropriate for your +shell. It should be turned off if your 'shell' (or |'syntastic_shell'|) is +"cmd.exe", and on for shells that expect an UNIX-like syntax, such as Cygwin's +"sh". Most checkers will stop working if 'shellslash' is set to the wrong +value. + +------------------------------------------------------------------------------ +6.4 Saving Vim sessions *syntastic-sessions* + +If you use `:mksession` to save Vim sessions you should probably make sure to +remove option "blank" from 'sessionoptions': > + set sessionoptions-=blank +< +This will prevent `:mksession` from saving |syntastic-error-window| as empty +quickfix windows. + +============================================================================== +7. Compatibility with other software *syntastic-compatibility* + +------------------------------------------------------------------------------ +7.1 The csh and tcsh shells *syntastic-csh* + +The "csh" and "tcsh" shells are mostly compatible with syntastic. However, +some checkers assume Bourne shell syntax for redirecting "stderr". For this +reason, you should point |'syntastic_shell'| to a Bourne-compatible shell, +such as "zsh", "bash", "ksh", or even the original Bourne "sh": > + let g:syntastic_shell = "/bin/sh" +< +------------------------------------------------------------------------------ +7.2. Eclim *syntastic-eclim* + +Syntastic can be used together with "Eclim" (see http://eclim.org/). However, +by default Eclim disables syntastic's checks for the filetypes it supports, in +order to run its own validation. If you'd prefer to use Eclim but still run +syntastic's checks, set |g:EclimFileTypeValidate| to 0: > + let g:EclimFileTypeValidate = 0 +< +It is also possible to re-enable syntastic checks only for some filetypes, and +run Eclim's validation for others. Please consult Eclim's documentation for +details. + +------------------------------------------------------------------------------ +7.3 The fish shell *syntastic-fish* + +At the time of this writing the "fish" shell (see http://fishshell.com/) +doesn't support the standard UNIX syntax for file redirections, and thus it +can't be used together with syntastic. You can however set |'syntastic_shell'| +to a more traditional shell, such as "zsh", "bash", "ksh", or even the +original Bourne "sh": > + let g:syntastic_shell = "/bin/sh" +< +------------------------------------------------------------------------------ +7.4. The fizsh shell *syntastic-fizsh* + +Using syntastic with the "fizsh" shell (see https://github.com/zsh-users/fizsh) +is possible, but potentially problematic. In order to do it you'll need to set +'shellredir' like this: > + set shellredir=>%s\ 2>&1 +< +Please keep in mind however that Vim can't take advantage of any of the +interactive features of "fizsh". Using a more traditional shell such as "zsh", +"bash", "ksh", or the original Bourne "sh" might be a better choice: > + let g:syntastic_shell = "/bin/sh" +< +------------------------------------------------------------------------------ +7.5 flagship *syntastic-flagship* + +The "flagship" Vim plugin (https://github.com/tpope/vim-flagship) has its +own mechanism of showing flags on the |'statusline'|. To allow "flagship" +to manage syntastic's statusline flag add the following |autocommand| to +your vimrc, rather than explicitly adding the flag to your |'statusline'| as +described in the |syntastic-statusline-flag| section above: > + autocmd User Flags call Hoist("window", "SyntasticStatuslineFlag") +< +------------------------------------------------------------------------------ +7.6. powerline *syntastic-powerline* + +The "powerline" Vim plugin (https://github.com/powerline/powerline) comes +packaged with a syntastic segment. To customize this segment create a file +"~/.config/powerline/themes/vim/default.json", with a content like this: > + { + "segment_data" : { + "powerline.segments.vim.plugin.syntastic.syntastic" : { + "args" : { + "err_format" : "Err: {first_line} #{num} ", + "warn_format" : "Warn: {first_line} #{num} " + } + } + } + } +< +------------------------------------------------------------------------------ +7.7. The PowerShell shell *syntastic-powershell* + +At the time of this writing, syntastic is not compatible with using "Windows +PowerShell" (http://technet.microsoft.com/en-us/library/bb978526.aspx) as Vim's +'shell'. You may still run Vim from 'PowerShell', but you do have to point +Vim's 'shell' to a more traditional program, such as "cmd.exe": > + set shell=cmd.exe +< +------------------------------------------------------------------------------ +7.8 python-mode *syntastic-pymode* + +Syntastic can be used along with the "python-mode" Vim plugin (see +https://github.com/klen/python-mode). However, they both run syntax checks by +default when you save buffers to disk, and this is probably not what you want. +To avoid both plugins opening error windows, you can either set passive mode +for python in syntastic (see |'syntastic_mode_map'|), or disable lint checks in +"python-mode", by setting |pymode_lint_on_write| to 0. E.g.: > + let g:pymode_lint_on_write = 0 +< +------------------------------------------------------------------------------ +7.9. vim-auto-save *syntastic-vim-auto-save* + +Syntastic can be used together with the "vim-auto-save" Vim plugin (see +https://github.com/907th/vim-auto-save). However, syntastic checks in active +mode only work with "vim-auto-save" version 0.1.7 or later. + +------------------------------------------------------------------------------ +7.10. vim-go *syntastic-vim-go* + +Syntastic can be used along with the "vim-go" Vim plugin (see +https://github.com/fatih/vim-go). However, both "vim-go" and syntastic run +syntax checks by default when you save buffers to disk. To avoid conflicts, +you have to either set passive mode in syntastic for the "go" filetype (see +|syntastic_mode_map|), or prevent "vim-go" from showing a quickfix window when +|g:go_fmt_command| fails, by setting |g:go_fmt_fail_silently| to 1. E.g.: > + let g:go_fmt_fail_silently = 1 +< +"vim-go" version 1.4 and earlier always uses |quickfix| lists. Starting with +version 1.5, "vim-go" can also use location lists (see |location-list|). To +avoid conflicts with syntastic, you probably want to configure "vim-go" to +stick with |quickfix| lists: > + let g:go_list_type = "quickfix" +< +------------------------------------------------------------------------------ +7.11. vim-virtualenv *syntastic-vim-virtualenv* + +At the time of this writing, syntastic can't run checkers installed +in Python virtual environments activated by "vim-virtualenv" (see +https://github.com/jmcantrell/vim-virtualenv). This is a limitation of +"vim-virtualenv". + +------------------------------------------------------------------------------ +7.12 YouCompleteMe *syntastic-ycm* + +Syntastic can be used together with the "YouCompleteMe" Vim plugin (see +http://valloric.github.io/YouCompleteMe/). However, by default "YouCompleteMe" +disables syntastic's checkers for the "c", "cpp", "objc", and "objcpp" +filetypes, in order to allow its own checkers to run. If you want to use YCM's +identifier completer but still run syntastic's checkers for those filetypes you +have to set |g:ycm_show_diagnostics_ui| to 0. E.g.: > + let g:ycm_show_diagnostics_ui = 0 +< +------------------------------------------------------------------------------ +7.13 The zsh shell and MacVim *syntastic-zsh* + +If you're running MacVim together with the "zsh" shell (http://www.zsh.org/) +you need to be aware that MacVim does not source your .zshrc file, but will +source a .zshenv file. Consequently you have to move any setup steps relevant +to the checkers you're using from .zshrc to .zshenv, otherwise your checkers +will misbehave when run by syntastic. This is particularly important for +programs such as "rvm" (https://rvm.io/) or "rbenv" (http://rbenv.org/), that +rely on setting environment variables. + +============================================================================== +8. About *syntastic-about* + +The core maintainers of syntastic are: + Martin Grenfell (GitHub: scrooloose) + Gregor Uhlenheuer (GitHub: kongo2002) + LCD 047 (GitHub: lcd047) + +Find the latest version of syntastic at: + + http://github.com/scrooloose/syntastic + +============================================================================== +9. License *syntastic-license* + +Syntastic is released under the WTFPL. +See http://sam.zoy.org/wtfpl/COPYING. + + vim:tw=78:sw=4:ft=help:norl: |