~toastal/vim-signify

Merge pull request #407 from jamessan/sign-priority
sy#util#get_signs: Use a default priority of 10 if priorty is unlisted
Merge pull request #401 from albfan/i18n

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~toastal/vim-signify
read/write
git@git.sr.ht:~toastal/vim-signify

You can also use your local clone with git send-email.

vim-signify


Signify (or just Sy) uses the sign column to indicate added, modified and removed lines in a file that is managed by a version control system (VCS).


  • Supports git, mercurial, darcs, bazaar, subversion, cvs, rcs, fossil, accurev, perforce, tfs, yadm.
  • Asynchronous execution of VCS tools for Vim 8.0.902+ and Neovim.
  • Preserves signs from other plugins.
  • Handles nested repositories controlled by different VCS.
  • Provides mappings for navigating hunks ("blocks of changed lines").
  • Provides an operator that acts on hunks.
  • Preview changes in the current line in a popup window.
  • Show all changes in diff mode.
  • Alternative workflow: Disable the plugin by default and toggle it per buffer on demand.
  • Optional line highlighting.
  • Optional skipping of filetypes/filenames.
  • Optional stats in the statusline.
  • Works out of the box, but allows fine-grained configuration.
  • Great documentation and handsome maintainers!

Similar plugin for git: vim-gitgutter

#Installation

The master branch is async-only and thus requires at least Vim 8.0.902. Use the legacy tag for older Vim versions.

Using your favorite plugin manager, e.g. vim-plug:

if has('nvim') || has('patch-8.0.902')
  Plug 'mhinz/vim-signify'
else
  Plug 'mhinz/vim-signify', { 'tag': 'legacy' }
endif

#Configuration for async update

" default updatetime 4000ms is not good for async update
set updatetime=100

#Demo

Example:signify in action

#Author and Feedback

If you like this plugin, star it! It's a great way of getting feedback. The same goes for reporting issues or feature requests.

Contact: Twitter

Co-maintainer: @jamessan