diff options
Diffstat (limited to 'vim/vimrc')
-rw-r--r-- | vim/vimrc | 43 |
1 files changed, 20 insertions, 23 deletions
@@ -4,6 +4,15 @@ " Undo anything the operating system's vimrc may have broken runtime system.vim +" Set an environment variable for the user runtime directory +if !exists('$MYVIMRUNTIME') + if has('win32') || has('win64') + let $MYVIMRUNTIME = expand('~/vimfiles') + else + let $MYVIMRUNTIME = expand('~/.vim') + endif +endif + " Load filetype settings, plugins, and maps if has('autocmd') let g:maplocalleader = ',' @@ -49,16 +58,13 @@ set backspace+=start " The start of current insertion " Try to keep backups in one system-appropriate dir set backup -if has('win32') || has('win64') - set backupdir^=~/vimfiles/cache/backup -else - set backupdir^=~/.vim/cache/backup -endif +set backupdir^=$MYVIMRUNTIME/cache/backup " Add some paths not to back up if has('unix') set backupskip^=/dev/shm/* " Shared memory RAM disk - set backupskip^=/var/tmp/* " Debian's $TMPDIR for sudoedit(8) + set backupskip^=/usr/tmp/* " Hardcoded path for `sudo -e` + set backupskip^=/var/tmp/* " Hardcoded path for `sudo -e` endif " Indent wrapped lines if supported @@ -78,12 +84,12 @@ endif " Give me a prompt instead of just rejecting risky :write, :saveas set confirm +" Require two spaces for sentence objects +" Yes, I have become a filthy two-spacer +set cpoptions+=J + " Try to keep swapfiles in one system-appropriate dir -if has('win32') || has('win64') - set directory^=~/vimfiles/cache/swap// -else - set directory^=~/.vim/cache/swap// -endif +set directory^=$MYVIMRUNTIME/cache/swap// " Use UTF-8 if we can and env LANG didn't tell us not to if has('multi_byte') && !exists('$LANG') && &encoding ==# 'latin1' @@ -133,9 +139,6 @@ set include= " Show search matches as I type my pattern set incsearch -" Don't join lines with two spaces at the end of sentences -set nojoinspaces - " Don't show a statusline if there's only one window " This is the Vim default, but NeoVim changed it if &laststatus != 1 @@ -187,22 +190,16 @@ set showbreak=... set splitbelow " Below the current window, not above set splitright " Right of the current window, not left -" Give me a bit longer to complete mappings -set timeoutlen=3000 - " No terminal mouse, even if we could -if exists('+ttymouse') +" The manual says to set 't_RV', but I don't like that +if exists('+ttymouse') && &ttymouse !=# '' set ttymouse= endif " Keep undo files, hopefully in a dedicated directory if has('persistent_undo') set undofile - if has('win32') || has('win64') - set undodir^=~/vimfiles/cache/undo// - else - set undodir^=~/.vim/cache/undo// - endif + set undodir^=$MYVIMRUNTIME/cache/undo// endif " Wildmenu settings; see also plugin/wildignore.vim |