Commit Graph

325 Commits

Author SHA1 Message Date
LCD 47
a4fa3234f7 Bug fix: wrong variable scope. 2013-08-05 12:57:14 +03:00
LCD 47
d3ded273d3 Merge branch 'master' into preprocess 2013-08-05 09:41:35 +03:00
LCD 47
de9d56121b Add option "syntastic_aggregate_errors". 2013-08-05 09:25:33 +03:00
LCD 47
ac87fd1346 Give up trying to use readfile(). 2013-08-03 19:09:39 +03:00
LCD 47
903b5343e8 Typo. 2013-08-03 18:50:06 +03:00
LCD 47
e6091a998c Fix command output redirection. Cleanup. 2013-08-03 08:29:22 +03:00
LCD 47
4a35ee8ca4 Fix shellpipe expansion again. 2013-08-02 17:00:53 +03:00
LCD 47
8f40f27d59 Fix shellpipe expansion. 2013-08-02 13:10:14 +03:00
LCD 47
05dea5febe Fix shell escaping. 2013-08-02 11:06:48 +03:00
LCD 47
cc5ecf2bdb Replace lmake with equivalent system + lgetexpr.
It's now possible to deal with \0 characters in checkers' output.
Shell escaping is saner and safer.
SyntasticMake() has a new option 'preprocess'.
Checkers html/validator and eruby/ruby now use the new preprocess
option.  Auxilliary script validator_decode.awk is no longer needed.
2013-08-01 13:40:29 +03:00
LCD 47
65c852cf25 Add a SyntasticReset command. 2013-07-30 23:09:47 +03:00
LCD 47
d82ee05a80 Add filetype maps for lhaskell and gentoo-metadata.
Remove checker for gentoo-metadata, since this is now an alias.
2013-07-29 18:16:54 +03:00
LCD 47
60578c35d2 Bug fix: g:syntastic_auto_jump should jump on checks, not on writes. 2013-07-15 18:37:37 +03:00
LCD 47
8c05dbf16e A first attempt at checking the exit code from the checkers. 2013-07-12 08:08:41 +03:00
LCD 47
90259bde00 New knob: g:syntastic_full_redraws. 2013-07-11 10:04:26 +03:00
LCD 47
6ba8e651cb Make shell escaping less produce fewer useless quotes.
Function inspired by tpope's vim-dispatch.
2013-07-04 21:04:20 +03:00
LCD 47
4708539690 Typo. 2013-06-29 20:54:08 +03:00
LCD 47
9dfc53c9c7 Optimisation: avoid placing duplicate signs. 2013-06-22 20:01:22 +03:00
LCD 47
e291f9f06d Bug fix: add enabled/disabled guards to notifiers.
Also handle the case when user disables notifiers after the first run.
This doesn't work for signs though, since it causes an ugly flicker in
the common case.
2013-06-22 08:03:03 +03:00
LCD 47
6a0dc699e0 Make cursor echo handle include files. 2013-06-21 20:48:17 +03:00
LCD 47
3a322a700f Registry defaults for puppet. 2013-06-18 18:53:28 +03:00
LCD 47
60675868d7 Stop spamming the user about the active checkers. 2013-06-16 06:40:28 +03:00
LCD 47
4f5320f2cb Debug message: shell return value. 2013-06-15 08:28:04 +03:00
LCD 47
af9d6f627b Print a message if no active checkers are found. 2013-06-15 07:36:20 +03:00
LCD 47
da7002516b Added option 'cwd' to SyntasticMake(). 2013-06-11 21:36:44 +03:00
LCD 47
6574872b55 Preserve order in checker lists. Fixes #684.
Keep order from g:syntastic_[filetype]_checkers and s:defaultCheckers in
getActiveCheckers().  Keep order in syntastic#util#unique().
2013-06-10 23:14:59 +03:00
LCD 47
7a919a4d0a Bug fix: getwinvar() got its third argument only in Vim 7.3.831. 2013-06-07 22:23:56 +03:00
LCD 47
a8f4e0e327 Add filetype to the status line of the location window. 2013-06-07 00:50:16 +03:00
LCD 47
4c888855d6 Sets the status line of the location window.
Shows the command used to produce the error list on the status line of
the location window.  Also fixed a (harmless) refresh bug.
2013-06-07 00:34:05 +03:00
LCD 47
9b698bb32b Reset locales when running lmake. Fixes #665. 2013-06-06 13:06:10 +03:00
LCD 47
8f430620c2 Cleanup: method naming. 2013-06-01 07:45:42 +03:00
LCD 47
d3354f175c Make syntastic#makeprg#build() aware of filetypes. Fixes #667. 2013-05-31 21:05:45 +03:00
LCD 47
e903f48b10 Merge branch 'ft_aliases' 2013-05-31 20:41:41 +03:00
LCD 47
e6bb7bd4c6 Bug fix: :SyntasticInfo didn't return information for composite filetypes. 2013-05-31 19:06:33 +03:00
LCD 47
1e8cc9e506 Added some registry defaults. 2013-05-31 14:37:51 +03:00
LCD 47
48b934b8aa Adds filetype aliases.
This allows checking of files with non-standard filetypes.
2013-05-31 10:19:52 +03:00
LCD 47
bad592ece8 Minor fixes. 2013-05-30 19:08:12 +03:00
LCD 47
d205c97e95 Clear loclist if there are no errors. Fixes #650. 2013-05-27 09:23:09 +03:00
LCD 47
4d9a8338e1 Minor optimisation related to syntastic_ignore_files. 2013-05-23 11:50:26 +03:00
Martin Grenfell
86fdb12540 Merge remote-tracking branch 'origin/modemap_ignore' 2013-05-17 15:58:07 +01:00
LCD 47
7b5b259d89 More fixes backported from the buffers branch. 2013-05-15 09:04:34 +03:00
LCD 47
8a998efe54 Backport of small fixes from the buffers branch. 2013-05-14 20:21:57 +03:00
LCD 47
8d47df65d2 Adds an option g:syntastic_ignore_files.
List of regexps specifying files that should neither be checked, nor
included in error lists.  The full paths of files are matched against
these regexps, and the matches are case sensitive.
2013-05-14 11:14:49 +03:00
LCD 47
7319cb6a9e Postprocessing functions.
This patch adds an option 'postprocess' to SyntasticMake().  The value
of this option is a list of names.  Each name is translated to a
function syntastic#postprocess#name().  These functions are applied in
order to the list of errors just before SyntasticMake() returns.  They
take a single parameter, the list of errors, and are supposed to
returned the processed list.
2013-05-10 14:11:07 +03:00
LCD 47
7f0412e91d Added an option to skip checks on :wq, :x, and :ZZ, try 2. 2013-05-06 20:18:02 +03:00
LCD 47
431508e19e Fix for #641: back off 003751a. 2013-05-06 19:26:45 +03:00
LCD 47
003751a48d Be less wastefull about loclists.
This is a first step towards making :lolder and :lnewer work with
Syntastic.  It still has a long way to go: a new loclist is now craeted
at each run of SyntasticMake(), but the notification machinery can only
use the last one.  Ideally a single loclist would be created per window
and then reused.
2013-05-04 09:36:52 +03:00
LCD 47
f7508703d6 Call notifiers.reset() only for enabled notifiers. 2013-05-03 09:24:34 +03:00
LCD 47
4d694ad920 The QuitPre event was added in Vim 7.3.544. 2013-04-27 18:06:18 +03:00
LCD 47
c9b9a9ef5e Fix for #624.
Handle closing the loclist window in a QuitPre.
Remove the prematurely added option g:syntastic_allow_quit.
2013-04-27 13:59:19 +03:00
LCD 47
63ec78cfb1 Adds an option "syntastic_allow_quit". 2013-04-26 16:20:43 +03:00
Martin Grenfell
b72d9e57da add :SyntasticInfo command to echo info about current checkers
Closes #557
2013-04-13 23:36:18 +01:00
Martin Grenfell
49b6012f98 add basic deprecation warning system 2013-04-13 17:19:24 +01:00
Martin Grenfell
a9938e0afd Merge remote-tracking branch 'origin/notifiers'
Conflicts:
	autoload/syntastic/util.vim
2013-04-13 17:05:18 +01:00
Martin Grenfell
fbbb30295b add a simple debug message system
We may want to add debug messages at many points. We can add them as we
find we need them - i.e. when debugging stuff with users.
2013-04-13 16:51:23 +01:00
Martin Grenfell
a7fcf4cad2 Merge branch 'notifiers' 2013-04-13 16:11:14 +01:00
Martin Grenfell
e3f5958b7d bump to version 3.0.0 2013-04-13 16:02:03 +01:00
LCD 47
3083df59fc Addresses #530.
If variable g:syntastic_[filetype]_checker is found in user's config,
g:syntastic_[filetype]_checkers is set and a warning is issued.
2013-04-13 11:04:47 +03:00
LCD 47
4e32123b53 Make the enabled() method optional. 2013-04-11 23:49:39 +03:00
LCD 47
0248a848d3 Minor bug fix. 2013-04-10 13:48:19 +03:00
LCD 47
fac0d46c85 Rename signer.vim -> signs.vim. 2013-04-10 13:45:18 +03:00
LCD 47
11380c2d51 Minor cleanup.
Warning signs should not overwrite error ones.
Use buffers instead of file names when placing signs.
Other minor changes.
2013-04-10 13:40:03 +03:00
LCD 47
31b654301b Fix for #597.
If the first error in the location list refers to a file that isn't
loaded, entering the quickfix window would close it.

If `hidden` is set, `:quit`-ing the main file would not close the
quickfix window.
2013-04-09 18:20:14 +03:00
Martin Grenfell
2b6f6a5724 move s:Loclist() into SyntasticLoclist as a class method 2013-04-09 09:52:02 +01:00
LCD 47
92a25ed1a2 More cleaning up.
Renames notification classes.
Fixes a stupid bug related to the cursor notifier.
2013-04-09 01:10:17 +03:00
LCD 47
90dce6d3e7 Cleanup.
Makes cursor a standard notifier.
Adds a method enabled() to the notifiers.
Adds an optional method reset() to the notifiers.
2013-04-09 00:24:54 +03:00
Martin Grenfell
9a7db4a50b move a couple of options out into relevant notifiers 2013-04-07 23:30:24 +01:00
Martin Grenfell
dc3d80a204 more refactors to the Notifier classes
Move the autoloc list toggling out into its own notifier class.

Move the function that echos the error on the current line out into its
own notifier.

A few other changes were required in the process:
* move s:WideMsg() out into syntastic#util autoload lib so it is
  available from the cursor notifier.
* move s:ShowLocList() into the LocList class so it is available for
  the autoloclist notifier
* move s:HideLocList() into Loclist as a class method mainly to keep the
  two show/hide methods together
* move the s:old_line var into the Cursor notifier where it is needed
2013-04-07 23:06:02 +01:00
LCD 47
0deeefd08e Notifiers refactor.
Creates a notifier class.
Changes the existing signer class to fit the new notifier.
Moves balloons and highlighting to their own classes.
Caches and speeds up EchoCurrentError().
Adds all relevant messages to balloons rather than using the first one.
Fixes yet another (minor) bug related to g:syntastic_quiet_warnings.
2013-04-07 22:10:26 +03:00
LCD 47
01232979aa Fix signs initialization.
Signs should be initialized even if they aren't enabled at startup.
2013-04-06 23:10:27 +03:00
LCD 47
ba13a3d4b5 Fix shell pipe hack. 2013-04-06 21:58:38 +03:00
LCD 47
e473038e66 Fixes handling of g:syntastic_quiet_warnings.
Fixes signs (leftover from commit 878bcea).
2013-04-06 21:19:30 +03:00
LCD 47
878bceaac7 Fixes handling of g:syntastic_quiet_warnings. 2013-04-03 21:53:56 +03:00
LCD 47
bd226bb026 Minor cleanup. 2013-04-03 11:45:06 +03:00
LCD 47
1f262ff3bc Skip running in special buffers. 2013-04-02 15:30:58 +03:00
Martin Grenfell
78f345bab3 extract the vim work around code out to be more explicit
Add an explaining variable and a comment for the vcol workaround. See
issue #588
2013-03-28 23:28:41 +00:00
Martin Grenfell
46cd844a55 Merge remote-tracking branch 'lcd047/vcol' 2013-03-28 23:23:26 +00:00
Martin Grenfell
19a502d3ba bugfix for sourcing the syntastic class files
Fixes #543.

Use `runtime!` to source all runtime files - not just the first one
found. I actually dont know how syntastic was working at all without
this...
2013-03-28 23:04:58 +00:00
LCD 47
ec386f6b5d Bug fix. 2013-03-28 23:11:05 +02:00
LCD 47
b9dc0829ef Fixes the sparse checker.
Also allows %v to be used in errorformat.
2013-03-27 16:06:47 +02:00
Martin Grenfell
bf99882563 Merge pull request #262 from powerman/E855-on-lclose
Fix E855 on :lclose
2013-03-25 02:49:32 -07:00
Yosuke ONOUE
01ce9e3daf Fixed error on SyntasticToggleMode. 2013-03-25 14:16:58 +09:00
Martin Grenfell
d35e273d33 move the modemap code out into its own class 2013-03-22 22:50:47 +00:00
Martin Grenfell
925ba796c9 move the sign options into the sign class file 2013-03-22 18:08:27 +00:00
Martin Grenfell
84aae9b87f fix some guards 2013-03-22 18:07:50 +00:00
Martin Grenfell
5dfde8e151 add syntastic_always_populate_loc_list option
We dont want to set the loc list by default since syntastic isnt the
only plugin using loclists - and we dont want to clobber other peoples
loclists.

This option allows the user to override this behaviour if it suits their
workflow.
2013-03-21 17:46:14 +00:00
Martin Grenfell
6193c99f69 extract the sign code out into its own class 2013-03-21 17:46:13 +00:00
Martin Grenfell
fd90fdf9f4 SyntasticChecker: extract out the highlight regex population code 2013-03-18 10:01:56 +00:00
LCD 47
0906a5c5d1 Cleanup: a simpler and more efficient approach. 2013-03-18 10:01:56 +00:00
Harsh Doshi
3d736681ea redraw! causes screen flicker in mvim too 2013-03-15 17:20:41 -07:00
Martin Grenfell
75a234231b fix sign highlight groups
Seems that `:sign define ... texthl=bar` causes `hlexists('bar')` to
return true.

So set up the highlight groups before the signs - otherwise they will
never be set up by default.
2013-03-08 17:50:24 +00:00
Christian Höltje
2f4fc38053 Renamed version check function
Moved the `SyntasticIsVersionAtLeast()` into `util.vim` as
`syntastic#util#versionIsAtLeast()` as per @scrooloose's suggestion.
2013-03-08 11:58:49 -05:00
Christian Höltje
3dc0b6dc24 Made SyntacticIsVersionAtLeast more robust
It now handles more cases, which will cause Syntastic to degrade better
when commands return weird versions (e.g. the command crashes).
2013-03-08 11:51:39 -05:00
Martin Grenfell
034727a04c Merge pull request #528 from jszakmeister/add-highlight-groups
Add highlight groups for the signs and the lines.
2013-03-08 07:09:10 -08:00
Martin Grenfell
531a069c1a fix syntastic_auto_jump functionality
Previously we removed the code to automatically set the loclist and only
set it when required. This was needed because otherwise we could
interfere with other plugins that use the loclist.

Add the call to setloclist back in only if syntastic_auto_jump is set.
This will blow away the loclist every time the file is checked, but
setting syntastic_auto_jump is the users choice.

Fixes #533
2013-03-08 15:04:22 +00:00
LCD 47
ff3c05a413 Fix syntax highlighting.
The variable force_highlight_callback is gone.

Highlight functions are now consistently named
SyntaxCheckers_<filetype>_<checker>_GetHighlightRegex(), and they
take precedence over highlighting based on column.
2013-03-08 14:45:57 +00:00
David Barnett
a4a2867e8e Add support for buffer-local b:syntastic_checkers var. 2013-02-24 21:35:57 -08:00
John Szakmeister
10697a6952 Add highlight groups for the signs and the lines.
This allows users to customize the coloring of Syntastic's signs, and
also provides them a way to highlight the entire line using :sign's
linehl feature.  It preserves the current default behavior of using
the error and todo highlight groups if the customized ones aren't
present.  If the linehl group doesn't exist, then it's the same as not
specifying one, so no special highlighting for the line will occur.
2013-02-23 07:13:57 -05:00
Martin Grenfell
8cc63c729a be more strict with default checker settings
If a filetype has default checker settings, then only allow those
checkers to be used by default. The user must manually specify other
checkers to use if they dont want the default.

In future the `s:defaultCheckers` hash should be more complex (or
possibly an object) that allows us to specify "only" vs "preferred".

This change was made in response to the html filetype using the w3
checker when tidy is not installed.
2013-02-21 16:50:39 +00:00
Martin Grenfell
924cf68c2e add a function to get the active checker names for a filetype 2013-02-09 17:49:01 +00:00