Merge branch 'master' into gcc_refactor
This commit is contained in:
commit
4a6ece567a
@ -25,14 +25,17 @@ demand, or automatically as files are saved. 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.
|
||||
|
||||
At the time of this writing, syntax checking plugins exist for ada, applescript, c, co,
|
||||
coffee, coq, cpp, cs, css, cucumber, cuda, d, dart, docbk, elixir, erlang, eruby, fortran,
|
||||
gentoo_metadata, go, haml, haskell, haxe, html, java, javascript, json, less, lisp, lua, matlab,
|
||||
nasm, objc, ocaml, perl, php, puppet, python, rst, ruby, rust, sass/scss, scala, sh, slim, tcl, tex,
|
||||
twig, typescript, vala, vhdl, xhtml, xml, xslt, yaml, z80, zpt, zsh
|
||||
At the time of this writing, syntax checking plugins exist for Ada,
|
||||
AppleScript, Bourne shell, C, C++, C#, CoffeeScript, Coco, Coq, CSS,
|
||||
Cucumber, CUDA, D, Dart, DocBook, Elixir, Erlang, eRuby, Fortran, Gentoo
|
||||
metadata, Go, Haml, Haskell, Haxe, HTML, Java, JavaScript, JSON, LESS,
|
||||
LISP, LLVM intermediate language, Lua, MATLAB, NASM, Objective-C,
|
||||
Objective-C++, OCaml, Perl, Perl POD, PHP, Puppet, Python,
|
||||
reStructuredText, Ruby, Rust, SASS/SCSS, Scala, Slim, Tcl, TeX, Twig,
|
||||
TypeScript, Vala, VHDL, xHtml, XML, XSLT, YAML, z80, Zope page
|
||||
templates, zsh.
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
## Screenshot
|
||||
|
||||
Below is a screenshot showing the methods that Syntastic uses to display syntax
|
||||
errors. Note that, in practise, you will only have a subset of these methods
|
||||
@ -47,14 +50,12 @@ enabled.
|
||||
5. Hover the mouse over a line containing an error and the error message is displayed as a balloon.
|
||||
6. (not shown) Highlighting errors with syntax highlighting. Erroneous parts of lines can be highlighted.
|
||||
|
||||
Installation
|
||||
------------
|
||||
## Installation
|
||||
|
||||
Installing syntastic is easy but first you need to have the pathogen plugin installed. If you already
|
||||
have pathogen working then skip Step 1 and go to Step 2.
|
||||
|
||||
Step 1: Install pathogen.vim
|
||||
----------------------------
|
||||
### Step 1: Install pathogen.vim
|
||||
|
||||
First I'll show you how to install tpope's [pathogen.vim](https://github.com/tpope/vim-pathogen) so that
|
||||
it's easy to install syntastic. Do this in your Terminal so that you get the pathogen.vim file
|
||||
@ -66,10 +67,9 @@ and the directories it needs:
|
||||
|
||||
Next you *need to add this* to your ~/.vimrc:
|
||||
|
||||
call pathogen#infect()
|
||||
execute pathogen#infect()
|
||||
|
||||
Step 2: Install syntastic as a pathogen bundle
|
||||
----------------------------------------------
|
||||
### Step 2: Install syntastic as a pathogen bundle
|
||||
|
||||
You now have pathogen installed and can put syntastic into ~/.vim/bundle like this:
|
||||
|
||||
@ -90,16 +90,14 @@ step 1 and make sure you did the following:
|
||||
4. Have permissions to access all of these directories.
|
||||
|
||||
|
||||
Google group
|
||||
------------
|
||||
## Google group
|
||||
|
||||
To get information or make suggestions check out the [google group](https://groups.google.com/group/vim-syntastic).
|
||||
|
||||
|
||||
FAQ
|
||||
---
|
||||
## FAQ
|
||||
|
||||
__Q. I installed syntastic but it isn't reporting any errors ...__
|
||||
__Q. I installed syntastic but it isn't reporting any errors...__
|
||||
|
||||
A. The most likely reason is that the syntax checker that it requires isn't installed. For example: python requires either `flake8`, `pyflakes` or `pylint` to be installed and in `$PATH`. To see which executable is required, just look in `syntax_checkers/<filetype>.vim`. Note that aliases do not work; the actual executable must be available in your `$PATH`. Symbolic links are okay.
|
||||
|
||||
@ -113,35 +111,47 @@ e.g. Previously there was `g:syntastic_phpcs_conf`, now you must use `g:syntasti
|
||||
|
||||
See `:help syntastic-checker-options` for more information.
|
||||
|
||||
__Q. I run a chacker and the location list is not updated...__
|
||||
|
||||
A. By default, the location list is changed only when you run the `:Errors` command, in order to minimise conflicts with other plugins. If you want the location list to always be updated when you run the checkers, add this line to your vimrc:
|
||||
```vim
|
||||
let g:syntastic_always_populate_loc_list=1
|
||||
```
|
||||
|
||||
__Q. How can I pass additional arguments to a checker?__
|
||||
|
||||
A. Almost all syntax checkers use the `syntastic#makeprg#build()` function. Those checkers that do can be configured using global variables. The general form of the global args variables are:
|
||||
|
||||
`syntastic_[filetype]_[subchecker]_args`
|
||||
```vim
|
||||
syntastic_[filetype]_[subchecker]_args
|
||||
```
|
||||
|
||||
So, If you wanted to pass "--my --args --here" to the ruby mri checker you would add this line to your vimrc:
|
||||
|
||||
`let g:syntastic_ruby_mri_args="--my --args --here"`
|
||||
```vim
|
||||
let g:syntastic_ruby_mri_args="--my --args --here"
|
||||
```
|
||||
|
||||
See `:help syntastic-checker-options` for more information.
|
||||
|
||||
__Q. Syntastic supports several checkers for my filetype - how do I tell it which one(s) to use?__
|
||||
|
||||
A. Stick a line like this in your vimrc:
|
||||
|
||||
`let g:syntastic_<filetype>_checkers=['<checker-name>']`
|
||||
```vim
|
||||
let g:syntastic_<filetype>_checkers=['<checker-name>']
|
||||
```
|
||||
|
||||
To see the list of checkers for your filetype, look in `syntax_checkers/<filetype>/`.
|
||||
|
||||
e.g. Python has the following checkers: `flake8`, `pyflakes`, `pylint` and a native `python` checker.
|
||||
|
||||
To tell syntastic to use `pylint`, you would use this setting:
|
||||
|
||||
`let g:syntastic_python_checkers=['pylint']`
|
||||
```vim
|
||||
let g:syntastic_python_checkers=['pylint']
|
||||
```
|
||||
|
||||
Some filetypes, like PHP, have style checkers as well as syntax checkers. These can be chained together like this:
|
||||
|
||||
`let g:syntastic_php_checkers=['php', 'phpcs', 'phpmd']`
|
||||
```vim
|
||||
let g:syntastic_php_checkers=['php', 'phpcs', 'phpmd']
|
||||
```
|
||||
|
||||
This is telling syntastic to run the `php` checker first, and if no errors are found, run `phpcs`, and then `phpmd`.
|
||||
|
||||
@ -149,11 +159,11 @@ __Q. How can I jump between the different errors without using the location list
|
||||
|
||||
A. Vim provides several built in commands for this. See `:help :lnext` and `:help :lprev`.
|
||||
|
||||
If you use these commands a lot then you may want to add shortcut mappings to your vimrc, or install something like [unimpaired](https://github.com/tpope/vim-unimpaired) - which provides such mappings (among other things).
|
||||
If you use these commands a lot then you may want to add shortcut mappings to your vimrc, or install something like [unimpaired](https://github.com/tpope/vim-unimpaired), which provides such mappings (among other things).
|
||||
|
||||
__Q. A syntax checker is giving me unwanted/strange style tips?__
|
||||
|
||||
A. Some filetypes (e.g. php) have style checkers as well as syntax checkers. You can usually configure the options that are passed to the style checkers, or just disable them. Take a look at the syntax checker integration file (e.g. `syntax_checkers/php.vim`) to see what options are available.
|
||||
A. Some filetypes (e.g. php) have style checkers as well as syntax checkers. You can usually configure the options that are passed to the style checkers, or just disable them. Take a look at the [wiki](https://github.com/scrooloose/syntastic/wiki/Syntaxcheckers) to see what options are available.
|
||||
|
||||
__Q. The error window is closed automatically when I :quit the current buffer but not when I :bdelete it?__
|
||||
|
||||
|
@ -43,18 +43,20 @@ function! syntastic#util#parseShebang()
|
||||
return {'exe': '', 'args': []}
|
||||
endfunction
|
||||
|
||||
" Verify that the 'installed' version is at the 'required' version, if not
|
||||
" better.
|
||||
" Run 'command' in a shell and parse output as a version string.
|
||||
" Returns an array of version components.
|
||||
function! syntastic#util#parseVersion(command)
|
||||
return split(matchstr( system(a:command), '\v^\D*\zs\d+(\.\d+)+\ze' ), '\.')
|
||||
endfunction
|
||||
|
||||
" Verify that the 'installed' version is at least the 'required' version.
|
||||
"
|
||||
" 'installed' and 'required' must be arrays. Only the
|
||||
" first three elements (major, minor, patch) are looked at.
|
||||
"
|
||||
" Either array may be less than three elements. The "missing" elements
|
||||
" will be assumed to be '0' for the purposes of checking.
|
||||
" 'installed' and 'required' must be arrays. If they have different lengths,
|
||||
" the "missing" elements will be assumed to be 0 for the purposes of checking.
|
||||
"
|
||||
" See http://semver.org for info about version numbers.
|
||||
function! syntastic#util#versionIsAtLeast(installed, required)
|
||||
for index in [0,1,2]
|
||||
for index in range(max([len(a:installed), len(a:required)]))
|
||||
if len(a:installed) <= index
|
||||
let installed_element = 0
|
||||
else
|
||||
|
@ -133,9 +133,9 @@ function! s:UpdateErrors(auto_invoked, ...)
|
||||
let loclist = g:SyntasticLoclist.current()
|
||||
call s:notifiers.refresh(loclist)
|
||||
|
||||
if (g:syntastic_always_populate_loc_list || g:syntastic_auto_jump) && loclist.hasErrorsOrWarningsToDisplay()
|
||||
if g:syntastic_always_populate_loc_list || g:syntastic_auto_jump
|
||||
call setloclist(0, loclist.filteredRaw())
|
||||
if g:syntastic_auto_jump
|
||||
if g:syntastic_auto_jump && loclist.hasErrorsOrWarningsToDisplay()
|
||||
silent! lrewind
|
||||
endif
|
||||
endif
|
||||
@ -354,7 +354,11 @@ function! SyntasticMake(options)
|
||||
endif
|
||||
|
||||
" Apply ignore patterns
|
||||
call filter(errors, '!s:IgnoreFile(bufname(str2nr(v:val["bufnr"])))')
|
||||
let ignore = {}
|
||||
for buf in syntastic#util#unique(map(copy(errors), 'v:val["bufnr"]'))
|
||||
let ignore[buf] = s:IgnoreFile(bufname(str2nr(buf)))
|
||||
endfor
|
||||
call filter(errors, '!ignore[v:val["bufnr"]]')
|
||||
|
||||
" Add subtype info if present.
|
||||
if has_key(a:options, 'subtype')
|
||||
|
@ -133,8 +133,8 @@ endfunction
|
||||
|
||||
"display the cached errors for this buf in the location list
|
||||
function! g:SyntasticLoclist.show()
|
||||
call setloclist(0, self.filteredRaw())
|
||||
if self.hasErrorsOrWarningsToDisplay()
|
||||
call setloclist(0, self.filteredRaw())
|
||||
let num = winnr()
|
||||
exec "lopen " . g:syntastic_loc_list_height
|
||||
if num != winnr()
|
||||
|
@ -9,7 +9,11 @@ let s:defaultCheckers = {
|
||||
\ 'cpp': ['gcc'],
|
||||
\ 'html': ['tidy'],
|
||||
\ 'java': ['javac'],
|
||||
\ 'javascript': ['jshint', 'jslint'],
|
||||
\ 'objc': ['gcc'],
|
||||
\ 'objcpp': ['gcc'],
|
||||
\ 'perl': ['perl'],
|
||||
\ 'python': ['python', 'flake8', 'pylint'],
|
||||
\ 'php': ['php', 'phpcs', 'phpmd'],
|
||||
\ 'ruby': ['mri']
|
||||
\ }
|
||||
|
@ -1,6 +1,6 @@
|
||||
"============================================================================
|
||||
"File: checkpatch.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim using checkpatch.pl
|
||||
"Description: Syntax checking plugin for syntastic.vim using checkpatch.pl
|
||||
"Maintainer: Daniel Walker <dwalker at fifo99 dot com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
@ -8,10 +8,10 @@
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
if exists("loaded_checkpatch_syntax_checker")
|
||||
if exists("g:loaded_syntastic_c_checkpatch_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_checkpatch_syntax_checker = 1
|
||||
let g:loaded_syntastic_c_checkpatch_checker = 1
|
||||
|
||||
" Bail if the user doesn't have `checkpatch.pl` or ./scripts/checkpatch.pl installed.
|
||||
if executable("checkpatch.pl")
|
||||
|
@ -10,10 +10,10 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists('loaded_make_syntax_checker')
|
||||
if exists('g:loaded_syntastic_c_make_checker')
|
||||
finish
|
||||
endif
|
||||
let loaded_make_syntax_checker = 1
|
||||
let g:loaded_syntastic_c_make_checker = 1
|
||||
|
||||
function SyntaxCheckers_c_make_IsAvailable()
|
||||
return executable('make')
|
||||
|
57
syntax_checkers/c/oclint.vim
Normal file
57
syntax_checkers/c/oclint.vim
Normal file
@ -0,0 +1,57 @@
|
||||
"============================================================================
|
||||
"File: oclint.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Maintainer: "UnCO" Lin <undercooled aT lavabit com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
"
|
||||
" The setting 'g:syntastic_oclint_config_file' allows you to define a file
|
||||
" that contains additional compiler arguments like include directories or
|
||||
" CFLAGS. The file is expected to contain one option per line. If none is
|
||||
" given the filename defaults to '.syntastic_oclint_config':
|
||||
"
|
||||
" let g:syntastic_oclint_config_file = '.config'
|
||||
|
||||
if exists("g:loaded_syntastic_c_oclint_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_c_oclint_checker = 1
|
||||
|
||||
function! SyntaxCheckers_c_oclint_IsAvailable()
|
||||
return executable("oclint")
|
||||
endfunction
|
||||
|
||||
if !exists('g:syntastic_oclint_config_file')
|
||||
let g:syntastic_oclint_config_file = '.syntastic_oclint_config'
|
||||
endif
|
||||
|
||||
function! SyntaxCheckers_c_oclint_GetLocList()
|
||||
let makeprg = syntastic#makeprg#build({
|
||||
\ 'exe': 'oclint',
|
||||
\ 'args': '-text',
|
||||
\ 'post_args': '-- -c' . syntastic#c#ReadConfig(g:syntastic_oclint_config_file),
|
||||
\ 'subchecker': 'oclint' })
|
||||
|
||||
let errorformat =
|
||||
\ '%E%f:%l:%c: %m P1 ,' .
|
||||
\ '%E%f:%l:%c: %m P2 ,' .
|
||||
\ '%W%f:%l:%c: %m P3 ,' .
|
||||
\ '%E%f:%l:%c: fatal error: %m,' .
|
||||
\ '%E%f:%l:%c: error: %m,' .
|
||||
\ '%W%f:%l:%c: warning: %m,' .
|
||||
\ '%-G%.%#'
|
||||
|
||||
return SyntasticMake({
|
||||
\ 'makeprg': makeprg,
|
||||
\ 'errorformat': errorformat,
|
||||
\ 'subtype': 'Style',
|
||||
\ 'postprocess': ['compressWhitespace', 'sort'] })
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'c',
|
||||
\ 'name': 'oclint'})
|
@ -16,10 +16,10 @@
|
||||
"
|
||||
" let g:syntastic_sparse_config_file = '.config'
|
||||
|
||||
if exists("loaded_sparse_syntax_checker")
|
||||
if exists("g:loaded_syntastic_c_sparse_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_sparse_syntax_checker = 1
|
||||
let g:loaded_syntastic_c_sparse_checker = 1
|
||||
|
||||
function! SyntaxCheckers_c_sparse_IsAvailable()
|
||||
return executable("sparse")
|
||||
|
@ -16,10 +16,10 @@
|
||||
"
|
||||
" let g:syntastic_splint_config_file = '.config'
|
||||
|
||||
if exists("loaded_splint_syntax_checker")
|
||||
if exists("g:loaded_syntastic_c_splint_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_splint_syntax_checker = 1
|
||||
let g:loaded_syntastic_c_splint_checker = 1
|
||||
|
||||
function! SyntaxCheckers_c_splint_IsAvailable()
|
||||
return executable("splint")
|
||||
|
@ -10,10 +10,10 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("loaded_ycm_c_syntax_checker")
|
||||
if exists("g:loaded_syntastic_c_ycm_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_ycm_c_syntax_checker = 1
|
||||
let g:loaded_syntastic_c_ycm_checker = 1
|
||||
|
||||
function! SyntaxCheckers_c_ycm_IsAvailable()
|
||||
return exists('g:loaded_youcompleteme')
|
||||
|
@ -21,7 +21,6 @@ endfunction
|
||||
function! SyntaxCheckers_coffee_coffee_GetLocList()
|
||||
let makeprg = syntastic#makeprg#build({
|
||||
\ 'exe': 'coffee',
|
||||
\ 'args': '--lint',
|
||||
\ 'subchecker': 'coffee' })
|
||||
let errorformat =
|
||||
\ '%E%f:%l:%c: %trror: %m,' .
|
||||
|
36
syntax_checkers/cpp/oclint.vim
Normal file
36
syntax_checkers/cpp/oclint.vim
Normal file
@ -0,0 +1,36 @@
|
||||
"============================================================================
|
||||
"File: oclint.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Maintainer: "UnCO" Lin <undercooled aT lavabit com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
"
|
||||
" The setting 'g:syntastic_oclint_config_file' allows you to define a file
|
||||
" that contains additional compiler arguments like include directories or
|
||||
" CFLAGS. The file is expected to contain one option per line. If none is
|
||||
" given the filename defaults to '.syntastic_oclint_config':
|
||||
"
|
||||
" let g:syntastic_oclint_config_file = '.config'
|
||||
|
||||
if exists("g:loaded_syntastic_cpp_oclint_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_cpp_oclint_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/oclint.vim
|
||||
|
||||
function! SyntaxCheckers_cpp_oclint_IsAvailable()
|
||||
return SyntaxCheckers_c_oclint_IsAvailable()
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_cpp_oclint_GetLocList()
|
||||
return SyntaxCheckers_c_oclint_GetLocList()
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'cpp',
|
||||
\ 'name': 'oclint'})
|
@ -10,10 +10,10 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("loaded_ycm_cpp_syntax_checker")
|
||||
if exists("g:loaded_syntastic_cpp_ycm_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_ycm_cpp_syntax_checker = 1
|
||||
let g:loaded_syntastic_cpp_ycm_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/ycm.vim
|
||||
|
||||
|
@ -36,8 +36,7 @@ function! SyntaxCheckers_javascript_jshint_GetLocList()
|
||||
endfunction
|
||||
|
||||
function s:JshintNew()
|
||||
let ver = matchlist(system('jshint --version'), '^\D*\(\d\+\)\.\(\d\+\)')
|
||||
return (ver[1] > 1 || (ver[1] == 1 && ver[2] >= 1))
|
||||
return syntastic#util#versionIsAtLeast(syntastic#util#parseVersion('jshint --version'), [1, 1])
|
||||
endfunction
|
||||
|
||||
function s:Args()
|
||||
|
36
syntax_checkers/objc/oclint.vim
Normal file
36
syntax_checkers/objc/oclint.vim
Normal file
@ -0,0 +1,36 @@
|
||||
"============================================================================
|
||||
"File: oclint.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Maintainer: "UnCO" Lin <undercooled aT lavabit com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
"
|
||||
" The setting 'g:syntastic_oclint_config_file' allows you to define a file
|
||||
" that contains additional compiler arguments like include directories or
|
||||
" CFLAGS. The file is expected to contain one option per line. If none is
|
||||
" given the filename defaults to '.syntastic_oclint_config':
|
||||
"
|
||||
" let g:syntastic_oclint_config_file = '.config'
|
||||
|
||||
if exists("g:loaded_syntastic_objc_oclint_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_objc_oclint_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/oclint.vim
|
||||
|
||||
function! SyntaxCheckers_objc_oclint_IsAvailable()
|
||||
return SyntaxCheckers_c_oclint_IsAvailable()
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_objc_oclint_GetLocList()
|
||||
return SyntaxCheckers_c_oclint_GetLocList()
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'objc',
|
||||
\ 'name': 'oclint'})
|
@ -10,10 +10,10 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("loaded_ycm_objc_syntax_checker")
|
||||
if exists("g:loaded_syntastic_objc_ycm_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_ycm_objc_syntax_checker = 1
|
||||
let g:loaded_syntastic_objc_ycm_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/ycm.vim
|
||||
|
||||
|
36
syntax_checkers/objcpp/oclint.vim
Normal file
36
syntax_checkers/objcpp/oclint.vim
Normal file
@ -0,0 +1,36 @@
|
||||
"============================================================================
|
||||
"File: oclint.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Maintainer: "UnCO" Lin <undercooled aT lavabit com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
"
|
||||
" The setting 'g:syntastic_oclint_config_file' allows you to define a file
|
||||
" that contains additional compiler arguments like include directories or
|
||||
" CFLAGS. The file is expected to contain one option per line. If none is
|
||||
" given the filename defaults to '.syntastic_oclint_config':
|
||||
"
|
||||
" let g:syntastic_oclint_config_file = '.config'
|
||||
|
||||
if exists("g:loaded_syntastic_objcpp_oclint_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_objcpp_oclint_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/oclint.vim
|
||||
|
||||
function! SyntaxCheckers_objcpp_oclint_IsAvailable()
|
||||
return SyntaxCheckers_c_oclint_IsAvailable()
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_objcpp_oclint_GetLocList()
|
||||
return SyntaxCheckers_c_oclint_GetLocList()
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'objcpp',
|
||||
\ 'name': 'oclint'})
|
@ -10,10 +10,10 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("loaded_ycm_objcpp_syntax_checker")
|
||||
if exists("g:loaded_syntastic_objcpp_ycm_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_ycm_objcpp_syntax_checker = 1
|
||||
let g:loaded_syntastic_objcpp_ycm_checker = 1
|
||||
|
||||
runtime syntax_checkers/c/ycm.vim
|
||||
|
||||
|
@ -33,19 +33,14 @@ endif
|
||||
|
||||
function! s:PuppetVersion()
|
||||
if !exists("s:puppet_version")
|
||||
let output = system("puppet --version 2>/dev/null")
|
||||
let output = substitute(output, '\n$', '', '')
|
||||
let s:puppet_version = split(output, '\.')
|
||||
let s:puppet_version = syntastic#util#parseVersion("puppet --version 2>/dev/null")
|
||||
endif
|
||||
return s:puppet_version
|
||||
endfunction
|
||||
|
||||
function! s:PuppetLintVersion()
|
||||
if !exists("s:puppet_lint_version")
|
||||
let output = system("puppet-lint --version 2>/dev/null")
|
||||
let output = substitute(output, '\n$', '', '')
|
||||
let output = substitute(output, '^puppet-lint ', '', 'i')
|
||||
let s:puppet_lint_version = split(output, '\.')
|
||||
let s:puppet_lint_version = syntastic#util#parseVersion("puppet-lint --version 2>/dev/null")
|
||||
endif
|
||||
return s:puppet_lint_version
|
||||
endfunction
|
||||
|
@ -21,19 +21,16 @@ endfunction
|
||||
|
||||
function! s:SlimrbVersion()
|
||||
if !exists('s:slimrb_version')
|
||||
let output = system("slimrb --version 2>/dev/null")
|
||||
let output = substitute(output, '\n$', '', '')
|
||||
let output = substitute(output, '^slim ', '', 'i')
|
||||
let s:slimrb_version = split(output, '\.')
|
||||
let s:slimrb_version = syntastic#util#parseVersion('slimrb --version 2>/dev/null')
|
||||
end
|
||||
return s:slimrb_version
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_slim_slimrb_GetLocList()
|
||||
let makeprg = syntastic#makeprg#build({
|
||||
\ 'exe': 'slimrb',
|
||||
\ 'args': '-c',
|
||||
\ 'subchecker': 'slimrb' })
|
||||
\ 'exe': 'slimrb',
|
||||
\ 'args': '-c',
|
||||
\ 'subchecker': 'slimrb' })
|
||||
if syntastic#util#versionIsAtLeast(s:SlimrbVersion(), [1,3,1])
|
||||
let errorformat =
|
||||
\ '%C\ %#%f\, Line %l\, Column %c,'.
|
||||
|
50
syntax_checkers/text/atdtool.vim
Normal file
50
syntax_checkers/text/atdtool.vim
Normal file
@ -0,0 +1,50 @@
|
||||
"============================================================================
|
||||
"File: atdtool.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Maintainer: LCD 47 <lcd047 at gmail dot com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("g:loaded_syntastic_text_atdtool_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_text_atdtool_checker = 1
|
||||
|
||||
function! SyntaxCheckers_text_atdtool_IsAvailable()
|
||||
return executable('atdtool')
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_text_atdtool_GetHighlightRegex(item)
|
||||
return matchstr(a:item['text'], '\m "\zs[^"]\+\ze"\($\| | suggestions:\)')
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_text_atdtool_GetLocList()
|
||||
let makeprg = syntastic#makeprg#build({
|
||||
\ 'exe': 'atdtool',
|
||||
\ 'tail': '2>/dev/null',
|
||||
\ 'subchecker': 'atdtool' })
|
||||
|
||||
let errorformat =
|
||||
\ '%W%f:%l:%c: %m,'.
|
||||
\ '%+C suggestions:%.%#'
|
||||
|
||||
let loclist = SyntasticMake({
|
||||
\ 'makeprg': makeprg,
|
||||
\ 'errorformat': errorformat,
|
||||
\ 'subtype': 'Style' })
|
||||
|
||||
for n in range(len(loclist))
|
||||
let loclist[n]['text'] = substitute(loclist[n]['text'], '\n\s\+', ' | ', 'g')
|
||||
endfor
|
||||
|
||||
return loclist
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'text',
|
||||
\ 'name': 'atdtool'})
|
@ -22,6 +22,11 @@
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists("g:loaded_syntastic_vala_valac_checker")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_vala_valac_checker = 1
|
||||
|
||||
function! SyntaxCheckers_vala_valac_IsAvailable()
|
||||
return executable('valac')
|
||||
endfunction
|
||||
|
@ -9,10 +9,10 @@
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"
|
||||
"============================================================================
|
||||
if exists("loaded_vhdl_ghdl_syntax_checker")
|
||||
if exists("g:loaded_syntastic_vhdl_ghdl_checker")
|
||||
finish
|
||||
endif
|
||||
let loaded_vhdl_ghdl_syntax_checker = 1
|
||||
let g:loaded_syntastic_vhdl_ghdl_checker = 1
|
||||
|
||||
function! SyntaxCheckers_vhdl_ghdl_IsAvailable()
|
||||
return executable("ghdl")
|
||||
|
Loading…
Reference in New Issue
Block a user