]> git.phdru.name Git - dotfiles.git/blobdiff - .vimrc
.vimrc: Set universal encoding for .viminfo
[dotfiles.git] / .vimrc
diff --git a/.vimrc b/.vimrc
index bc18a76ea2aa263163d917f70f8b5ff875321969..b25ff63f9d891c1088edfe5d6110d9e1c475dea6 100644 (file)
--- a/.vimrc
+++ b/.vimrc
@@ -87,7 +87,9 @@ set titlestring=%t%(\ %M%)%(\ (%{expand(\"%:p:h\")})%)%(\ %a%)\ -\ [%{$USER}@%{h
 
 " 9 using the mouse
 
-set mouse=ar      " Use mouse in all modes, plus hit-return
+if has('mouse')
+   set mouse=ar      " Use mouse in all modes, plus hit-return
+endif
 
 " 12 messages and info
 
@@ -183,15 +185,16 @@ set fileencodings=ucs-bom,us-ascii,utf-8,koi8-r,cp1251,cp866,latin1
 " ' - number of files for which the marks are remembered;
 " " and < - maximum number of lines saved for a register;
 " s - maximum size of an item in Kbytes.
+set viminfo=!,h,'50
 if version < 603
-   set viminfo=!,h,'50,\"1000
+   set viminfo+=\"1000
 else
-   set viminfo=!,h,'50,<1000,s10
+   set viminfo+=<1000,s10
 endif
 
 " c - convert viminfo to the current encoding;
 if has("iconv")
-   set viminfo^=c
+   set viminfo+=c
 endif
 
 " Removable media paths
@@ -570,6 +573,9 @@ function! SlowTerm()
    set nowildmenu
    set wildmode=list:longest
    set viminfo=!,h,'10,<100,s5
+   if has("iconv")
+      set viminfo+=c
+   endif
    syntax off
    highlight NonText cterm=NONE ctermfg=NONE
 endfunction
@@ -589,7 +595,7 @@ endif
 
 
 " From Tip 212:
-" http://vim.wikia.com/wiki/Setting_file_attributes_without_reloading_a_buffer
+" http://vim.fandom.com/wiki/Setting_file_attributes_without_reloading_a_buffer
 
 if executable('chmod')
    function! SetExecutableBit(x)
@@ -656,7 +662,7 @@ endif
 
 " Called automagically after every buffer read, enables fileencoding
 " setting from modeline (see Tip #911:
-" http://vim.wikia.com/wiki/How_to_make_fileencoding_work_in_the_modeline)
+" http://vim.fandom.com/wiki/How_to_make_fileencoding_work_in_the_modeline)
 function! AutoEncoding()
   if &modified && &fileencoding != ""
     call SetupEncoding(&fileencoding)
@@ -779,5 +785,15 @@ command! UName Uname
 endif
 " ----------
 
+if has("iconv")
+function! SetViminfoEncoding()
+   " Set universal encoding for .viminfo
+   if &encoding != 'utf-8'
+      set encoding=utf-8
+   endif
+endfunction
+autocmd VimLeavePre * call SetViminfoEncoding()
+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