2013-03-05 17:07:54 -05:00
|
|
|
*signify.txt* Seeing changes like a boss.
|
|
|
|
*signify*
|
|
|
|
|
|
|
|
___
|
|
|
|
__ __ /'___\
|
|
|
|
____/\_\ __ ___ /\_\/\ \__/ __ __
|
|
|
|
/',__\/\ \ /'_ `\ /' _ `\/\ \ \ ,__\/\ \/\ \
|
|
|
|
/\__, `\ \ \/\ \L\ \/\ \/\ \ \ \ \ \_/\ \ \_\ \
|
|
|
|
\/\____/\ \_\ \____ \ \_\ \_\ \_\ \_\ \/`____ \
|
|
|
|
\/___/ \/_/\/___L\ \/_/\/_/\/_/\/_/ `/___/> \
|
|
|
|
/\____/ /\___/
|
|
|
|
\_/__/ \/__/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reference Manual
|
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-04-02 03:45:26 -04:00
|
|
|
CONTENTS *signify-contents*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
1.Intro..........................................|signify-intro|
|
|
|
|
2.Usage..........................................|signify-usage|
|
|
|
|
3.Options........................................|signify-options|
|
2013-03-10 05:17:53 -04:00
|
|
|
4.Commands.......................................|signify-commands|
|
|
|
|
4.Mappings.......................................|signify-mappings|
|
2013-07-03 10:59:28 -04:00
|
|
|
5.Colors.........................................|signify-colors|
|
|
|
|
6.Author.........................................|signify-author|
|
|
|
|
7.Credits........................................|signify-credits|
|
|
|
|
8.License........................................|signify-license|
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-04-02 03:45:26 -04:00
|
|
|
1. Intro *signify-intro*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-06 17:40:57 -05:00
|
|
|
Signify, or just sy for short, is an quite unobtrusive plugin. If there is
|
|
|
|
information about changes (in form of patch hunks) since the last commit, they
|
|
|
|
will be shown on the left side in Vim's sign column.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
Easy-peasy!
|
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-04-02 03:45:26 -04:00
|
|
|
2. Usage *signify-usage*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
The usage is pretty straight-forward. By default you should only notice a
|
|
|
|
difference, if you're working in a directory that is managed by a supported
|
2013-03-06 19:28:05 -05:00
|
|
|
version control system:
|
|
|
|
|
|
|
|
- git
|
|
|
|
- mercurial
|
2013-03-11 13:49:17 -04:00
|
|
|
- darcs
|
2013-03-06 19:56:31 -05:00
|
|
|
- bzr
|
2013-03-06 21:28:21 -05:00
|
|
|
- subversion
|
|
|
|
- cvs
|
2013-03-15 08:08:56 -04:00
|
|
|
- rcs
|
2013-04-16 05:37:57 -04:00
|
|
|
- fossil
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-14 06:22:36 -04:00
|
|
|
Sign explanation:
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
A new line was added. The sign is shown on the same line as the new line.
|
|
|
|
|
2013-06-07 05:37:21 -04:00
|
|
|
_1
|
2013-03-14 06:22:36 -04:00
|
|
|
|
2013-06-07 05:37:21 -04:00
|
|
|
A line was deleted. The sign is shown on the line above the deleted line. The
|
|
|
|
second character indicates the number of deleted lines: 1-9, and # for
|
|
|
|
everything above.
|
2013-03-14 06:22:36 -04:00
|
|
|
|
|
|
|
!
|
|
|
|
|
|
|
|
A line was changed. Something was changed, but the amount of lines stayed the
|
|
|
|
same. The sign is shown on the same line.
|
|
|
|
|
|
|
|
!_
|
|
|
|
|
|
|
|
A line was changed and one or more of the lines below were deleted. A
|
|
|
|
combination of ! and _. The sign is shown on the same line.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-04-12 05:56:23 -04:00
|
|
|
‾
|
|
|
|
|
|
|
|
This is used instead of _ in the special case of the first line being removed.
|
|
|
|
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
==============================================================================
|
2013-04-02 03:45:26 -04:00
|
|
|
3. Options *signify-options*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-06-22 09:11:25 -04:00
|
|
|
Put these variables into your vimrc. The provided examples also indicate the
|
|
|
|
default values, as long as no "Default:" section is given.
|
2013-03-07 06:56:25 -05:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-07 06:56:25 -05:00
|
|
|
|
2013-03-25 11:12:31 -04:00
|
|
|
let g:signify_vcs_list = [ 'git', 'hg' ]
|
|
|
|
|
2013-04-16 05:37:57 -04:00
|
|
|
Default: ['git', 'hg', 'svn', 'darcs', 'bzr', 'fossil', 'cvs', 'rcs']
|
2013-03-25 11:12:31 -04:00
|
|
|
|
2013-04-16 03:26:59 -04:00
|
|
|
This variable determines the VCS to check for and in what order. If you only
|
|
|
|
use git and mercurial, you can shorten the list to the shown example. If you
|
|
|
|
use mostly mercurial and only sometimes git, put 'hg' in the front of the
|
|
|
|
list. It's basically a priority list.
|
|
|
|
|
|
|
|
This can improve buffer loading time since by default all supported VCS will
|
|
|
|
be checked for, so you are advised to change this variable to your needs.
|
|
|
|
|
|
|
|
NOTE: This only happens once the first time signs get updated. Afterwards, the
|
|
|
|
VCS will be remembered anyway.
|
|
|
|
|
|
|
|
NOTE: If you don't change this list and Sy is activated, updating signs for a
|
|
|
|
non-VCS file can lead to significant delay since all supported VCS will be
|
|
|
|
tested for.
|
2013-03-25 11:12:31 -04:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-25 11:12:31 -04:00
|
|
|
|
2013-03-13 12:08:41 -04:00
|
|
|
let g:signify_mapping_next_hunk = '<leader>gj'
|
|
|
|
let g:signify_mapping_prev_hunk = '<leader>gk'
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-06 07:22:58 -05:00
|
|
|
Mapping for jumping to the next or previous hunk.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
let g:signify_mapping_toggle_highlight = '<leader>gh'
|
|
|
|
|
|
|
|
Mapping for toggling line highlighting for lines containing changes.
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
let g:signify_mapping_toggle = '<leader>gt'
|
|
|
|
|
|
|
|
Mapping for toggling the plugin for the current buffer only.
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-26 05:34:29 -04:00
|
|
|
let g:signify_skip_filetype = { 'vim': 1, 'c': 1 }
|
|
|
|
let g:signify_skip_filename = { '/home/user/.vimrc': 1 }
|
2013-03-10 05:17:53 -04:00
|
|
|
|
|
|
|
Don't activate the plugin for these filetypes and/or filenames.
|
2013-04-03 04:38:32 -04:00
|
|
|
|
2013-03-29 08:31:23 -04:00
|
|
|
NOTE: Filenames have to be absolute paths.
|
2013-03-10 05:17:53 -04:00
|
|
|
|
2013-06-22 09:11:25 -04:00
|
|
|
Default: Both are empty.
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-10 05:17:53 -04:00
|
|
|
|
|
|
|
let g:signify_sign_overwrite = 1
|
|
|
|
|
|
|
|
Overwrite signs set by other plugins by default.
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-10 05:17:53 -04:00
|
|
|
|
2013-06-06 06:39:24 -04:00
|
|
|
let g:signify_update_on_bufenter = 0
|
2013-04-03 04:38:32 -04:00
|
|
|
|
2013-06-06 06:39:24 -04:00
|
|
|
Update signs when entering a buffer that was modified.
|
2013-04-03 04:38:32 -04:00
|
|
|
|
2013-06-06 12:02:57 -04:00
|
|
|
NOTE: This also saves the buffer to disk!
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-04-03 04:38:32 -04:00
|
|
|
|
2013-06-22 09:11:25 -04:00
|
|
|
let g:signify_line_highlight = 0
|
2013-04-04 05:14:07 -04:00
|
|
|
|
2013-07-03 10:59:28 -04:00
|
|
|
Enable line highlighting in addition to using signs by default.
|
2013-04-18 00:55:53 -04:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-04-04 05:14:07 -04:00
|
|
|
|
2013-03-11 20:14:48 -04:00
|
|
|
let g:signify_sign_add = '+'
|
2013-06-22 09:11:25 -04:00
|
|
|
let g:signify_sign_change = '!'
|
2013-03-11 20:14:48 -04:00
|
|
|
let g:signify_sign_change_delete = '!_'
|
2013-06-22 09:11:25 -04:00
|
|
|
let g:signify_sign_delete = '_'
|
2013-03-11 20:14:48 -04:00
|
|
|
let g:signify_sign_delete_first_line = '‾'
|
|
|
|
|
|
|
|
The sign to use if a line was added, deleted or changed or a combination of
|
|
|
|
these.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-06-22 09:11:25 -04:00
|
|
|
let g:signify_cursorhold_normal = 0
|
|
|
|
let g:signify_cursorhold_insert = 0
|
2013-03-12 07:25:22 -04:00
|
|
|
|
|
|
|
Additionally trigger sign updates in normal or insert mode after 'updatetime'
|
|
|
|
miliseconds without any keypresses. This fires only once between keypresses,
|
|
|
|
thus not every 'updatetime' miliseconds.
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
NOTE: This also saves the buffer to disk!
|
2013-03-12 07:43:23 -04:00
|
|
|
|
2013-06-06 19:01:30 -04:00
|
|
|
============-
|
|
|
|
|
|
|
|
let g:signify_difftool = 'gnudiff'
|
|
|
|
|
|
|
|
This will avoid the attempt to find the proper diff tool for version control
|
|
|
|
systems that rely on an external diff tool that supports the -U0 flag. These
|
|
|
|
are: svn, bzr, darcs, fossil.
|
|
|
|
|
|
|
|
Otherwise 'diff' will be used.
|
|
|
|
|
2013-06-22 09:11:25 -04:00
|
|
|
Default: Does not exist.
|
|
|
|
|
2013-03-12 07:25:22 -04:00
|
|
|
|
2013-03-05 17:07:54 -05:00
|
|
|
==============================================================================
|
2013-04-02 03:45:26 -04:00
|
|
|
4. Commands *signify-commands*
|
|
|
|
4. Mappings *signify-mappings*
|
2013-03-10 05:17:53 -04:00
|
|
|
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
:SignifyToggle
|
|
|
|
|
|
|
|
Toggle the plugin for the current buffer only.
|
|
|
|
Default mapping: <leader>gt
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
:SignifyToggleHighlight
|
|
|
|
|
|
|
|
Toggle line highlighting for lines containing changes.
|
|
|
|
Default mapping: <leader>gh
|
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-06 06:32:02 -05:00
|
|
|
:SignifyJumpToNextHunk
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-26 09:25:45 -04:00
|
|
|
Jump to the next hunk. There are two mappings available:
|
|
|
|
|
2013-03-26 13:51:49 -04:00
|
|
|
Hardcoded mapping: ]c
|
2013-03-26 13:44:11 -04:00
|
|
|
Configurable mapping: <leader>gj
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-04-04 05:27:28 -04:00
|
|
|
============-
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-06 06:32:02 -05:00
|
|
|
:SignifyJumpToPrevHunk
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-26 09:25:45 -04:00
|
|
|
Jump to the previous hunk. There are two mappings available:
|
|
|
|
|
2013-03-26 13:51:49 -04:00
|
|
|
Hardcoded mapping: [c
|
2013-03-26 13:44:11 -04:00
|
|
|
Configurable mapping: <leader>gk
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-07-03 10:59:28 -04:00
|
|
|
5. Colors *signify-colors*
|
|
|
|
|
|
|
|
This plugin defines highlighting groups for two different places: for lines
|
|
|
|
and signs. Per default these don't really exist but are linked to the standard
|
|
|
|
highlighting groups: DiffAdd, DiffChange, DiffDelete:
|
|
|
|
|
|
|
|
highlight link SignifyLineAdd DiffAdd
|
|
|
|
highlight link SignifyLineChange DiffChange
|
|
|
|
highlight link SignifyLineDelete DiffDelete
|
|
|
|
|
|
|
|
highlight link SignifySignAdd DiffAdd
|
|
|
|
highlight link SignifySignChange DiffChange
|
|
|
|
highlight link SignifySignDelete DiffDelete
|
|
|
|
|
|
|
|
Thus if you do not want to change the standard highlighting groups, but want
|
|
|
|
different colors for either your signs or lines, you can define one of these 6
|
|
|
|
Signify groups yourself in your vimrc.
|
|
|
|
|
|
|
|
Personally I use (256 colors terminal):
|
|
|
|
|
|
|
|
" highlight lines in Sy and vimdiff etc.)
|
|
|
|
|
|
|
|
highlight DiffAdd cterm=bold ctermbg=none ctermfg=119
|
|
|
|
highlight DiffDelete cterm=bold ctermbg=none ctermfg=167
|
|
|
|
highlight DiffChange cterm=bold ctermbg=none ctermfg=227
|
|
|
|
|
|
|
|
" highlight signs in Sy
|
|
|
|
|
|
|
|
highlight SignifySignAdd cterm=bold ctermbg=237 ctermfg=119
|
|
|
|
highlight SignifySignDelete cterm=bold ctermbg=237 ctermfg=167
|
|
|
|
highlight SignifySignChange cterm=bold ctermbg=237 ctermfg=227
|
|
|
|
|
2013-07-03 11:23:38 -04:00
|
|
|
For Unix people there is a small script, showcolors.bash, in the repo that
|
|
|
|
shows all 256 colors available to the terminal. That makes picking the right
|
|
|
|
numbers much easier.
|
2013-07-03 10:59:28 -04:00
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
6. About the author *signify-author*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-05 17:58:41 -05:00
|
|
|
My nick on Freenode IRC is mhi^.
|
|
|
|
|
2013-03-15 08:52:57 -04:00
|
|
|
For latest developments: https://github.com/mhinz
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-15 08:52:57 -04:00
|
|
|
If you use any of my plugins, star it on github. This is a great way of
|
|
|
|
getting feedback! Same for issues or feature requests.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
Thank you for flying mhi airlines. Get the Vim on!
|
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-07-03 10:59:28 -04:00
|
|
|
7. Credits *signify-credits*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-03-07 08:18:57 -05:00
|
|
|
People who contributed to sy. Format: Person (Github account)
|
|
|
|
|
2013-03-17 19:31:59 -04:00
|
|
|
|
2013-04-18 00:55:53 -04:00
|
|
|
Jeremy Mack (mutewinter)
|
|
|
|
Chong Li (chongli)
|
|
|
|
Robin Munn (rmunn)
|
|
|
|
Martin Hoch (rtwo)
|
|
|
|
fritzophrenic (Ben Fritz)
|
|
|
|
Morgan Fouesneau (mfouesneau)
|
|
|
|
Zhao Cai (zhaocai)
|
|
|
|
Otto Modinos (otommod)
|
|
|
|
Ryan Kois (kid-icarus)
|
|
|
|
Jon Kinney (j2fly)
|
|
|
|
Israel Chauca Fuentes (Raimondi)
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
2013-07-03 10:59:28 -04:00
|
|
|
8. Licence *signify-license*
|
2013-03-05 17:07:54 -05:00
|
|
|
|
2013-04-02 03:36:42 -04:00
|
|
|
Copyright © Marco Hinz. Distributed under the same terms as Vim itself.
|
|
|
|
|
|
|
|
See |license|.
|
2013-03-05 17:07:54 -05:00
|
|
|
|
|
|
|
|
|
|
|
vim: tw=78
|