My config files
Go to file
Buddy Sandidge 94f7b722c7 Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b
git-subtree-dir: vim/bundle/ultisnips
git-subtree-split: f95ce290bc6394d25cd51d0db2e197cd14d6d07b
2017-03-08 14:26:55 -08:00
after/plugin Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
autoload Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
ctags Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
doc Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
ftdetect Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
ftplugin Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
plugin Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
pythonx/UltiSnips Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
rplugin/python3/deoplete/sources Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
syntax Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
test Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
utils Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
.bzrignore Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
.gitignore Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
.travis.yml Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
ChangeLog Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
COPYING.txt Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
pylintrc Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
README.md Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
test_all.py Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
travis_install.sh Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00
travis_test.sh Squashed 'vim/bundle/ultisnips/' content from commit f95ce290b 2017-03-08 14:26:55 -08:00

Build Status Stories in Ready Gitter

UltiSnips

UltiSnips is the ultimate solution for snippets in Vim. It has tons of features and is very fast.

GIF Demo

In this demo I am editing a python file. I first expand the #! snippet, then the class snippet. The completion menu comes from YouCompleteMe, UltiSnips also integrates with neocomplete. I can jump through placeholders and add text while the snippet inserts text in other places automatically: when I add Animal as a base class, __init__ gets updated to call the base class constructor. When I add arguments to the constructor, they automatically get assigned to instance variables. I then insert my personal snippet for print debugging. Note that I left insert mode, inserted another snippet and went back to add an additional argument to __init__ and the class snippet was still active and added another instance variable.

The official home of UltiSnips is at https://github.com/sirver/ultisnips. Please add pull requests and issues there.

UltiSnips was started in Jun 2009 by @SirVer. In Dec 2015, maintenance was handed over to @seletskiy.

Quick Start

This assumes you are using Vundle. Adapt for your plugin manager of choice. Put this into your .vimrc.

" Track the engine.
Plugin 'SirVer/ultisnips'

" Snippets are separated from the engine. Add this if you want them:
Plugin 'honza/vim-snippets'

" Trigger configuration. Do not use <tab> if you use https://github.com/Valloric/YouCompleteMe.
let g:UltiSnipsExpandTrigger="<tab>"
let g:UltiSnipsJumpForwardTrigger="<c-b>"
let g:UltiSnipsJumpBackwardTrigger="<c-z>"

" If you want :UltiSnipsEdit to split your window.
let g:UltiSnipsEditSplit="vertical"

UltiSnips comes with comprehensive documentation. As there are more options and tons of features I suggest you at least skim it.

Screencasts

From a gentle introduction to really advanced in a few minutes: The blog posts of the screencasts contain more advanced examples of the things discussed in the videos.

Also the excellent Vimcasts dedicated three episodes to UltiSnips: