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 balloons. 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 |g:quickfixsigns#vcsdiff#highlight|) 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. CREDITS: quickfixsigns includes some icons from the open icon library. See http://openiconlibrary.sourceforge.net for details. ----------------------------------------------------------------------- Install~ 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