Think of sensible.vim as one step above
'nocompatible' mode: a universal
set of defaults that (hopefully) everyone can agree on.
- If you're new to Vim, you can install this as a starting point, rather than copying some random vimrc you found.
- If you're pair programming and you can't agree on whose vimrc to use, this can be your neutral territory.
- If you're administrating a server with an account that's not exclusively
yours, you can
scpthis up to make things a bit more tolerable.
- If you're troubleshooting a plugin and need to rule out interference from your vimrc, having this installed will ensure you still have some basic amenities.
If you don't have a preferred installation method, I recommend installing pathogen.vim, and then simply copy and paste:
cd ~/.vim/bundle git clone git://github.com/tpope/vim-sensible.git
See the source for the authoritative list of features. (Don't worry, it's
:set calls.) Here's a taste:
'backspace': Backspace through anything in insert mode.
'incsearch': Start searching before pressing enter.
:set list(visible whitespace) prettier.
'scrolloff': Always show at least one line above/below the cursor.
runtime! macros/matchit.vim: Load the version of matchit.vim that ships with Vim.
How can I see what this plugin actually does?
The source is authoritative. Use
:help 'option' to see the
documentation for an option. If you install scriptease.vim, you can press
K on an option (or command, or function) to jump to its documentation.
How can I override a setting?
Normally, sensible.vim loads after your vimrc, making it a bit tricky to
override (although you could use
after/plugin/sensible.vim). If you want to
load it earlier, add the following line to you vimrc, then put your overrides
Feel free to let me know which setting you object to, so I can reassess whether it makes sense to include it.
I want this to be a plugin nobody objects to installing. Let me know if you have any objections to anything. There are a handful of settings I figured might be controversial, but I included anyways, just to settle the question once and for all. It won't take much persuasion for me to remove them. Everything else is negotiable.
Feel free to ask a question if you're not sure why I've set something, as I haven't put much effort into documenting that.
I'm a stickler for commit messages, so if you send me a pull request with so much as a superfluous period in the subject line, I will close it without so much as a second thought, and save my precious attention for someone who can actually follow directions.
This pairs great with sleuth.vim.
Copyright © Tim Pope. Distributed under the same terms as Vim itself.