mirror of
https://github.com/tpope/vim-sensible.git
synced 2025-11-12 04:53:46 -05:00
This matches what defaults.vim does. We could omit "lastline" in this case, but it doesn't hurt anything, and keeping it out of an if statement allows it to be set without +eval.
115 lines
2.7 KiB
VimL
115 lines
2.7 KiB
VimL
" sensible.vim - Defaults everyone can agree on
|
|
" Maintainer: Tim Pope <http://tpo.pe/>
|
|
" Version: 1.2
|
|
|
|
if exists('g:loaded_sensible') || &compatible
|
|
finish
|
|
else
|
|
let g:loaded_sensible = 'yes'
|
|
endif
|
|
|
|
if !(exists('g:did_load_filetypes') && exists('g:did_load_ftplugin') && exists('g:did_indent_on'))
|
|
filetype plugin indent on
|
|
endif
|
|
if has('syntax') && !exists('g:syntax_on')
|
|
syntax enable
|
|
endif
|
|
|
|
" Use :help 'option' to see the documentation for the given option.
|
|
|
|
if empty(&backspace)
|
|
set backspace=indent,eol,start
|
|
endif
|
|
set complete-=i
|
|
set smarttab
|
|
|
|
set nrformats-=octal
|
|
|
|
if !has('nvim') && &ttimeoutlen == -1
|
|
set ttimeout
|
|
set ttimeoutlen=100
|
|
endif
|
|
|
|
set incsearch
|
|
" Use <C-L> to clear the highlighting of :set hlsearch.
|
|
if maparg('<C-L>', 'n') ==# ''
|
|
nnoremap <silent> <C-L> :nohlsearch<C-R>=has('diff')?'<Bar>diffupdate':''<CR><CR><C-L>
|
|
endif
|
|
|
|
if &laststatus < 2
|
|
set laststatus=2
|
|
endif
|
|
set ruler
|
|
set wildmenu
|
|
|
|
if !&scrolloff
|
|
set scrolloff=1
|
|
endif
|
|
if !&sidescrolloff
|
|
set sidescrolloff=5
|
|
endif
|
|
set display+=lastline
|
|
if has('patch-7.4.2109')
|
|
set display+=truncate
|
|
endif
|
|
|
|
if &listchars ==# 'eol:$'
|
|
set listchars=tab:>\ ,trail:-,extends:>,precedes:<,nbsp:+
|
|
endif
|
|
|
|
if v:version > 703 || v:version == 703 && has("patch541")
|
|
set formatoptions+=j " Delete comment character when joining commented lines
|
|
endif
|
|
|
|
" Replace the check for a tags file in the parent directory of the current
|
|
" file with a check in every ancestor directory.
|
|
if has('path_extra') && (',' . &g:tags . ',') =~# ',\./tags,'
|
|
setglobal tags-=./tags tags-=./tags; tags^=./tags;
|
|
endif
|
|
|
|
set autoread
|
|
|
|
if &history < 1000
|
|
set history=1000
|
|
endif
|
|
if &tabpagemax < 50
|
|
set tabpagemax=50
|
|
endif
|
|
if !empty(&viminfo)
|
|
set viminfo^=!
|
|
endif
|
|
set sessionoptions-=options
|
|
set viewoptions-=options
|
|
|
|
" Allow color schemes to do bright colors without forcing bold.
|
|
if &t_Co == 8 && $TERM !~# '^Eterm'
|
|
set t_Co=16
|
|
endif
|
|
|
|
" If the running Vim lacks support for the Fish shell, use Bash instead.
|
|
if &shell =~# 'fish$' && (v:version < 704 || v:version == 704 && !has('patch276'))
|
|
set shell=/usr/bin/env\ bash
|
|
endif
|
|
|
|
" Disable a legacy behavior that can break plugin maps.
|
|
if has('langmap') && exists('+langremap') && &langremap
|
|
set nolangremap
|
|
endif
|
|
|
|
if empty(mapcheck('<C-U>', 'i'))
|
|
inoremap <C-U> <C-G>u<C-U>
|
|
endif
|
|
if empty(mapcheck('<C-W>', 'i'))
|
|
inoremap <C-W> <C-G>u<C-W>
|
|
endif
|
|
|
|
" Load matchit.vim, but only if the user hasn't installed a newer version.
|
|
if !exists('g:loaded_matchit') && findfile('plugin/matchit.vim', &rtp) ==# ''
|
|
runtime! macros/matchit.vim
|
|
endif
|
|
|
|
" Enable the :Man command shipped inside Vim's man filetype plugin.
|
|
if exists(':Man') != 2 && !exists('g:loaded_man') && &filetype !=? 'man' && !has('nvim')
|
|
runtime ftplugin/man.vim
|
|
endif
|