Always use cursorline with a highlight.
[profile.git] / .vim / colors / iain.vim
index 8de7066..45dce40 100644 (file)
@@ -208,9 +208,18 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
 
     " sets the highlighting for the given group
     fun! <SID>X(group, fg, bg, attr)
+        " Our dark grey ends up being too light when Vim is run inside screen
+        " on an 88-colour urxvt.
+        let l:hackgrey = "#303030"
+        let l:hackterm = "^screen-256color"
+        let l:hackbad = 235
+        let l:hackgood = 234
         if a:fg != ""
             if a:fg =~ '^#'
                 let l:fg = <SID>rgb(substitute(a:fg, '^#', '', ''))
+                if a:fg == l:hackgrey && &term =~ l:hackterm && l:fg == l:hackbad
+                  let l:fg = l:hackgood
+                endif
             else
                 let l:fg=a:fg
             endif
@@ -219,6 +228,9 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
         if a:bg != ""
             if a:bg =~ '^#'
                 let l:bg = <SID>rgb(substitute(a:bg, '^#', '', ''))
+                if a:bg == l:hackgrey && &term =~ l:hackterm && l:bg == l:hackbad
+                  let l:bg = l:hackgood
+                endif
             else
                 let l:bg=a:bg
             endif
@@ -248,12 +260,14 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
     call <SID>X("Folded", "#808080", "#303030", "")
     call <SID>X("FoldColumn", "#808080", "#303030", "")
     call <SID>X("LineNr", "#90f020", "#303030", "")
+    call <SID>X("CursorLineNr", "#303030", "#90f020", "none")
     call <SID>X("DiffAdd", "", "#008bff", "")
     call <SID>X("DiffChange", "", "#8b008b", "")
     call <SID>X("DiffDelete", "#008b8b", "#303030", "")
     call <SID>X("DiffText", "#ffffff", "#ff0000", "none")
     call <SID>X("Cursor", "#000000", "#00ff00", "")
     call <SID>X("CursorLine", "", "#2e2e2e", "none")
+    call <SID>X("ColorColumn", "", "#2e2e2e", "none")
     call <SID>X("lCursor", "#000000", "#ffffff", "")
     "call <SID>X("Comment", "#80a0ff", "", "")
     "call <SID>X("Constant", "#ffa0a0", "", "")
@@ -283,6 +297,8 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
     hi! link TabLineSel StatusLine
     hi! link TabLine StatusLineNC
 
+    hi clear CursorLine
+
     hi MatchParen ctermbg=blue
 
     call <SID>X("Pmenu", "#ffffff", "#287eff", "")
@@ -322,6 +338,7 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
     call <SID>X("MarkLine", "", "#303030", "")
     call <SID>X("MarkDot", "red", "#303030", "")
     call <SID>X("MarkSign", "lightblue", "#303030", "")
+    call <SID>X("MarkArrow", "#00ff00", "#303030", "")
     hi! link SignColumn LineNr
 
     " Fix up NERDTree stuff.
@@ -331,6 +348,18 @@ if has("gui_running") || &t_Co == 88 || &t_Co == 256
     hi link treeClosable treeDirSlash
     hi link treePart treeDirSlash
     hi link treePartFile treeDirSlash
+
+    " Fix up BufExplorer stuff.
+    hi link bufExplorerHelp Include
+    hi link bufExplorerSortBy Include
+    hi link bufExplorerMapping Identifier
+    hi link bufExplorerTitle Statement
+    hi link bufExplorerActBuf Directory
+    hi link bufExplorerAltBuf Type
+    hi link bufExplorerCurBuf Statement
+    hi link bufExplorerHidBuf Comment
+    hi link bufExplorerUnlBuf String
+    hi link bufExplorerBufNbr Normal
 endif
 
 " vim: set fdl=0 fdm=marker: