If the line a ruby error occurs on is 'too long' it will truncate the line it
displays in the error output and wrap it in `...`. This breaks %p from finding
the correct column so this patch ignores lines starting with `...`
e.g. %p working
```
ruby -w -T1 -c broken.rb
broken.rb:2: syntax error, unexpected tIDENTIFIER, expecting $end
puts sprintf "%d, %.2f, %.2f, %.2f, %d" k, v
^
```
%p not working
```
ruby -w -T1 -c broken.rb
broken.rb:2: syntax error, unexpected tIDENTIFIER, expecting $end
...tf "%d, %.2f, %.2f, %.2f, %d" k, v[:cost], v[:val], v[:carri...
... ^
```
Sass partials depend on their parents files for context. This patch disables the
syntax checking for partials by default because of this. To enable checking of
partials let g:syntastic_sass_check_partials = 1. Fixes issue #300.
Using lessc to check a less file results in a NameError if the file references a
variable defined in a file that inherits it. This commit adds a new linter that
just calls the less parser instead. The variable g:syntastic_less_use_less_lint
should be set to use the linter over lessc.
The original fix for issue #7 used sed and didn't update the `executable` check
from cat to sed. This patch uses String.gsub when parsing an erb file instead,
as sed isn't neccesarily available.
The HTML5 <source> tag throws an error when using Tidy since exceptions
have been made for audio and video, we should also support the source
tag which can exist inside these calls.
slightly modified version of the C checker. I did a find/replace to make
it use "_objc_" instead of "_c_" . I also modified the errorformat to
look more like the cpp errorformat because I discovered that the entries
added to the C errorformat no longer seem to match anything.
The code to generate the makeprg was an epic jumble. Break it down into
separate methods.
Also, init several options at the top of the script and make some
executable() checks at the same time. This clears up some of the clutter
and means we only check it once - not on every syntax check.
999d3c1b added a filter on the errors list that checks for key/value
valid:1 in each element of the errors list. sh.vim doesn't use
SyntasticMake to check for errors so needs to add {valid:1} to each
result.