liuchengxu / vim-better-default

:art: Simplify your .vimrc and make the default vim better
MIT License
158 stars 37 forks source link
default-vim space-vim vim vim-plugin vimrc

vim-better-default

There are some general settings for convenience in almost everyone's .vimrc file. Let's shorten your .vimrc and make the default vim better.

Features

If new to Vim, you can install vim-better-default as a starting point, rather than copying some random vimrc you found.

If you have been a vimmer for quite a while, please see default.vim directly. In the beginning vim-better-default is intended for simplifying the tedious .vimrc file, so you may also use it to shorten your .vimrc.

Installation

This plugin can be installed with a varity of plugin managers, such as:

Options

Option Description Default
vim_better_default_minimum Only add essential funationalities 0
vim_better_default_backup_on Set backup 0
vim_better_default_persistent_undo Persistent undo 0
vim_better_default_enable_folding Enable fold 1
vim_better_default_key_mapping Whole key (re)mappings 1
vim_better_default_basic_key_mapping Basic key (re)mappings 1
vim_better_default_buffer_key_mapping Buffer key mappings 1
vim_better_default_file_key_mapping File key mappings 1
vim_better_default_fold_key_mapping Fold key mappings 1
vim_better_default_window_key_mapping Window key mappings 1

If you set the vim_better_default_minumum option, then vim seemingly looks like no difference with the default vim, it only adds some essential funtionalities.

let g:vim_better_default_minimum = 1

If you want to exclude key mappings in vim-better-default, just set the value as 0.

let g:vim_better_default_key_mapping = 0

For more details, please refer to the default.vim. Don't worry. It is extremely simple and just part of your own .vimrc file alike.

You can also fork vim-better-default and modify plugin/default.vim for more customization.

How to override the existing settings?

default.vim normally loads after your .vimrc, making it a bit tricky to override. If you want to load it earlier, add the following content to your .vimrc, then follow on the settings you want to override.

For instance, if you don't like relativenumber:

runtime! plugin/default.vim
set norelativenumber

Contributions

If you have any ideas or suggestions to improve vim-better-default, please open an issue, or fork it and send a pull request. Your feedback is highly appreciated.

Inspiration