summaryrefslogtreecommitdiff
path: root/lib/vimrc
diff options
context:
space:
mode:
authorBen Sima <bsima@groq.com>2022-07-18 10:01:54 -0700
committerBen Sima <bsima@groq.com>2022-07-28 22:54:24 -0700
commit40b96e3fd75504497e29a564f0178fe2a42a11e5 (patch)
treebc097134a1805d4cd3ed62408521d313e328d7e1 /lib/vimrc
parentbd877092763e7b36605c582cf3d298fbb1653b71 (diff)
Fix vim colors a bit
Diffstat (limited to 'lib/vimrc')
-rw-r--r--lib/vimrc323
1 files changed, 162 insertions, 161 deletions
diff --git a/lib/vimrc b/lib/vimrc
index 4e6c459..c346fbb 100644
--- a/lib/vimrc
+++ b/lib/vimrc
@@ -112,169 +112,170 @@ function! <SID>SynStack()
endfunc
set background=dark
-colorscheme solarized
-" disable my color scheme, it doesn't work with vimdiff
"let g:colors_name = 'bs_monochrome'
+
+let s:white = ['White', 15]
+let s:black = ['#0e1111', 16]
+let s:dblack = ['#111111', 1]
+let s:bgray = ['#181818', 233]
+let s:lgray = ['LightGray', 255]
+let s:cgray = ['#737373', 243]
+let s:dgray = ['DarkGray', 248]
+let s:sblue = ['LightBlue', 67]
+let s:yellow = ['LightYellow', 226]
+let s:red = ['LightRed', 160]
+let s:green = ['LightGreen', 28]
+let s:purple = ['LightMagenta', 13]
+
+let s:default_fg = s:lgray
+let s:default_bg = s:black
+
+let s:italic = 'italic'
+let s:bold = 'bold'
+let s:underline = 'underline'
+let s:none = 'NONE'
+
+let s:default_lst = []
+let s:default_str = ''
+
+if !exists("g:monochrome_italic_comments")
+ let g:monochrome_italic_comments = 0
+endif
+let s:comment_attr = g:monochrome_italic_comments ? s:italic : s:none
"
-"let s:white = ['White', 15]
-"let s:black = ['#0e1111', 16]
-"let s:dblack = ['#111111', 1]
-"let s:bgray = ['#181818', 233]
-"let s:lgray = ['LightGray', 255]
-"let s:cgray = ['#737373', 243]
-"let s:dgray = ['DarkGray', 248]
-"let s:sblue = ['LightBlue', 67]
-"let s:yellow = ['LightYellow', 226]
-"let s:red = ['LightRed', 160]
-"let s:green = ['LightGreen', 28]
-"let s:purple = ['LightMagenta', 13]
-""
-"let s:default_fg = s:lgray
-"let s:default_bg = s:black
-"
-"let s:italic = 'italic'
-"let s:bold = 'bold'
-"let s:underline = 'underline'
-"let s:none = 'NONE'
-"
-"let s:default_lst = []
-"let s:default_str = ''
-"
-"if !exists("g:monochrome_italic_comments")
-" let g:monochrome_italic_comments = 0
-"endif
-"let s:comment_attr = g:monochrome_italic_comments ? s:italic : s:none
-""
-"" A function for setting colors, if I want it...
-"function! s:hi(...)
-" let group = a:1
-" let fg = get(a:, 2, s:default_fg)
-" let bg = get(a:, 3, s:default_bg)
-" let attr = get(a:, 4, s:default_str)
-"
-" let cmd = ['hi', group]
-"
-" if fg != s:default_lst
-" call add(cmd, 'guifg='.fg[0])
-" call add(cmd, 'ctermfg='.fg[1])
-" endif
-"
-" if bg != s:default_lst && bg != s:default_bg
-" call add(cmd, 'guibg='.bg[0])
-" call add(cmd, 'ctermbg='.bg[1])
-" endif
-"
-" if attr != s:default_str
-" call add(cmd, 'gui='.attr)
-" call add(cmd, 'cterm='.attr)
-" endif
-"
-" exec join(cmd, ' ')
-"endfunction
-"
-"call s:hi('Normal')
-"highlight clear Cursor
-"highlight clear CursorLine " clear the underline nonsense
-"call s:hi('Cursor', s:black, s:sblue)
-"call s:hi('lCursor', s:black, s:sblue)
-"call s:hi('CursorLine', s:black, s:sblue, s:none)
-"call s:hi('CursorLineNr', s:white, s:sblue, s:bold)
-"call s:hi('CursorColumn', s:black, s:sblue, s:none)
-"call s:hi('ColorColumn', s:lgray, s:dblack, s:none)
-"call s:hi('Search', s:black, s:purple)
-"call s:hi('Visual', s:black, s:green)
-"call s:hi('ErrorMsg', s:white, s:red)
-"call s:hi('StatusLine', s:black, s:purple)
-"call s:hi('StatusLineNC', s:black, s:purple)
-"call s:hi('VertSplit', s:black, s:purple)
-""
-""" Tildes at the bottom of a buffer, etc.
-"call s:hi('NonText', s:dgray)
-"
-"" Folding.
-"call s:hi('FoldColumn', s:dgray)
-"call s:hi('Folded')
-"
-"" Line numbers gutter.
-"call s:hi('LineNr', s:dgray)
-"
-"" Small arrow used for tabs.
-"call s:hi('SpecialKey', s:sblue, s:default_bg, s:bold)
-"
-"" File browsers.
-"call s:hi('Directory', s:white, s:default_bg, s:bold)
-"
-"" Help.
-"call s:hi('helpSpecial')
-"call s:hi('helpHyperTextJump', s:sblue, s:default_bg, s:underline)
-"call s:hi('helpNote')
-"
-"" Popup menu.
-"call s:hi('Pmenu', s:white, s:sblue)
-"call s:hi('PmenuSel', s:sblue, s:white)
-"
-"" Notes.
-"call s:hi('Todo', s:black, s:yellow, s:bold)
-"
-"" Signs.
-"call s:hi('SignColumn')
-"
-"" --- Languages ---------------------------------------------------------------
-"call s:hi('Statement', s:white, s:default_bg, s:bold)
-"call s:hi('PreProc', s:white, s:default_bg, s:bold)
-"call s:hi('String', s:sblue)
-"call s:hi('Comment', s:cgray, s:default_bg, s:comment_attr)
-"call s:hi('Constant')
-"call s:hi('Type', s:white, s:default_bg, s:bold)
-"call s:hi('Function', s:white)
-"call s:hi('Identifier')
-"call s:hi('Special')
-"call s:hi('MatchParen', s:black, s:lgray)
-"call s:hi('vimOption')
-"call s:hi('vimGroup')
-"call s:hi('vimHiClear')
-"call s:hi('vimHiGroup')
-"call s:hi('vimHiAttrib')
-"call s:hi('vimHiGui')
-"call s:hi('vimHiGuiFgBg')
-"call s:hi('vimHiCTerm')
-"call s:hi('vimHiCTermFgBg')
-"call s:hi('vimSynType')
-"hi link vimCommentTitle Comment
-"call s:hi('pythonEscape', s:sblue)
-"call s:hi('javaScriptFunction', s:white, s:default_bg, s:bold)
-"call s:hi('perlSharpBang', s:cgray)
-"call s:hi('perlStringStartEnd', s:sblue)
-"call s:hi('perlStringEscape', s:sblue)
-"call s:hi('perlMatchStartEnd', s:sblue)
-"call s:hi('elixirAlias', s:default_fg, s:default_bg, s:none)
-"call s:hi('elixirDelimiter', s:sblue)
-"call s:hi('elixirSelf', s:default_fg, s:default_bg, s:none)
-"" For ||, ->, etc.
-"call s:hi('elixirOperator')
-"" Module attributes like @doc or @type.
-"hi link elixirVariable Statement
-"" While rendered as comments in other languages, docstrings are strings,
-"" experimental.
-"hi link elixirDocString String
-"hi link elixirDocTest String
-"hi link elixirStringDelimiter String
-"call s:hi('rubyConstant')
-"call s:hi('rubySharpBang', s:cgray)
-"call s:hi('rubyStringDelimiter', s:sblue)
-"call s:hi('rubyStringEscape', s:sblue)
-"call s:hi('rubyRegexpEscape', s:sblue)
-"call s:hi('rubyRegexpAnchor', s:sblue)
-"call s:hi('rubyRegexpSpecial', s:sblue)
-"
-"" --- Diffs --------------------------------------------------------------------
-"call s:hi('diffFile', s:cgray)
-"call s:hi('diffNewFile', s:cgray)
-"call s:hi('diffIndexLine', s:cgray)
-"call s:hi('diffLine', s:cgray)
-"call s:hi('diffSubname', s:cgray)
-"call s:hi('diffAdded', s:white, s:green)
-"call s:hi('diffRemoved', s:white, s:red)
+" A function for setting colors, if I want it...
+function! s:hi(...)
+ let group = a:1
+ let fg = get(a:, 2, s:default_fg)
+ let bg = get(a:, 3, s:default_bg)
+ let attr = get(a:, 4, s:default_str)
+
+ let cmd = ['hi', group]
+
+ if fg != s:default_lst
+ call add(cmd, 'guifg='.fg[0])
+ call add(cmd, 'ctermfg='.fg[1])
+ endif
+
+ if bg != s:default_lst && bg != s:default_bg
+ call add(cmd, 'guibg='.bg[0])
+ call add(cmd, 'ctermbg='.bg[1])
+ endif
+
+ if attr != s:default_str
+ call add(cmd, 'gui='.attr)
+ call add(cmd, 'cterm='.attr)
+ endif
+
+ exec join(cmd, ' ')
+endfunction
+
+call s:hi('Normal')
+highlight clear Cursor
+highlight clear CursorLine " clear the underline nonsense
+call s:hi('Cursor', s:black, s:sblue)
+call s:hi('lCursor', s:black, s:sblue)
+
+" these are the cross-hair colors
+call s:hi('CursorLine', s:black, s:lgray, s:none)
+call s:hi('CursorColumn', s:black, s:lgray, s:none)
+
+call s:hi('CursorLineNr', s:white, s:sblue, s:bold)
+call s:hi('ColorColumn', s:lgray, s:dblack, s:none)
+call s:hi('Search', s:black, s:purple)
+call s:hi('Visual', s:black, s:green)
+call s:hi('ErrorMsg', s:white, s:red)
+call s:hi('StatusLine', s:black, s:purple)
+call s:hi('StatusLineNC', s:black, s:purple)
+call s:hi('VertSplit', s:black, s:purple)
+
+" Tildes at the bottom of a buffer, etc.
+call s:hi('NonText', s:dgray)
+
+" Folding.
+call s:hi('FoldColumn', s:dgray)
+call s:hi('Folded')
+
+" Line numbers gutter.
+call s:hi('LineNr', s:dgray)
+
+" Small arrow used for tabs.
+call s:hi('SpecialKey', s:sblue, s:default_bg, s:bold)
+
+" File browsers.
+call s:hi('Directory', s:white, s:default_bg, s:bold)
+
+" Help.
+call s:hi('helpSpecial')
+call s:hi('helpHyperTextJump', s:sblue, s:default_bg, s:underline)
+call s:hi('helpNote')
+
+" Popup menu.
+call s:hi('Pmenu', s:white, s:sblue)
+call s:hi('PmenuSel', s:sblue, s:white)
+
+" Notes.
+call s:hi('Todo', s:black, s:yellow, s:bold)
+
+" Signs.
+call s:hi('SignColumn')
+
+" --- Languages ---------------------------------------------------------------
+call s:hi('Statement', s:white, s:default_bg, s:bold)
+call s:hi('PreProc', s:white, s:default_bg, s:bold)
+call s:hi('String', s:sblue)
+call s:hi('Comment', s:cgray, s:default_bg, s:comment_attr)
+call s:hi('Constant')
+call s:hi('Type', s:white, s:default_bg, s:bold)
+call s:hi('Function', s:white)
+call s:hi('Identifier')
+call s:hi('Special')
+call s:hi('MatchParen', s:black, s:lgray)
+call s:hi('vimOption')
+call s:hi('vimGroup')
+call s:hi('vimHiClear')
+call s:hi('vimHiGroup')
+call s:hi('vimHiAttrib')
+call s:hi('vimHiGui')
+call s:hi('vimHiGuiFgBg')
+call s:hi('vimHiCTerm')
+call s:hi('vimHiCTermFgBg')
+call s:hi('vimSynType')
+hi link vimCommentTitle Comment
+call s:hi('pythonEscape', s:sblue)
+call s:hi('javaScriptFunction', s:white, s:default_bg, s:bold)
+call s:hi('perlSharpBang', s:cgray)
+call s:hi('perlStringStartEnd', s:sblue)
+call s:hi('perlStringEscape', s:sblue)
+call s:hi('perlMatchStartEnd', s:sblue)
+call s:hi('elixirAlias', s:default_fg, s:default_bg, s:none)
+call s:hi('elixirDelimiter', s:sblue)
+call s:hi('elixirSelf', s:default_fg, s:default_bg, s:none)
+" For ||, ->, etc.
+call s:hi('elixirOperator')
+" Module attributes like @doc or @type.
+hi link elixirVariable Statement
+" While rendered as comments in other languages, docstrings are strings,
+" experimental.
+hi link elixirDocString String
+hi link elixirDocTest String
+hi link elixirStringDelimiter String
+call s:hi('rubyConstant')
+call s:hi('rubySharpBang', s:cgray)
+call s:hi('rubyStringDelimiter', s:sblue)
+call s:hi('rubyStringEscape', s:sblue)
+call s:hi('rubyRegexpEscape', s:sblue)
+call s:hi('rubyRegexpAnchor', s:sblue)
+call s:hi('rubyRegexpSpecial', s:sblue)
+
+" --- Diffs --------------------------------------------------------------------
+call s:hi('diffFile', s:cgray)
+call s:hi('diffNewFile', s:cgray)
+call s:hi('diffIndexLine', s:cgray)
+call s:hi('diffLine', s:cgray)
+call s:hi('diffSubname', s:cgray)
+call s:hi('diffAdded', s:white, s:green)
+call s:hi('diffRemoved', s:white, s:red)
" load ~/.vimrc.local last for local overrides
if filereadable(expand('~/.vimrc.local'))