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.
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.
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
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.
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.
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.
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
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.
* add a system for setting default checkers
* return the first check we find, unless told to chain checkers together
by default settings, or user settings