Commit Graph

506 Commits

Author SHA1 Message Date
LCD 47
98b64fd7b9 ruby-lint: add version check for "analyze". 2014-06-06 18:55:41 +03:00
LCD 47
3e8637ec49 New checker for sass and scss: sassc. 2014-06-05 00:23:01 +03:00
LCD 47
e058be3d01 Registry optimisation: lazy IsAvailable() calls. 2014-06-04 19:34:12 +03:00
LCD 47
284655357b Cabal checker: cleanup. 2014-05-31 11:52:52 +03:00
LCD 47
cc72b0dc66 Rename cabal/check --> cabal/cabal. 2014-05-31 11:19:33 +03:00
LCD 47
101a32bb2f coffeelint: option --csv is deprecated (@greenify). 2014-05-29 12:09:17 +03:00
LCD 47
b6a42d1871 Vim no longer allows setting signs on line 0. 2014-05-28 10:08:48 +03:00
LCD 47
576b84e2b7 Update installation instructions.
Update pathogen's address.
Change ; to && to stop early in case of error (@koalaman).
2014-05-27 11:40:15 +03:00
LCD 47
50518b335d Add separate highlighting groups for style messages (@kovidgoyal). 2014-05-11 20:34:32 +03:00
LCD 47
45a36bf2fc eslint: honour the exec parameter. 2014-05-10 22:29:15 +03:00
LCD 47
e7d1519f55 Cleanup for bro. 2014-05-09 11:54:59 +03:00
LCD 47
653a02a4c1 Some versions of phcs produce an extra column: fix errorformat. 2014-05-07 20:53:02 +03:00
LCD 47
02d07313aa Merge branch 'multi' 2014-05-06 11:14:50 +03:00
LCD 47
8c1c13e94e Contributing guide: add TOC; formatting. 2014-05-04 14:09:47 +03:00
LCD 47
dc02d66648 Update the contributing guide. Make :SyntasticInfo print version. 2014-05-04 13:58:25 +03:00
LCD 47
43e8cb955e More clisp fixes.
Give up trying to persuade clisp not leave behind junk files.
Fix errorformat.
2014-05-03 11:45:02 +03:00
LCD 47
24eab03135 clisp: fix argument order. 2014-05-02 21:04:09 +03:00
LCD 47
ad991127a6 New checker for less and css: recess (@pixelastic). 2014-04-30 10:27:01 +03:00
LCD 47
b9f741e57c Attempt at making multiple buffers work properly.
Propagate b:syntastic_loclist to all buffers mentioned in loclists.

Try to prevent inadvertent closing of the loclist window if all errors
are in included files, by saving the main buffer owner as a variable
local to the quicklist buffer.
2014-04-29 14:31:43 +03:00
LCD 47
75c439fc24 Manual: add a note about PowerShell. 2014-04-27 20:12:04 +03:00
LCD 47
2a770da3a0 GitHub has changed the addresses for user content. 2014-04-26 10:05:02 +03:00
LCD 47
9d4b173493 README: minor update.
The official way to install pathogen has changes slightly.
Add a link to the syntax checker guide.
2014-04-26 08:09:03 +03:00
LCD 47
4b00bf5b2e Python checkers: workaround for GNU readline brain damage.
On terms that support smm / rmm (f.i. xterm), initializing readline
prints the smm sequence, regardless of whether stdout is a terminal or
not, which in turn can make checkers' output unparseable.

Workaround: set TERM to dumb before calling the checkers.
2014-04-23 21:16:41 +03:00
LCD 47
3c07df5dfc Cleanup: lock some variables. 2014-04-23 14:45:21 +03:00
LCD 47
02cbebdfab Cleanup: fix two vimlint warnings. 2014-04-22 21:58:32 +03:00
LCD 47
125442f178 tslint: cleanup. 2014-04-21 13:07:39 +03:00
LCD 47
54bb9b4b8b haxe and dartanalyzer: fix syntax highlighting. 2014-04-21 08:41:44 +03:00
LCD 47
618b41428b Merge remote-tracking branch 'cww/master' 2014-04-19 10:14:05 +03:00
LCD 47
ebbcdd0c1a Cleanup for java/javac. 2014-04-19 10:03:53 +03:00
LCD 47
177292cafa Cleanup for the new aggregate_errors. 2014-04-19 09:09:48 +03:00
LCD 47
99cbe5d011 HTML Tidy: add a note about HTML Tidy for HTML5.
Some people seem to find it easier to look at the sources than read the wiki,
so mention HTML Tidy for HTML5 here, too. :)
2014-04-17 23:08:22 +03:00
LCD 47
4dbb652763 New option: syntastic_sort_aggregated_errors.
Aggregated error lists are now sorted by default.
2014-04-17 22:09:12 +03:00
LCD 47
68131a7679 Bug fix: error sorting.
Error sorting can't be done as a postprocess function called from
SyntasticMake(), since the final values of some relevant fields (f.i.
type) might not be known yet at that point.  Solution: move sorting to
getLocListRaw(), after per-checker quiet_messages.  New checker methods
getWantSort() / setWantSort() are needed.

Second problem: some checkers return screen columns mixed with byte
indices.  Solution: compute screen columns as needed.  Sadly, everything
about working with screen columns is fragile.
2014-04-16 22:16:40 +03:00
LCD 47
b4320f19dd oclint: option "-text" is obsolete. 2014-04-16 00:15:46 +03:00
LCD 47
4c18240e8d Formatting. 2014-04-15 09:09:37 +03:00
LCD 47
29843ed7fb Minor cleanup. 2014-04-14 12:08:27 +03:00
LCD 47
f161992c11 vimlint: a more efficient IsAvailable(). 2014-04-14 09:06:52 +03:00
LCD 47
4b9e87499d README: clarifications for calling multiple checkers. 2014-04-14 08:43:12 +03:00
LCD 47
41edfe34c7 New checker for plist XML: plutil. 2014-04-13 19:59:54 +03:00
LCD 47
81313611ae Manual: minor cleanup. 2014-04-10 10:56:20 +03:00
LCD 47
9cf21436ce New checker for haskell: scan. 2014-04-10 09:59:36 +03:00
LCD 47
62fde00516 Hdevtools: fix column calculations. Cleanup. 2014-04-10 09:45:11 +03:00
LCD 47
841087faba Hlint: fix column calculations. 2014-04-10 09:00:13 +03:00
LCD 47
30198e1091 Manual: add a note about vim-virtualenv. 2014-04-09 21:17:38 +03:00
LCD 47
6d05d1735a README: add anchors for FAQ items. 2014-04-02 22:47:09 +03:00
LCD 47
a62fc9eeba README: minor update. 2014-04-02 21:32:34 +03:00
LCD 47
82bff20b02 README: change address for YouCompleteMe. 2014-03-30 21:11:39 +03:00
LCD 47
8d2ac06820 Minor rephrase in the manual. 2014-03-30 21:10:20 +03:00
LCD 47
0c557bfca6 jshint: require version 1.0.0 or later. 2014-03-25 19:59:50 +02:00
LCD 47
a781914a16 Yet more pylint versioning delirium. 2014-03-24 15:03:50 +02:00
LCD 47
f6d584bc63 splint: add errorformat sequences for Windows. 2014-03-23 06:25:59 +02:00
LCD 47
94e0e73c4e Add a note to the manual about Eclim. 2014-03-20 07:34:49 +02:00
LCD 47
4ded4f4047 Expand a few config parameters. 2014-03-20 07:18:30 +02:00
LCD 47
c8f562f0f2 ESLint: add version check; expand config parameter. 2014-03-20 06:44:01 +02:00
LCD 47
dc6bb11215 Bump version number. 2014-03-10 15:54:00 +02:00
LCD 47
2850d4145a Minor cleanup. 2014-03-10 15:50:58 +02:00
LCD 47
da6520c69f \V<pattern> regexps can spell trouble if <pattern> contains backslashes. 2014-03-09 22:21:29 +02:00
LCD 47
223d00a0f0 phpcs is slow as a css checker, remove it from the defaults. 2014-03-09 22:00:12 +02:00
LCD 47
013b425c26 Make "g:syntastic_<filetype>_checkers = []" work as expected. 2014-03-08 21:36:36 +02:00
LCD 47
2eb60cb586 Version tracking. 2014-03-08 09:27:21 +02:00
LCD 47
0de089b85d Allow foreign checkers to call foreign preprocess and postprocess functions. 2014-03-04 17:18:59 +02:00
LCD 47
fb71514648 Move preprocess functions to their own file. 2014-02-26 10:31:38 +02:00
LCD 47
e323437303 More preparations for the foreign checkers feature. 2014-02-24 11:04:34 +02:00
LCD 47
b0191a144c Refactor of quiet_message filters.
Optimisation: merge handling of global and per-checker filters.
Feature: allow [] and '' values for quiet_messages filter elements.
Feature: allow overrides for quiet_messages filters.
Feature: buffer-local auto_jump and quiet_messages.
Safety: add magic specifiers to catch regexps.
Cleanup: minor restructuring for the forthcoming foreign checkers
feature.
2014-02-24 01:10:33 +02:00
LCD 47
2940b0c721 Bug fix: checker ordering. Formatting. 2014-02-23 11:47:52 +02:00
LCD 47
47e5739f2e Formatting.
Improved folding.
Consistent naming of private methods.
Moving a few functions arround.
2014-02-23 11:07:39 +02:00
LCD 47
0f3a1bf450 Cleanup.
Enforce sane loading order.
Group global initialization.
Minor logging fixes.
New option: g:syntastic_bash_hack.
2014-02-23 10:22:37 +02:00
LCD 47
c658ff15a5 Registry refactor.
Simplify registry data structure.
Simplify registru functions.
Optimisations.
2014-02-17 23:32:53 +02:00
LCD 47
fd5fb851da Minor cleanup. 2014-02-13 07:50:01 +02:00
LCD 47
d304890946 Minor cleanup. 2014-02-13 07:43:48 +02:00
LCD 47
70746c0f5f Option shellxescape has been added in Vim 7.3.446. 2014-02-13 07:09:20 +02:00
LCD 47
7795dff24b Add support for buffer versions of makeprgBuild variables.
New utility function syntastic#util#var().  Cleanup.
2014-02-12 21:25:51 +02:00
LCD 47
8a588134f1 Cleanup: minor optimisations, formatting. 2014-02-01 18:44:04 +02:00
LCD 47
d1cf6fcfac More debug logs. 2014-02-01 08:23:40 +02:00
LCD 47
d523ae9787 Add &shellquote to debug logs. 2014-01-30 20:31:47 +02:00
LCD 47
2b3df92350 New jump mode for g:syntastic_auto_jump.
If g:syntastic_auto_jump is set to 2, jump only if the first issue found
is an error.
2014-01-30 13:20:40 +02:00
LCD 47
8aa2a6f4c1 Cleanup. 2014-01-29 01:12:42 +02:00
LCD 47
7434054e21 Optimisation: cache statusline flag. 2014-01-28 17:30:22 +02:00
LCD 47
f3240e6001 Cleanup: shut up lint warnings, formatting, doc nit. 2014-01-26 09:10:26 +02:00
LCD 47
e30c80623d Bug fix: loclist clobbered by filter().
Loclist cleanup: hasErrorsOrWarningsToDisplay() == !isEmpty().
Loclist cleanup: rename filteredRaw() --> getRaw().
Loclist cleanup: rename toRaw() --> copyRaw().
2014-01-22 21:14:31 +02:00
LCD 47
e4b77ddcd9 Bump version number. 2014-01-20 08:59:43 +02:00
LCD 47
9057e3eff5 Bump version number. 2014-01-14 07:31:06 +02:00
LCD 47
ee3c56c6f7 New feature: message filtering.
New options: g:syntastic_quiet_messages, and a per-checker version
of it named g:syntastic_<filetype>_<checker>_quiet_messages.
Option g:syntastic_quiet_warnings is now deprecated.
Option g:syntastic_ignore_files now refers only to files that shouldn't
be checked.
2014-01-04 10:01:43 +02:00
LCD 47
1852b5d386 :SyntasticInfo now takes an optional argument.
Added several clarifications to the manual.
2013-12-16 18:06:30 +02:00
LCD 47
77c4eb3eec Workaround for autocmd brain damage.
Vim doesn't call autocmd commands in a predictible order, which can lead
to missing filetype when jumping to a new file with `lrewind`.
2013-12-04 19:39:30 +02:00
LCD 47
b89c644468 Fix an infinite loop in syntastic#util#findInParent().
As a side effect, also fix some of the "has('win32')" mess.
2013-12-04 16:50:35 +02:00
LCD 47
1ee2930e24 SyntasticCheck accepts multiple arguments. Cache available checkers. 2013-11-30 00:56:10 +02:00
LCD 47
f97ebd2173 Minor cleanup.
Cleanup highlighting initialization.
Document the syntax highlight groups involved.
2013-11-21 18:27:52 +02:00
LCD 47
cfe2ac68a4 New command :SyntasticSetLoclist. 2013-11-16 12:49:43 +02:00
LCD 47
7b36f9147f More detailed debugging.
Moved logging functions to autoload/syntastic/log.vim.
Cleanup debug functions.
Add a function to dump option variables.
2013-11-14 10:13:05 +02:00
LCD 47
bbd382ba5d Detailed debugging.
New variables: g:syntastic_debug_file, the name of a file where to write
debugging messages, in addition to adding them to the message history.

The old g:syntastic_debug is now a sum of flags:

*  1 - trace checker calls
*  2 - dump loclists
*  4 - trace notifiers
*  8 - trace autocommands
* 16 - dump syntastic variables (not implemented yet)
2013-11-13 10:58:33 +02:00
LCD 47
544d616acf Bump version number. 2013-11-11 10:55:12 +02:00
LCD 47
6740608991 Bump version number. 2013-11-08 17:29:33 +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
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
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
81e2e20892 Bug fix: split checker output into lines before preprocessing. 2013-08-16 01:31:22 +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
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
4708539690 Typo. 2013-06-29 20:54:08 +03:00
LCD 47
6a0dc699e0 Make cursor echo handle include files. 2013-06-21 20:48:17 +03:00
LCD 47
60675868d7 Stop spamming the user about the active checkers. 2013-06-16 06:40:28 +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
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
e6bb7bd4c6 Bug fix: :SyntasticInfo didn't return information for composite filetypes. 2013-05-31 19:06:33 +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
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
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
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
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
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
ba13a3d4b5 Fix shell pipe hack. 2013-04-06 21:58:38 +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
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
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
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
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
LCD 47
17641c0a49 Minor omission in commit 8f4695c. 2013-02-03 20:36:55 +02:00
Martin Grenfell
59cbf1c69e dont call setloclist() until the user calls :Errors 2013-02-01 16:52:11 +00:00
Martin Grenfell
0b0dbc56e6 dont allow checkers with duplicate names for the same filetype 2013-02-01 15:01:31 +00:00
Martin Grenfell
c97951b601 make a few refactors
Add CurrentFiletypes function as this logic was getting used in a couple
of places and needed a home/name - mostly because of the bizarre
substitute call that needs explanation.

Move the code to get a syntax checker by name into SyntasticRegistry
2013-02-01 14:38:53 +00:00
Martin Grenfell
0b3e074f8c Merge remote-tracking branch 'dbarnett/cmd_arg' 2013-02-01 14:18:31 +00:00
Martin Grenfell
8f4695c6de add a class to encapsulate loclists
Add SyntasticLoclist class to wrap up loclists, and move loclist query
methods from syntatic.vim to the new class.

Make SyntasticChecker#getLocList() return a SyntasticLoclist.
2013-02-01 14:17:55 +00:00
Martin Grenfell
f67d4881ca remove some old (now unused) code from the main plugin 2013-02-01 09:57:25 +00:00
David Barnett
40de98c2fc Add completion for checker name in :SyntasticCheck command 2013-01-31 23:36:41 -08:00
David Barnett
557321faae Support checker name as argument to :SyntasticCheck 2013-01-31 23:20:24 -08:00
Martin Grenfell
58ba8d3161 refactor how we represent and store checkers using python as a demo
Add 2 classes: SyntasticChecker and SyntasticRegistry.

SyntasticChecker represents a checker. It holds funcrefs to the checker
func, the highlight regex func and a new `isAvailable()` func (that
essentially just checks if the checker exe is installed)

SyntasticRegistry is responsible for:
* loading checkers
* storing checkers
* fetching the checkers to use according to availability and the users
  settings

Motivation/benefits:
* in the current system only one checker can be loaded per filetype
* syntax checkers cant be "chained" together
* the system is hard to add features to since fundamental concepts like
  syntax checkers and location lists arent represented explicitly

Things left to do:
* add a call to g:SyntasticRegistry.CreateAndRegisterChecker() to all
  checkers
* add an `isAvailable` function to all checkers
* move all checkers into `syntax_checkers/filetype/checkername.vim` -
  g:SyntasticRegistry assumes this layout, and its a good idea anyway
  for consistency and it makes it easier for users to add their own
  checkers

Things to do after all of the above:
* add a LocationList class and move all the filtering functions onto it
* possibly add an Error class that wraps up each item in a loc list

Random notes:
* with the new system you can select the checkers to use with e.g.
    `let g:syntastic_python_checkers=['flake8', 'pylint']`
  This will try flake8 first, and if no errors are detected it will move
  onto pylint.
2013-01-24 00:19:13 +00:00
Martin Grenfell
d48f43c222 wrap screen redrawing in a function to try and avoid screen flicker
Some versions of gvim flicker when `redraw!` is used. Use `redraw` for
them and use `redraw!` for terminal vim.

Fixes #449
2013-01-16 09:42:22 +00:00
Alex Efros
ccfdcef04d Merge branch 'master' into E855-on-lclose 2012-12-19 17:25:05 +02:00