X-Git-Url: http://git.iain.cx/?p=profile.git;a=blobdiff_plain;f=.vimrc;h=9fba99c4a6959b843d166be0cf61271ad6b96745;hp=91fd6c15205c345aff3525d751940f34a12e022d;hb=518d9698777610c32b50ac83d8a9463be91f0563;hpb=a444a2977d10626b30b822d5b4812d305c9bad22 diff --git a/.vimrc b/.vimrc index 91fd6c1..9fba99c 100644 --- a/.vimrc +++ b/.vimrc @@ -101,6 +101,9 @@ se t_WS=[8;%p1%d;%p2%dt " Highlight search results. se hlsearch +" Set graphical window title. +se titlestring=%{Show_TitleString()} + " Syntax highlighting. New versions will use syn enable instead. if version < 600 syn on @@ -174,6 +177,16 @@ fun! Show_Paste() endif endfun +" Show the window title. +fun! Show_TitleString() + if bufname("") == "" + let ts1='Vim' + else + let ts1=printf("%2d: %s", bufnr(""), expand('%t')) + endif + return printf("%s (%s) %s", ts1, getcwd(), v:servername) +endfun + " Show the status line. fun! Show_StatusLine() call Iain_Vars() @@ -205,13 +218,17 @@ au BufLeave * if &ft == "make" | call MakeMode_unmap() | endif " Entering Make mode. fun! MakeMode_map() - set list + call Iain_Vars() + let b:iainlist=1 + call Cycle_List() + set ts=8 set noexpandtab endfun " Leaving Make mode. fun! MakeMode_unmap() - set nolist + call Cycle_List() + set ts=2 set expandtab endfun @@ -220,7 +237,7 @@ call Show_StatusLine() " Function to create mappings with either a hardcoded \ or . fun! Mapping(keysequence,mapping) - if version >= "600" + if version < "600" exec "map \\" . a:keysequence . " " . a:mapping else exec "map " . a:keysequence . " " . a:mapping @@ -256,6 +273,9 @@ call Mapping("/", ":let @/=\"\":") " Forget the Ex mode mapping. map Q +" Vim tip 99: What's the highlighting group under the cursor? +call Mapping("h", ":echo \"hi<\" . synIDattr(synID(line(\".\"),col(\".\"),1),\"name\") . '> trans<' . synIDattr(synID(line(\".\"),col(\".\"),0),\"name\") . \"> lo<\" . synIDattr(synIDtrans(synID(line(\".\"),col(\".\"),1)),\"name\") . \">\"") + endif """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" @@ -278,7 +298,10 @@ if has("gui_running") se guifont=DejaVu\ Sans\ Mono\ 10 colo darkblue elseif &t_Co > 16 - colo iain + try + colo iain + catch + endtry endif if has("win32") se guifont=DejaVu_Sans_Mono:h10:cANSI @@ -292,13 +315,13 @@ if &diff let &columns = 164 endif -" Numbers in blue. -highlight LineNr term=underline cterm=bold guifg=blue ctermfg=blue - " Remember that we are opening the quickfix window. au BufWinEnter quickfix let g:quickfixing=1 au BufUnload * if &ft == "qf" | let g:quickfixing=0 | endif +" Allow in-place editing of crontabs. +au FileType crontab set backupcopy=yes + " Make * and # work the way you expect in visual mode. vnoremap * y/\V=substitute(escape(@@,"/\\"),"\n","\\\\n","ge") vnoremap # y?\V=substitute(escape(@@,"?\\"),"\n","\\\\n","ge") @@ -381,19 +404,21 @@ fun! Highlight_StatusLine(flag) if b:iainstatus =~# "I" " Held in insert mode. Add extra highlight if we don't have focus. if b:iainstatus =~# "f" - let s:colour = "darkmagenta" - else let s:colour = "darkred" + let s:term88colour = "32" + let s:term256colour = "88" + else + let s:colour = "darkmagenta" + let s:term88colour = "33" + let s:term256colour = "90" endif - let s:term88colour = "32" - let s:term256colour = "88" endif else if b:iainstatus =~# "I" " Regular insert mode. - let s:colour = "darkred" - let s:term88colour = "32" - let s:term256colour = "88" + let s:colour = "darkmagenta" + let s:term88colour = "33" + let s:term256colour = "90" endif endif @@ -432,4 +457,13 @@ se numberwidth=5 " Add "previous tab" mapping as gb. map gb :tabPrev + +" Transparency. +if has("gui_macvim") + se transparency=15 +endif + +" Perforce. +let g:p4EnableMenu=1 +let g:p4Presets='P4CONFIG' endif