Commit Graph

356 Commits

Author SHA1 Message Date
LCD 47
a9e3b52c73 Add default checkers for all filetypes. 2013-11-08 17:28:41 +02:00
LCD 47
8922dc2388 Cleanup related to the HighlightRegex() functions. 2013-11-07 18:27:11 +02:00
LCD 47
1a5bf0118a Cleanup related to the HighlightRegex() functions. 2013-11-07 18:24:10 +02:00
LCD 47
6d81ac5dd0 Registry cleanup, stage 3.
Make syntastic#makeprg#build() a dictionary function.
Remove the mandatory checker argument to syntastic#makeprg#build().
2013-11-02 10:44:06 +02:00
LCD 47
3694908d05 Registry cleanup, stage 2.
(1) Checkers now have an _exec attribute, and an accessor getExec().
(2) CreateAndRegisterChecker() initializes _exec from an optional argument
'exec'.  If this argument is missing, 'name' is used instead.
(3) Functions SyntaxCheckers_*_IsAvailable() are now dictionary functions.
(4) Functions SyntaxCheckers_*_IsAvailable() are now optional.  When
they are missing, they are assumed to return executable(expand(self.getExec())).
(5) Argument 'exe' of function syntastic#makeprg#build() is now optional.
If this argument is missing, expand(self.getExec()) is used to set checker
executables.
2013-11-02 10:44:06 +02:00
LCD 47
28bce98a68 Registry cleanup, stage 1.
Make SyntaxCheckers_*_GetLocList() dictionary functions.
Pass a reference to the current checker to syntastic#makeprg#build().
Add an optional 'redirect' argument to CreateAndRegisterChecker().
Change the sh checker to use the new dictionary functions.
Add a new registry method getLocListRaw() (needed for the sh checker).
2013-11-02 10:44:06 +02:00
LCD 47
14cb306414 New option g:syntastic_id_checkers.
Default: 1.  There is also a local version b:syntastic_id_checkers.
2013-11-02 10:39:06 +02:00
LCD 47
c2e1429c4e Reword the message given by SyntasticInfo. 2013-11-01 16:51:50 +02:00
LCD 47
cd1d1a2a55 Cleanup. 2013-11-01 11:51:04 +02:00
LCD 47
e67e5998da Moved initialization of g:syntastic_delayed_redraws to util.vim. 2013-10-30 07:21:46 +02:00
LCD 47
f623d1ea05 Workaround for a Vim crash.
Older versions of Vim can crash if redraw is called while a popup is
visible.  This commit adds a variable g:syntastic_delayed_redraws that
instructs syntastic to move redraws to a CursorHold / CursorHoldI
handler if redraw is called while pumvisible() is true.
2013-10-29 09:09:34 +02:00
LCD 47
022c49371f Check for a minimal set of Vim features at startup. 2013-10-29 01:15:44 +02:00
LCD 47
c87d17444f Make syntastic re-read g:syntastic_mode_map at every check. 2013-10-28 21:53:10 +02:00
LCD 47
8eba8c3a45 Update version string. 2013-10-28 20:29:10 +02:00
LCD 47
c8e173c4ef Make g:syntastic_filetype_map apply to composite filetypes.
Normally composite types are handled by splitting them into simple
components, and applying the corresponding (simple) checkers.  This
behaviour can now be disabled, by mapping composite types to a simple
ones.
2013-10-28 08:20:21 +02:00
LCD 47
95aab2530e Try to avoid fun with magic / nomagic by qualifying regexps. 2013-10-25 15:46:16 +03:00
LCD 47
d238665385 Fix unwanted filter() and map() side effects. Minor cleanup. 2013-10-23 12:59:23 +03:00
LCD 47
d251ca822d Minor cleanup. 2013-09-27 10:35:46 +03:00
LCD 47
ce198e64bd Sanity check for shell redirections (shell=fish won't work). 2013-09-24 21:41:59 +03:00
LCD 47
c404f78e87 Save and restore local errorformat. 2013-09-20 01:04:35 +03:00
LCD 47
500bac5f64 Make 'litcoffee' filetype an alias to 'coffee'. 2013-09-20 01:01:57 +03:00
LCD 47
81e2e20892 Bug fix: split checker output into lines before preprocessing. 2013-08-16 01:31:22 +03:00
LCD 47
e6482164f8 Fix setting title of the error window.
Sadly this is slow.
2013-08-15 21:24:57 +03:00
LCD 47
205dc0b168 Minor bug fix: setting checker names in CacheErrors(). 2013-08-15 20:30:06 +03:00
LCD 47
929f92ddd6 Bug fix: allow loclist cleanup. 2013-08-13 17:48:37 +03:00
LCD 47
148021e348 Reuse loclists when possible, to allow :lolder and :lnewer.
This is not completely safe: if a loclist is created by something
other than syntastic before the error window is displayed, syntastic
will obliterate it.  There is currently no way to tell if a
loclist was created by syntastic or not.  Undocumented variable
g:syntastic_reuse_loc_lists can be used to disable reuse of loclists.
2013-08-13 09:31:43 +03:00
LCD 47
48208d46f8 Merge branch 'master' into preprocess 2013-08-09 15:33:34 +03:00
LCD 47
8901a8262e Add debug logging for syntastic_aggregate_errors. 2013-08-09 15:33:18 +03:00
LCD 47
548b816bab Merge branch 'master' into preprocess 2013-08-08 10:36:02 +03:00
LCD 47
572a36188d Reset only the LC_MESSAGES part of locales. 2013-08-08 10:30:57 +03:00
LCD 47
e0396dcdc0 Bug fix: wrong variable scope. 2013-08-05 12:57:50 +03:00
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