Mark quickfix & location list items with signs
Vim script
Clone or download
tomtom Merge pull request #82 from blueyed/doc
Fix doc reference for g:quickfixsigns#marks#{buffer,global}
Latest commit 653cf16 Feb 21, 2018
Failed to load latest commit information.
autoload FIX #78: Handle ColorScheme events Sep 25, 2017
bitmaps/open_icon_library/16x16 Changed icons Mar 2, 2014
doc docs Sep 25, 2017
etc docs vcsmerge Feb 12, 2016
plugin Merge pull request #82 from blueyed/doc Feb 21, 2018
.gitignore misc Mar 9, 2017
CHANGES.TXT docs Apr 2, 2014
LICENSE.TXT docs Feb 12, 2016
README docs Sep 25, 2017
addon-info.json addon-info Jan 8, 2013


Display |signs| at interesting lines:

    - items in the |quickfix| and |location-lists| (e.g. compilation errors)
    - |marks| a-zA-Z
    - changes (given the file is under a VCS like git, svn, mercurial, 
      or bazaar -- see |g:tlib#vcs#def| for a list of supported VCSs)
    - breakpoints: vim, R (if rer_vim is installed)
    - cursor position
    - relative line numbers (show numbers only until the cursor moves; 
      this requires that you add the following command to |vimrc|: >
        noremap <silent> <leader><c-l> :call quickfixsigns#RelNumbersOnce()<cr>
<    - long lines (see |g:quickfixsigns_class_longlines| for details)
    - VCS merge conflict markers (Users have to enable this sign class 
      by adding 'vcsmerge' to |g:quickfixsigns_classes|)
    - etc.

Other lists can be configured via the |g:quickfixsigns_lists| variable.

The text attached to a quickfix or location-list entry is displayed in a 
balloon via 'balloonexpr'.
NOTE: This could cause a conflict with other plugins that make use of 

If you want nicer looking images instead of the ASCII markers, you have 
to change the following signs' definition either in your |vimrc| file or 
in $VIMFILES/after/plugin/quickfixsigns.vim (by use of |sign-define|):

    QFS_QFL ... Entries in the |quickfix| list
    QFS_LOC ... Entries in the |location-list|
    QFS_Mark_[a-zA-Z] ... Marks
    QFS_CURSOR ... Current cursor position
    QFS_BREAKPOINT ... Breakpoints
    QFS_REL_x ... Relative line numbers
    QFS_VCS_{ADD,DEL,CHANGE} ... VCS changes (see also 

Adding new sign classes~

VIM plugin developers can easily define new sign classes:

    1. Add the NAME of your sign class to |g:quickfixsigns_classes|
    2. Define a variable g:quickfixsigns_class_{NAME} -- a dictionary that 
       contains at least the following keys: sign, get. See 
       |g:quickfixsigns_classes| for further details.

On startup any files matching autoload/quickfixsigns/*.vim in the 
'runtimepath' are loaded. When the sign class is defined in an |autoload| file, 
you should first check whether NAME is included in |g:quickfixsigns_classes|. 
See ../autoload/quickfixsigns/breakpoints.vim for a working example.

CAVEAT: If the "get" expression entails running an external program, "event" 
should not contain |FocusGained| and |FocusLost| events.

quickfixsigns includes some icons from the open icon library. See for details.


Edit the vba file and type: >

    :so %

See :help vimball for details. If you have difficulties or use vim 7.0, 
please make sure, you have the current version of vimball
(vimscript #1502) installed or update your runtime.

Optional enhancements~

If tinykeymap (vimscript #4199) is installed, a map (see 
|g:tinykeymap#map#quickfixsigns#map|, which defaults to <Leader>ms) can be used 
to jump from sign to sign or between sign groups.

License: GPLv3 or later