Tweaking syntax checker shellcheck's highlight colors (with syntastic and pathogen)

701 Views Asked by At

To me, shellcheck's highlight colors and message zone (where syntax is flagged as dubious and warnings are displayed) are both wrong.

  • Is it possible to modify status-line and main window highlight colors used by shellcheck?

    I looked into that and since I have syntax on in ~/.vimrc. I imagine that my main window's highlight color scheme is vim's default, as opposed to having syntax enable, the which supposedly allows subsequent definition of a highlight color scheme by the user.

    Digging a bit more, I found that since syntastic's install, I have the following for the status line in ~/.vimrc:

    " General status line option unchanged (vim window and multiple buffer window) - already there before Syntastic
    
    set statusline=%<\ %n\ %f\ %m%r%h\ %y%h%=\ Line:\ \%l/\%L\ (\%p%%)\ Column:\ \%c\
    
    
    " Syntastic options (new)
    
    " Set highlight group 'warningmsg' <= defined where?
    set statusline+=%#warningmsg#
    " No clue what function SyntasticStatuslineFlag() to evaluate is or does...
    set statusline+=%{SyntasticStatuslineFlag()}
    " Restore normal highlight mode or scheme
    set statusline+=%*
    

I am not intent on completely revisiting the warningmsg hi-color scheme. Instead I want to modify a few color hi-rules for syntax checking, so my terminal window does not punch me in the face, whenever I trip a syntax checker in bash or C or Python or whatever.

  • Can I modify the height of the syntastic's message display area in the terminal's vim's window? It find it way too big. Ideally I'd like to be able to modify it directly from my vim session to adapt it to circumstances. If not possible, just permanently shaving a couple of lines off it would be good.
1

There are 1 best solutions below

1
On BEST ANSWER

Is it possible to modify status-line and main window highlight colors used by shellcheck?

Shellcheck doesn't highlight anything. It doesn't know, nor care, about either Vim, or highlighting. The one doing the highlighting is syntastic. It does that by using highlighting groups that are linked to some standard ones by default. It's up to you to redefine the colors corresponding to these groups. See :help syntastic-highlighting.

Highlighting the status line is possible, but not trivial. It has nothing to do with syntastic.

" No clue what function SyntasticStatuslineFlag() to evaluate is or does...

:help syntastic-statusline-flag, :help 'syntastic_stl_format'

Can I modify the height of the syntastic's message display area in the terminal's vim's window ?

:help 'syntastic_loc_list_height'