Commit Graph

18 Commits

Author SHA1 Message Date
LCD 47
d3354f175c Make syntastic#makeprg#build() aware of filetypes. Fixes #667. 2013-05-31 21:05:45 +03:00
Martin Grenfell
602bbe7b24 break down some error format strings
Most errorformats are now expressed 1 "clause" per line.
2013-05-14 17:36:20 +01:00
Martin Grenfell
fa46a82860 ruby/mri: add highlight regex function
Make it work for unused variable warnings
2013-03-18 13:38:30 +00:00
Josh Hoff
746d0c063f remove unused function (because of 2519d83) 2013-02-28 19:29:58 -06:00
Martin Grenfell
2519d83569 Merge pull request #483 from medlefsen/fix_mri_ruby
Ruby checker breaks with rvm when using "system" ruby
2013-02-26 07:46:37 -08:00
Martin Grenfell
16424e5761 add guards to all checkers
goddamn I love macros
2013-02-21 15:50:41 +00:00
Matt Edlefsen
c658f06756 Remove broken rvm handling in mri ruby checker
RVM does not always provide an executable for  specific ruby version
that is loaded (the "system" version).

RVM, or whatever else the user uses, should always setup "ruby" to point
to the correct version so this can always be used.
2013-02-05 07:07:52 -05:00
Martin Grenfell
033fb2763a fix a couple of bugs with ruby checkers 2013-01-27 23:59:25 +00:00
Martin Grenfell
e0b8e87c93 refactor all the syntax checkers to use the new API and dir layout 2013-01-27 20:08:30 +00:00
Martin Grenfell
6a184f0e37 update checkers to use the new syntastic#makeprg#build()
Make all the easy updates. There are still quite a few to do, but in
doing these ones I can see that syntastic#makeprg#build() needs to
accept a few more options. Namely:

* "postargs" that appear after the filename
* "tail" that appears after everything - used for things like
  redirecting output and piping to grep/sed/etc
* the filename itself - only the java checkers needed this since they
  specify the directory of the file to check as well

There are still a few other things to do as well:

* remove the options from the checkers that are now provided by
  syntastic#makeprg#build implicitly - i.e. the checker exe and args.
* also, we need to doc the above implicit checker options
2013-01-20 11:13:01 +00:00
Martin Grenfell
aa07bd7122 ruby: make the mri checker play nicer with RVM
Query RVM for the version of ruby that should be used to do the syntax
check.

This wont work if the user has different versions of ruby for different
directories (e.g. if they are using a project rvmrc) as it will only a
single ruby version per vim instance.

I think this should satisfy almost everyone though, so we can wait for
feedback before doing anything more hardcore.
2012-10-15 12:49:22 +01:00
Richard Brown
6c80fa9d59 ruby/mri: ignore efm lines that start ...
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...
...                               ^
```
2012-09-25 15:23:47 +01:00
Austin Ziegler
cfd41f1ca3 Enable user-specified Ruby interpreters.
On systems where Ruby 1.8.7 is the default Ruby and users use
alternative suffixes (e.g., ruby19) or even rbenv or rvm Rubies, modern
Ruby syntax will be highlighted as an error.

The default behaviour in Syntastic is to run 'ruby' to check the syntax
of the script in question. This patch allows the user to specify a
different binary which may even be a full path. This should work on all
platforms.

  let g:syntastic_ruby_exec = 'ruby19'
  let g:syntastic_ruby_exec = '~/.rbenv/versions/1.9.2-p318/bin/ruby'
2012-07-24 13:08:22 +01:00
Martin Grenfell
6818c45710 ruby/mri checker: fix a compatibility bug
The commit 0f73bbaf14 fixed compatibility
with ruby >= 1.9.3 but broke compatibility for ruby < 1.9.3
2012-07-19 11:10:05 +01:00
Frank Schumacher
0f73bbaf14 Fix warning suppression in MRI 1.9.3 2012-07-19 11:25:49 +02:00
Martin Grenfell
6e2b7dd190 ruby/mri checker: make it display warnings
Previously we were using "medium verbosity" with `-W1`. The reason for
this is because using full verbosity caused some bogus repeated warnings
to appear in rspec files.

Enable full verbosity again and filter out the bogus warnings.

Closes #290
2012-07-17 22:39:13 +01:00
Hong Xu
30d7462249 Remove some unnecessary win64 checks.
has('win32') is always true on Win64.
2012-05-08 20:31:20 +08:00
Martin Grenfell
630a57dfef ruby: add the structure for jruby support
* move the existing ruby checker to syntax_checkers/ruby/mri.vim
* add a skeleton checker for jruby
* load mri by default but add an option to specify which ruby checker to
  load

This is in response to #185
2012-03-02 17:38:39 +00:00