aboutsummaryrefslogtreecommitdiff
path: root/vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim')
-rw-r--r--vim/bliss.vim490
-rw-r--r--vim/lightline-theme/darcula.vim37
2 files changed, 416 insertions, 111 deletions
diff --git a/vim/bliss.vim b/vim/bliss.vim
index 8c9e96b..68cafc6 100644
--- a/vim/bliss.vim
+++ b/vim/bliss.vim
@@ -1,76 +1,418 @@
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-tomorrow-night.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "1c1b1d"
+let g:base16_gui00 = "1c1b1d"
+
+let s:gui01 = "262427"
+let g:base16_gui01 = "262427"
+
+let s:gui02 = "302e31"
+let g:base16_gui02 = "302e31"
+
+let s:gui03 = "39373b"
+let g:base16_gui03 = "39373b"
+
+let s:gui04 = "DE9DAC"
+let g:base16_gui04 = "DE9DAC"
+
+let s:gui05 = "fdf9f7"
+let g:base16_gui05 = "fdf9f7"
+
+let s:gui06 = "d6d5d8"
+let g:base16_gui06 = "d6d5d8"
+
+let s:gui07 = "fdf9f7"
+let g:base16_gui07 = "fdf9f7"
+" red
+let s:gui08 = "DE9DAC"
+let g:base16_gui08 = "DE9DAC"
+" orange
+let s:gui09 = "DE9DAC"
+let g:base16_gui09 = "DE9DAC"
+" yellow
+let s:gui0A = "DEDD9D"
+let g:base16_gui0A = "DEDD9D"
+" green
+let s:gui0B = "9DDEAF"
+let g:base16_gui0B = "9DDEAF"
+" cyan
+let s:gui0C = "9DCCDE"
+let g:base16_gui0C = "9DCCDE"
+" blue
+let s:gui0D = "9DACDE"
+let g:base16_gui0D = "9DACDE"
+" magenta
+let s:gui0E = "AF9DDE"
+let g:base16_gui0E = "AF9DDE"
+" dark red
+let s:gui0F = "DE9DAC"
+let g:base16_gui0F = "DE9DAC"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#1d1f21"
+ let g:terminal_color_1 = "#cc6666"
+ let g:terminal_color_2 = "#b5bd68"
+ let g:terminal_color_3 = "#f0c674"
+ let g:terminal_color_4 = "#81a2be"
+ let g:terminal_color_5 = "#b294bb"
+ let g:terminal_color_6 = "#8abeb7"
+ let g:terminal_color_7 = "#c5c8c6"
+ let g:terminal_color_8 = "#969896"
+ let g:terminal_color_9 = "#cc6666"
+ let g:terminal_color_10 = "#b5bd68"
+ let g:terminal_color_11 = "#f0c674"
+ let g:terminal_color_12 = "#81a2be"
+ let g:terminal_color_13 = "#b294bb"
+ let g:terminal_color_14 = "#8abeb7"
+ let g:terminal_color_15 = "#ffffff"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#1d1f21",
+ \ "#cc6666",
+ \ "#8abeb7",
+ \ "#b5bd68",
+ \ "#f0c674",
+ \ "#81a2be",
+ \ "#b294bb",
+ \ "#c5c8c6",
+ \ "#969896",
+ \ "#cc6666",
+ \ "#b5bd68",
+ \ "#f0c674",
+ \ "#81a2be",
+ \ "#b294bb",
+ \ "#8abeb7",
+ \ "#ffffff",
+ \ ]
+endif
+
+" Theme setup
hi clear
syntax reset
-let g:colors_name = "bliss"
-set background=dark
-set t_Co=256
-hi Normal guifg=#f0d3c9 ctermbg=NONE guibg=#1c1b1d gui=NONE
-
-hi DiffText guifg=#de9dac guibg=NONE
-hi ErrorMsg guifg=#de9dac guibg=NONE
-hi WarningMsg guifg=#de9dac guibg=NONE
-hi PreProc guifg=#de9dac guibg=NONE
-hi Exception guifg=#de9dac guibg=NONE
-hi Error guifg=#de9dac guibg=NONE
-hi DiffDelete guifg=#de9dac guibg=NONE
-hi GitGutterDelete guifg=#de9dac guibg=NONE
-hi GitGutterChangeDelete guifg=#de9dac guibg=NONE
-hi cssIdentifier guifg=#de9dac guibg=NONE
-hi cssImportant guifg=#de9dac guibg=NONE
-hi Type guifg=#de9dac guibg=NONE
-hi Identifier guifg=#de9dac guibg=NONE
-hi PMenuSel guifg=#9ddeaf guibg=NONE
-hi Constant guifg=#9ddeaf guibg=NONE
-hi Repeat guifg=#9ddeaf guibg=NONE
-hi DiffAdd guifg=#9ddeaf guibg=NONE
-hi GitGutterAdd guifg=#9ddeaf guibg=NONE
-hi cssIncludeKeyword guifg=#9ddeaf guibg=NONE
-hi Keyword guifg=#9ddeaf guibg=NONE
-hi IncSearch guifg=#ded09d guibg=NONE
-hi Title guifg=#ded09d guibg=NONE
-hi PreCondit guifg=#ded09d guibg=NONE
-hi Debug guifg=#ded09d guibg=NONE
-hi SpecialChar guifg=#ded09d guibg=NONE
-hi Conditional guifg=#ded09d guibg=NONE
-hi Todo guifg=#ded09d guibg=NONE
-hi Special guifg=#ded09d guibg=NONE
-hi Label guifg=#ded09d guibg=NONE
-hi Delimiter guifg=#ded09d guibg=NONE
-hi Number guifg=#ded09d guibg=NONE
-hi CursorLineNR guifg=#ded09d guibg=NONE
-hi Define guifg=#ded09d guibg=NONE
-hi MoreMsg guifg=#ded09d guibg=NONE
-hi Tag guifg=#ded09d guibg=NONE
-hi String guifg=#ded09d guibg=NONE
-hi MatchParen guifg=#ded09d guibg=NONE
-hi Macro guifg=#ded09d guibg=NONE
-hi DiffChange guifg=#ded09d guibg=NONE
-hi GitGutterChange guifg=#ded09d guibg=NONE
-hi cssColor guifg=#ded09d guibg=NONE
-hi Function guifg=#9dacde guibg=NONE
-hi Directory guifg=#af9dde guibg=NONE
-hi markdownLinkText guifg=#af9dde guibg=NONE
-hi javaScriptBoolean guifg=#af9dde guibg=NONE
-hi Include guifg=#af9dde guibg=NONE
-hi Storage guifg=#af9dde guibg=NONE
-hi cssClassName guifg=#af9dde guibg=NONE
-hi cssClassNameDot guifg=#af9dde guibg=NONE
-hi Statement guifg=#9dccde guibg=NONE
-hi Operator guifg=#9dccde guibg=NONE
-hi cssAttr guifg=#9dccde guibg=NONE
-
-
-hi Pmenu guifg=#f0d3c9 guibg=#302e31
-hi SignColumn guibg=#1c1b1d
-hi Title guifg=#f0d3c9
-hi LineNr guifg=#635050 guibg=#1c1b1d
-hi NonText guifg=#635050 guibg=#1c1b1d
-hi Comment guifg=#635050 gui=italic
-hi SpecialComment guifg=#635050 gui=italic guibg=#1c1b1d
-hi CursorLine guibg=#302e31
-hi TabLineFill gui=NONE guibg=#302e31
-hi TabLine guifg=#b95634 guibg=#302e31 gui=NONE
-hi StatusLine gui=bold guibg=#302e31 guifg=#f0d3c9
-hi StatusLineNC gui=NONE guibg=#1c1b1d guifg=#f0d3c9
-hi Search guibg=#635050 guifg=#f0d3c9
-hi VertSplit gui=NONE guifg=#302e31 guibg=NONE
-hi Visual gui=NONE guibg=#302e31
+let g:colors_name = "tomorrow"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ if a:guifg != ""
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ if a:guibg != ""
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+call <sid>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "", "")
+call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("FoldColumn", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "none", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Underlined", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "", "")
+call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WildMenu", s:gui08, s:gui0A, s:cterm08, "", "", "")
+call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
+call <sid>hi("Conceal", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "", "")
+call <sid>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+call <sid>hi("NonText", s:gui00, "", s:cterm00, "", "", "")
+call <sid>hi("LineNr", s:gui02, s:gui00, s:cterm03, s:cterm01, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none", "")
+call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui01, s:cterm05, s:cterm01, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
+
+" Standard syntax highlighting
+call <sid>hi("Boolean", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("Character", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Conditional", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("Constant", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
+call <sid>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "", "")
+call <sid>hi("Float", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("Function", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Identifier", s:gui08, "", s:cterm08, "", "none", "")
+call <sid>hi("Include", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("Label", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("Number", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("Operator", s:gui05, "", s:cterm05, "", "none", "")
+call <sid>hi("PreProc", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("Repeat", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("Special", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "", "")
+call <sid>hi("Statement", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("String", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Structure", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("Tag", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" CSS highlighting
+call <sid>hi("cssBraces", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("cssColor", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("DiffChange", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
+call <sid>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "", "")
+call <sid>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "", "")
+call <sid>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "", "")
+call <sid>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "", "")
+call <sid>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+call <sid>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
+call <sid>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("GitGutterChangeDelete", s:gui0E, s:gui01, s:cterm0E, s:cterm01, "", "")
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" JavaScript highlighting
+call <sid>hi("javaScript", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" PHP highlighting
+call <sid>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("phpComparison", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("phpParent", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "")
+call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "")
+
+" SASS highlighting
+call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Signify highlighting
+call <sid>hi("SignifySignAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("SignifySignChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
+call <sid>hi("SignifySignDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+
+" Spelling highlighting
+call <sid>hi("SpellBad", "", "", "", "", "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", "", "", "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", "", "", "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", "", "", "undercurl", s:gui0E)
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" Remove color variables
+unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F
+unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F
diff --git a/vim/lightline-theme/darcula.vim b/vim/lightline-theme/darcula.vim
deleted file mode 100644
index 2103efd..0000000
--- a/vim/lightline-theme/darcula.vim
+++ /dev/null
@@ -1,37 +0,0 @@
-" =============================================================================
-" Filename: autoload/lightline/colorscheme/darcula.vim
-" Author: kkopec
-" License: MIT License
-" Last Change: 2017/02/11 21:18:54.
-" =============================================================================
-
-let s:black = [ '#262727', 235 ]
-let s:gray = [ '#302e31', 236 ]
-let s:white = [ '#f0d3c9', 250 ]
-let s:blue = [ '#9dccde' , 67 ]
-let s:green = [ '#9ddeaf', 71 ]
-let s:purple = [ '#af9dde', 104 ]
-let s:red = [ '#de9dac', 204 ]
-let s:yellow = [ '#ded09d', 222 ]
-
-let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
-let s:p.normal.left = [ [ s:black, s:purple ], [ s:purple, s:gray ] ]
-let s:p.normal.right = [ [ s:black, s:purple ], [ s:purple, s:gray ] ]
-let s:p.inactive.left = [ [ s:black, s:blue ], [ s:blue, s:gray ] ]
-let s:p.inactive.right = [ [ s:black, s:blue ], [ s:blue, s:gray ] ]
-let s:p.insert.left = [ [ s:black, s:green ], [ s:green, s:gray ] ]
-let s:p.insert.right = [ [ s:black, s:green ], [ s:green, s:gray ] ]
-let s:p.replace.left = [ [ s:black, s:red ], [ s:red, s:gray ] ]
-let s:p.replace.right = [ [ s:black, s:red ], [ s:red, s:gray ] ]
-let s:p.visual.left = [ [ s:black, s:yellow ], [ s:yellow, s:gray ] ]
-let s:p.visual.right = [ [ s:black, s:yellow ], [ s:yellow, s:gray ] ]
-let s:p.normal.middle = [ [ s:white, s:gray ] ]
-let s:p.inactive.middle = [ [ s:white, s:gray ] ]
-let s:p.tabline.left = [ [ s:blue, s:gray ] ]
-let s:p.tabline.tabsel = [ [ s:black, s:blue ] ]
-let s:p.tabline.middle = [ [ s:blue, s:gray ] ]
-let s:p.tabline.right = [ [ s:black, s:blue ] ]
-let s:p.normal.error = [ [ s:red, s:black ] ]
-let s:p.normal.warning = [ [ s:yellow, s:black ] ]
-
-let g:lightline#colorscheme#darcula#palette = lightline#colorscheme#flatten(s:p)