X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=.vimrc;h=d86e0bb8c1843ea9ce3753d0cc8375455cc5726c;hb=16862d6c73ccda3803e4618d16b080a90fe9d84f;hp=aed3f7f57d24363fda5e3b5cf943446d311899dc;hpb=f46bd4d41cc7f243bc8a321effee5200aa69e709;p=dotfiles.git diff --git a/.vimrc b/.vimrc index aed3f7f..d86e0bb 100644 --- a/.vimrc +++ b/.vimrc @@ -204,19 +204,21 @@ else \ || has("win32") " Background of the terminal is black or dark grey set background=dark + highlight MoreMsg ctermfg=white + highlight ModeMsg ctermfg=white + highlight Question ctermfg=white else set background=light + highlight MoreMsg cterm=bold ctermfg=NONE + highlight Question cterm=bold ctermfg=NONE endif if (&term =~ "linux") - set = - else - highlight MoreMsg cterm=bold ctermfg=NONE - highlight Question cterm=bold ctermfg=NONE + execute 'set t_kb=' . nr2char(127) endif - if (&term =~ "term") || (&term =~ "rxvt") || (&term =~ "vt100") || (&term =~ "screen") - set = + if (&term =~ "rxvt") || (&term =~ "screen") || (&term =~ "term") || (&term =~ "vt100") + execute 'set t_kb=' . nr2char(127) " 'autoselect' to always put selected text on the clipboard; " 'unnamed' to use the * register like unnamed register '*' @@ -274,14 +276,14 @@ autocmd BufReadPost * syntax on " Restore last known cursor position function! RestorePosition() - if exists('b:position_resored') + if exists('b:position_restored') return endif if line("'\"") > 0 call cursor(line("'\""), col("'\"")) endif - let b:position_resored = 1 + let b:position_restored = 1 endfunction " When editing a file, always jump to the last cursor position (if saved) @@ -289,15 +291,13 @@ autocmd BufReadPost * call RestorePosition() function! SetupEncoding(encoding) - if !has("iconv") || exists('b:encoding_set') + if !has("iconv") || exists('b:encoding_set') || strlen(a:encoding) == 0 return endif - if strlen(a:encoding) > 0 - call RestorePosition() - let b:encoding_set = 1 - execute "edit ++enc=" . a:encoding - endif + call RestorePosition() + let b:encoding_set = 1 + execute "edit ++enc=" . a:encoding endfunction @@ -471,7 +471,7 @@ if version >= 700 function! W() " let encodings=filter(split(&fileencodings, ','), 'v:val != "ucs-bom"') let encodings = ['us-ascii'] - if $LC_CTYPE == 'ru_RU.UTF-8' + if $LC_CTYPE =~ 'UTF-8' " UTF-8 or en_US.UTF-8 or ru_RU.UTF-8 or such let encodings += ['utf-8'] elseif $LC_CTYPE == 'ru_RU.KOI8-R' let encodings += ['koi8-r', 'utf-8'] @@ -563,19 +563,21 @@ endif " Called automagically after every buffer read, enables fileencoding -" setting from modeline (see Tip #911) +" setting from modeline (see Tip #911: http://vim.wikia.com/wiki/VimTip911) function! AutoEncoding() - if exists("b:justloaded") - unlet b:justloaded - if &modified && &fileencoding != "" - call SetupEncoding(&fileencoding) - endif + if &modified && &fileencoding != "" + call SetupEncoding(&fileencoding) + else + redraw endif + autocmd! auto-encoding + augroup! auto-encoding endfunction -" Magic autocommands installed here -autocmd BufReadPost * let b:justloaded = 1 +augroup auto-encoding +autocmd! autocmd BufWinEnter * call AutoEncoding() +augroup END let CONVERT=1 @@ -725,6 +727,5 @@ command! UName call Uname() endif " ---------- - " This has to go to the very end of ~/.vimrc to allow reading the .vimrc set secure " safer working with script files in the current directory