diff --git a/vim/colors/monotonous-chroma.erb b/vim/colors/monotonous-chroma.erb new file mode 100644 index 0000000..28c67b1 --- /dev/null +++ b/vim/colors/monotonous-chroma.erb @@ -0,0 +1,795 @@ +<% + require 'chroma' + # RNB, A VIM COLORSCHEME TEMPLATE + # Author: Romain Lafourcade (https://github.com/romainl) + # Canonical URL: https://gist.github.com/romainl/5cd2f4ec222805f49eca + + # Step 1: information + # + # Make sure the name of your colorscheme is unique and attractive. + # The description should fit in a single line with no linefeed. + # 'background' can be "light" or "dark". + information = { + author: "studiovx", + email: "studiovx@studiovx.co.uk", + name: "monotonous-chroma", + description: "", + background: "dark", + webpage: "" + } + + # Step 2: colors + # + # black = [ give each color a distinctive name + # "#000000", hexadecimal color for GVim/MacVim and "true colors" terminals + # 0, integer between 0 and 255 for terminals supporting 256 colors + # "black" color name for less capable color terminals, can be "darkred", "red", + # "darkgreen", "green", "darkyellow", "yellow", "darkblue", "blue", + # "darkmagenta", "magenta", "black", "darkgrey", "grey", "white" + # ] + # + # If your colors are defined correctly, the resulting colorscheme is guaranteed + # to work in GVim (Windows/Linux), MacVim, and any properly set up terminal emulator. + + darkred1 = ["#373030", 237, "darkred"] + darkred2 = ["#6b5d5d", 52, "darkred"] + darkred3 = ["#866b6b", 52, "darkred"] + red1 = ["#967978", 52, "darkred"] + red2 = ["#a78685", 88, "darkred"] + red3 = ["#b79392", 88, "red"] + lightred1 = ["#c4a6a5", 88, "red"] + lightred2 = ["#cab0af", 124, "red"] + lightred3 = ["#d1bab9", 124, "red"] + + graygreen0 = ["#303730", 237, "black"] + green1 = ["#6b866c", 22, "darkgreen"] + green2 = ["#7a9678", 22, "darkgreen"] + green3 = ["#85a786", 28, "darkgreen"] + green4 = ["#95b792", 28, "green"] + green5 = ["#a5c4a5", 28, "green"] + green6 = ["#b1caaf", 34, "green"] + green7 = ["#b9d1bb", 34, "green"] + + grayblue0 = ["#303237", 237, "black"] + blue1 = ["#5c6191", 17, "darkblue"] + blue2 = ["#6a6f9b", 18, "darkblue"] + blue3 = ["#7378b4", 19, "darkblue"] + blue4 = ["#7e84c6", 19, "blue"] + blue5 = ["#898fcb", 20, "blue"] + blue6 = ["#959ad0", 20, "blue"] + blue7 = ["#a1a5d5", 21, "blue"] + + grayindigo0 = ["#323037", 237, "black"] + indigo1 = ["#6c6b86", 17, "darkblue"] + indigo2 = ["#787896", 18, "darkblue"] + indigo3 = ["#8685a7", 19, "darkblue"] + indigo4 = ["#9292b7", 19, "blue"] + indigo5 = ["#a6a5c4", 20, "blue"] + indigo6 = ["#b0afca", 20, "blue"] + indigo7 = ["#beb9d1", 21, "blue"] + + grayyellow0 = ["#373730", 237, "black"] + yellow1 = ["#90905c", 22, "darkyellow"] + yellow2 = ["#a2a268", 22, "darkyellow"] + yellow3 = ["#b4b473", 28, "darkyellow"] + yellow4 = ["#c3c67e", 28, "yellow"] + yellow5 = ["#c6c689", 28, "yellow"] + yellow6 = ["#d0d095", 34, "yellow"] + yellow7 = ["#d5d5a1", 34, "yellow"] + + base = "#767070" + + bg_cursorline = ["#1B1C1D", 232, "gray"] + bg_colorcolumn = bg_cursorline + bg_cursorcolumn = ["#1F1F1F", 232, "gray"] + bg = ["#202122", 234, "black"] + bg_cursorline_input = ["#384046", 17, "darkblue"] + fg_weak1 = ["#494646", 238, "gray"] + fg_comment = ["#5d5d5d", 240, "gray"] + fg_weak2 = ["#716c6c", 243, "gray"] + fg = [base, 243, "gray"] + fg_strong1 = [base.paint.lighten(5.8), 244, "darkgray"] + fg_strong2 = [base.paint.lighten(14.1), 247, "darkgray"] + fg_strong3 = [base.paint.lighten(22.4), 250, "white"] + fg_strong4 = [base.paint.lighten(48.2), 255, "white"] + + fg_error = ["#c74444", 196, "red"] + fg_spellcap = ["#a67038", 166, "yellow"] + fg_spellrare = ["#797532", 247, "darkyellow"] + fg_spelllocal = fg_spellrare + bg_whitespace_error = ["#6a2e2e", 196, "red"] + + color_primary_weak1 = darkred1 + color_primary_weak2 = darkred2 + color_primary_weak3 = darkred3 + color_primary1 = red1 + color_primary2 = red2 + color_primary3 = red3 + color_primary_strong1 = lightred1 + color_primary_strong2 = lightred2 + color_primary_strong3 = lightred3 + + color_secondary_weak = green5 + color_secondary = green6 + color_secondary_strong = green7 + + color_tertiary_weak = blue3 + color_tertiary = blue4 + color_tertiary_strong = blue7 + + ui_bg = ["#3f3f3f", 238, "gray"] + ui_fg_weak1 = ["#494646", 238, "gray"] + ui_fg_weak2 = ["#5d5959", 240, "gray"] + ui_fg = ["#716c6c", 243, "gray"] + ui_fg_strong1 = ["#857f7f", 244, "darkgray"] + ui_fg_strong2 = ["#9a9393", 247, "darkgray"] + ui_fg_strong3 = ["#aeadad", 250, "white"] + ui_fg_strong4 = ["#eee4e4", 255, "white"] + + ui_cursor_bg = ["#eee4e4", 255, "white"] + ui_cursor_fg = ["#131313", 0, "black"] + + ui_linenr = fg_weak1 + ui_cursorlinenr = fg_weak2 + + ui_search = ["#49535a", 17, "darkblue"] + ui_incsearch = ["#93adc2", 17, "darkblue"] + + ui_visual_bg = ["#384046", 17, "darkblue"] + ui_visualnos_bg = ["#463838", 52, "darkred"] + + menu_bg = ["#333535", 237, "black"] + menu_fg = ui_fg_strong1 + menu_sel = ui_fg_strong3 + + diff_delete_bg = ["#282020", 52, "darkred"] + diff_add_bg = ["#202820", 22, "darkgreen"] + diff_change_bg = ["#242528", 17, "darkblue"] + diff_change_fg = ["#656a7c", 21, "white"] + + ui_sign_add = ["#496349", 34, "green"] + ui_sign_change = ["#596171", 19, "blue"] + ui_sign_delete = ["#725454", 124, "red"] + ui_sign_changedelete = ["#5c4a5a", 126, "magenta"] + + ui_statusbar_mod = ["#655757", 124, "red"] + ui_statusbar_mod_active = ["#916c6c", 124, "red"] + ui_statusbar_input = ["#384046", 17, "darkblue"] + + ui_fileinfo = fg_comment + + ui_fg_errormsg = ["#c74444", 196, "red"] + ui_fg_warningmsg = ["#a67038", 166, "yellow"] + ui_fg_question = ["#797532", 247, "darkgray"] + + ui_fg_warning_weak = ["#7b6a6a", 88, "darkred"] + ui_fg_warning = ["#725454", 124, "red"] + ui_fg_warning_strong = ["#916c6c", 196, "red"] + ui_fg_error = ["#7D3636", 196, "red"] + + ui_fg_linter_dash = fg_weak1 + ui_fg_linter_dash_active = fg_comment + ui_fg_linter_error = ui_fg + ui_fg_linter_error_active = ui_fg_error + ui_fg_linter_warning = ui_fg_weak2 + ui_fg_linter_warning_active = ui_fg_warning + ui_fg_linter_info = fg_weak1 + ui_fg_linter_info_active = fg_comment + + + + # Step 3: highlights + highlights = [ + [ "Normal", bg, fg, "NONE" ], + + [ "Special", "NONE", lightred2, "bold" ], + [ "NonText", "NONE", lightred3, "NONE" ], + [ "Tag", color_primary_weak1, "NONE", "NONE" ], + + [ "Identifier", "NONE", red3, "NONE" ], + [ "Function", "NONE", lightred1, "bold" ], + + [ "Type", "NONE", red1, "NONE" ], + [ "StorageClass", "NONE", color_primary_weak3, "bold" ], + [ "Structure", "StorageClass"], + [ "TypeDef", "StorageClass"], + + [ "Constant", "NONE", fg_strong4, "italic" ], + [ "String", "NONE", fg_strong3, "italic" ], + [ "Character", "String" ], + [ "Number", "String" ], + [ "Boolean", "String" ], + [ "Float", "String" ], + + [ "Folded", "NONE", fg_strong3, "NONE" ], + + [ "Statement", "NONE", fg, "NONE" ], + [ "Conditional", "NONE", fg_strong3, "bold" ], + [ "Repeat", "NONE", fg_strong2, "bold" ], + [ "Label", "NONE", fg_strong1, "bold" ], + [ "Operator", "NONE", fg_strong2, "bold" ], + [ "Keyword", "NONE", fg_strong1, "bold" ], + [ "Exception", "NONE", color_primary_weak2, "bold" ], + + [ "PreProc", "NONE", fg_weak1, "bold" ], + [ "Include", "NONE", fg_weak1, "NONE" ], + + [ "Comment", "NONE", fg_comment, "italic" ], + [ "SpecialComment", "NONE", fg_strong1, "italic"], + [ "Todo", "NONE", fg_strong2, "italic" ], + + [ "Ignore", "NONE", bg, "NONE" ], + + [ "Error", "NONE", fg_error, "bold" ], + + [ "Underlined", "NONE", "NONE", "underline" ], + + [ "StatusLine", ui_bg, ui_fg_strong3, "NONE" ], + [ "StatusLineNC", ui_bg, ui_fg, "NONE" ], + [ "TabLine", ui_bg, ui_fg, "NONE" ], + [ "TabLineFill", ui_bg, ui_bg, "NONE" ], + [ "TabLineSel", ui_bg, ui_fg_strong3, "NONE" ], + + [ "VertSplit", bg, ui_bg, "NONE" ], + [ "FoldColumn", bg, fg_weak1, "NONE" ], + [ "ColorColumn", bg_colorcolumn, "NONE", "NONE" ], + [ "SignColumn", bg, ui_fg_strong3, "NONE" ], + [ "CursorLine", bg_cursorline, "NONE", "NONE" ], + + [ "Title", "Constant" ], + + [ "LineNr", bg, ui_linenr, "NONE" ], + [ "CursorLineNr", bg, ui_cursorlinenr, "bold" ], + + # [ "helpLeadBlank", "NONE", grayfg, "NONE" ], + # [ "helpNormal", "NONE", grayfg, "NONE" ], + + [ "Pmenu", menu_bg, menu_fg, "NONE" ], + [ "PmenuSbar", menu_bg, menu_bg, "NONE" ], + [ "PmenuSel", menu_bg, menu_sel, "bold" ], + [ "PmenuThumb", menu_fg, menu_fg, "NONE" ], + + [ "SpecialKey", "NONE", lightred3, "NONE" ], + + [ "DiffAdd", diff_add_bg, "NONE", "NONE" ], + [ "DiffChange", diff_change_bg, "NONE", "NONE" ], + [ "DiffDelete", diff_delete_bg, "NONE", "NONE" ], + [ "DiffText", diff_change_bg, diff_change_fg, "NONE" ], + + [ "IncSearch", ui_incsearch, bg, "NONE" ], + [ "Search", ui_search, ui_fg_strong3, "NONE" ], + + [ "Visual", ui_visual_bg, "NONE", "NONE" ], + [ "VisualNOS", ui_visualnos_bg, "NONE", "NONE" ], + + [ "Directory", "NONE", ui_fg_strong3, "NONE" ], + + [ "MatchParen", ui_search, "NONE", "bold" ], + + [ "SpellBad", "NONE", fg_error, "NONE", fg_error ], + [ "SpellCap", "NONE", fg_spellcap, "NONE", fg_spellcap ], + [ "SpellLocal", "NONE", fg_spelllocal, "NONE", fg_spellcap ], + [ "SpellRare", "NONE", fg_spellrare, "NONE", fg_spellcap ], + + [ "WildMenu", ui_bg, ui_fg_strong4, "bold" ], + [ "ErrorMsg", "NONE", ui_fg_errormsg, "bold" ], + [ "ModeMsg", "NONE", ui_fg_strong4, "bold" ], + [ "MoreMsg", "NONE", ui_fg_strong4, "NONE" ], + [ "Question", "NONE", ui_fg_question, "NONE" ], + [ "WarningMsg", "NONE", ui_fg_warningmsg, "bold" ], + + [ "Cursor", ui_cursor_bg, ui_cursor_fg, "bold" ], + [ "CursorColumn", bg_cursorcolumn, "NONE", "NONE" ], + + [ "EndOfBuffer", bg, bg, "NONE" ], + + [ "Noise", "NONE", ui_fg_weak2, "NONE"], + + + # tabline, statusline + + [ "TabLineNum", ui_bg, ui_fg, "bold"], + [ "TabLineNumSel", ui_bg, ui_fg_strong1, "bold"], + + + [ "StatusLineNoise", ui_bg, ui_fg_weak2, "NONE"], + [ "StatusLineNoiseActive", ui_bg, ui_fg, "NONE"], + + [ "StatusLineBufferNr", ui_bg, ui_fg_strong2, "bold"], + [ "StatusLineBufferNrActive", ui_bg, ui_fg_strong3, "bold"], + + [ "StatusLinePercent", ui_bg, ui_fg, "bold"], + [ "StatusLinePercentActive", ui_bg, ui_fg_strong2, "bold"], + [ "StatusLineLinecount", ui_bg, ui_fg, "bold"], + [ "StatusLineLinecountActive", ui_bg, ui_fg_strong1, "bold"], + + [ "StatusLineDivActive", ui_fg, ui_fg, "NONE"], + [ "StatusLineDivInput", ui_statusbar_input, ui_statusbar_input, "NONE"], + [ "StatusLineDivMod", ui_statusbar_mod, ui_statusbar_mod, "NONE"], + [ "StatusLineDivModActive", ui_statusbar_mod_active, ui_statusbar_mod_active, "NONE"], + + [ "StatusLineFileInfo", "NONE", ui_fileinfo, "italic"], + + [ "StatusLineFile", ui_bg, ui_fg_strong2, "italic"], + [ "StatusLineFileActive", ui_bg, ui_fg_strong3, "italic"], + [ "StatusLineDir", ui_bg, ui_fg, "italic"], + [ "StatusLineDirActive", ui_bg, ui_fg, "italic"], + [ "StatusLineExt", ui_bg, ui_fg, "italic"], + [ "StatusLineExtActive", ui_bg, ui_fg_strong1, "italic"], + [ "StatusLineDot", ui_bg, ui_fg_weak2, "italic"], + [ "StatusLineDotActive", ui_bg, ui_fg_weak2, "italic"], + + [ "StatusLineFileReadOnly", ui_bg, ui_fg_warning, "italic"], + [ "StatusLineFileReadOnlyActive", "NONE", ui_fg_warning, "italic"], + [ "StatusLineWarning", ui_bg, ui_fg_strong1, "bold"], + [ "StatusLineWarningActive", "NONE", ui_fg_warning, "bold"], + + [ "LinterDash", "NONE", ui_fg_linter_dash, "NONE"], + [ "LinterDashActive", "NONE", ui_fg_linter_dash_active, "NONE"], + + [ "LinterError", "NONE", ui_fg_linter_error, "bold"], + [ "LinterErrorActive", "NONE", ui_fg_linter_error_active, "bold"], + [ "LinterErrorStyle", "NONE", ui_fg_linter_error, "NONE"], + [ "LinterErrorStyleActive", "NONE", ui_fg_linter_error_active, "NONE"], + + [ "LinterWarning", "NONE", ui_fg_linter_warning, "bold"], + [ "LinterWarningActive", "NONE", ui_fg_linter_warning_active, "bold"], + [ "LinterWarningStyle", "NONE", ui_fg_linter_warning, "NONE"], + [ "LinterWarningStyleActive", "NONE", ui_fg_linter_warning_active, "NONE"], + + [ "LinterInfo", "NONE", ui_fg_linter_info, "NONE"], + [ "LinterInfoActive", "NONE", ui_fg_linter_info_active, "NONE"], + + [ "GitGutterDelete", "NONE", ui_sign_delete, "bold"], + [ "GitGutterChange", "NONE", ui_sign_change, "bold"], + [ "GitGutterAdd", "NONE", ui_sign_add, "bold"], + [ "GitGutterChangeDelete", "NONE", ui_sign_changedelete, "bold"], + + # css, scss + + [ "cssIdentifier", "NONE", color_secondary, "bold" ], + [ "cssClass", "NONE", color_secondary_weak, "NONE" ], + [ "cssFunction", "NONE", fg_strong1, "bold" ], + [ "cssProp", "NONE", fg_weak2, "NONE" ], + [ "scssVariable", "NONE", color_secondary_strong, "bold" ], + + [ "cssAttr", "String"], + [ "cssIdentifierAttr", "Noise" ], + [ "cssClassAttr", "cssIdentifierAttr" ], + [ "cssAttrNoise", "Noise" ], + [ "atKeyword", "PreProc" ], + [ "cssIdentifier", "cssIdentifier" ], + [ "cssClassName", "cssClass" ], + [ "cssClassNameDot", "cssClass" ], + [ "cssTagName", "htmlTagName" ], + [ "cssPseudoClassId", "cssClassName" ], + [ "cssKeyFrameSelector", "Label" ], + [ "cssFunctionName", "cssIdentifier" ], + [ "cssBraces", "Noise" ], + [ "cssUnitDecorators", "NONE", fg_strong2, "NONE" ], + [ "scssSelector", "cssClass" ], + [ "scssSelectorName", "scssSelector" ], + [ "scssSelectorChar", "cssIdentifier" ], + [ "scssFunctionName", "cssFunction" ], + [ "scssMixin", "keyword" ], + [ "scssMixinName", "cssFunction" ], + [ "scssampersand", "scssSelectorName" ], + [ "scssAtRoot", "atKeyword" ], + [ "vue_scss", "cssIdentifier" ], + + #html + + ["htmlTagName", "NONE", color_tertiary_weak, "NONE"], + ["htmlSpecialTagName", "NONE", color_tertiary, "bold"], + ["htmlLink", "NONE", color_tertiary_strong, "underline"], + + [ "htmlNormal", "Normal" ], + + [ "htmlTitle", "Title" ], + [ "htmlH1", "htmlTitle" ], + [ "htmlTag", "Noise" ], + [ "htmlEndTag", "htmlTag" ], + [ "htmlArg", "PreProc" ], + [ "htmlValue", "String" ], + [ "htmlSpecialChar", "Special" ], + [ "htmlPreStmt", "PreProc" ], + [ "htmlPreError", "Error" ], + [ "htmlPreProc", "PreProc" ], + [ "htmlPreAttr", "String" ], + [ "htmlPreProcAttrName", "PreProc" ], + [ "htmlPreProcAttrError", "Error" ], + [ "htmlSpecial", "Special" ], + [ "htmlSpecialChar", "Special" ], + [ "htmlString", "String" ], + [ "htmlStatement", "Statement" ], + [ "htmlComment", "Comment" ], + [ "htmlCommentPart", "Comment" ], + [ "htmlValue", "String" ], + [ "htmlCommentError", "htmlError" ], + [ "htmlTagError", "htmlError" ], + [ "htmlEvent", "javaScript" ], + [ "htmlError", "Error" ], + + [ "javaScript", "Special" ], + [ "javaScriptExpression", "javaScript" ], + [ "htmlCssStyleComment", "Comment" ], + [ "htmlCssDefinition", "Special" ], + + [ "htmlImgArg", "htmlArg" ], + [ "htmlSrcValue", "String" ], + [ "htmlSrcsetValue", "htmlSrcValue" ], + [ "htmlAltValue", "String" ], + [ "htmlDataArg", "htmlTagName" ], + [ "htmlDataValue", "Constant" ], + [ "htmlHrefArg", "htmlArg" ], + [ "htmlHrefValue", "htmlSrcValue" ], + + # vue + + [ "vueTagSpecial", "NONE", indigo5, "bold" ], + [ "vueTagComponentName", "NONE", indigo3, "bold" ], + [ "vueDynamicComponent", "NONE", indigo1, "bold" ], + + [ "vueTransitionComponent", "vueDynamicComponent" ], + [ "vueTransitionName", "cssIdentifier" ], + [ "vueTransitionMode", "String" ], + [ "vueDirective", "Identifier" ], + [ "vueEvent", "Function" ], + [ "vueConditional", "Special" ], + [ "vueFor", "vueConditional" ], + [ "vueRef", "vueDirective" ], + [ "vueSlot", "Noise" ], + + [ "vueDirectiveValue", "Type" ], + [ "vueEventValue", "vueDirectiveValue" ], + [ "vueConditionalValue", "vueDirectiveValue" ], + [ "vueForValue", "vueConditionalValue" ], + [ "vueRefValue", "Constant" ], + [ "vueSlotName", "Constant" ], + [ "vueObjectKey", "cssClass" ], + [ "vueObjectValue", "vueDirectiveValue" ], + [ "vueDirectiveClass", "Noise" ], + [ "vueMustache", "Type" ], + + # javascript + [ "jsFunctionKey", "Function" ], + [ "jsFuncCall", "NONE", red2, "bold" ], + [ "jsFuncCall", "Identifier" ], + [ "jsOperator", "Operator" ], + [ "jsVariableDef", "Identifier" ], + [ "jsGlobalObjects", "NONE", fg_strong2, "bold" ], + [ "jsGlobalNodeObjects", "jsGlobalObjects" ], + [ "jsExceptions", "jsGlobalObjects" ], + [ "jsBuiltins", "jsGlobalObjects" ], + [ "jsStorageClass", "Include" ], + [ "jsObjectKey", "NONE", red3, "NONE"], + [ "jsObjectProp", "Type" ], + [ "jsObjectValue", "NONE", color_primary_weak3, "NONE" ], + [ "jsModuleKeyword", "Type" ], + [ "jsOperatorKeyword", "Label" ], + [ "jsThis", "jsGlobalObjects" ], + [ "jsArrowFunction", "Function" ], + + # python + + [ "pythonBuiltin", "Type" ], + [ "pythonBuiltinObj", "Special" ], + [ "pythonDottedName", "Identifier" ], + [ "pythonBrackets", "Noise" ], + [ "pythonQuotes", "Noise" ], + [ "pythonDot", "Noise" ], + [ "pythonNoise", "Noise" ], + [ "pythonExtraOperator", "Operator" ], + [ "pythonDocString", "SpecialComment" ], + [ "pythonSelf", "NONE", fg_weak1, "bold" ], + + # sql + + [ "sqlOperator", "Operator" ], + + # vim + + [ "vimFoldMarker", "NONE", fg_weak1, "NONE"], + [ "vimMap", "Noise" ], + [ "vimAbb", "vimMap" ], + [ "VimCommand", "Statement" ], + [ "VimOption", "String" ], + [ "vimFunction", "Function" ], + [ "vimFuncKey", "Special" ], + [ "vimHighlight", "Noise" ], + [ "vimAuGroupKey", "Noise" ], + [ "vimAutoCmd", "Noise" ], + [ "vimHiTerm", "Include" ], + [ "vimHiAttrib", "Number" ], + [ "VimIsCommand", "Type" ], + [ "vimNotation", "StorageClass" ], + [ "vimMapLhs", "Special" ], + [ "vimMapRhs", "Label" ], + [ "vimNotFunc", "Conditional" ], + [ "vimSep", "Noise" ], + [ "vimParenSep", "vimSep" ], + [ "vimContinue", "vimSep" ], + [ "vimBracket", "vimSep" ], + [ "vimOperParen", "Normal" ], + [ "vimUserFunc", "Identifier" ], + [ "vimFoldMarker", "Noise" ], + + # yaml + + ["yamlKeyValueDelimiter", "Noise" ], + ["yamlFowIndicator", "Noise" ], + + # config highlighting + + [ "confComment", "Comment" ], + + + # extra whitespace + + [ "ExtraWhitespace", bg_whitespace_error ,"NONE", "NONE" ], + + # php + + [ "phpRegion", "Normal" ], + [ "phpComparison", "Operator" ], + + # quickfix + + [ "QuickfixLine", "NONE", ui_fg_strong2, "bold" ], + [ "qfLineNr", "NONE", ui_fg_weak2, "italic"], + [ "qfFilename", "NONE", ui_fg_strong1, "bold" ], + [ "qfSeparator", "Ignore" ], + [ "qfError", "ErrorMsg" ], + + # json + + [ "jsonKeyword", "Identifier" ], + [ "jsonValue", "String" ], + [ "jsonQuote", "Noise" ], + + # plugins + + [ "LspErrorText", "ErrorMsg" ], + [ "LspWarningText", "WarningMsg" ], + [ "LspInformationText", "Question" ], + [ "LspHintText", "Question" ], + + # ctrl-p highlighting + # :h ctrlp-customization + + [ "CtrlPPrtBase", ui_cursor_bg, ui_cursor_fg, "bold" ], + [ "CtrlPPrtText", ui_cursor_bg, ui_cursor_fg, "bold"], + [ "CtrlPMatch", "NONE", ui_fg_strong2, "bold"], + [ "CtrlPMode1", "NONE", ui_fg_strong3, "bold"], + [ "CtrlPMode2", "NONE", ui_fg_strong1, "NONE"], + [ "CtrlPNoEntries", "NONE", ui_fg_warning_strong, "bold" ], + [ "CtrlPBufferNr", "NONE", ui_fg_strong2, "bold" ], + [ "CtrlPBufferInd", "NONE", ui_fg_strong4, "bold" ], + [ "CtrlPBufferPath", "NONE", ui_fg_weak2, "NONE" ], + [ "CtrlPBufferHid", "NONE", ui_fg, "NONE" ], + [ "CtrlPBufferHidMod", "NONE", ui_fg_warning_weak, "NONE" ], + [ "CtrlPBufferVis", "Normal" ], + [ "CtrlPBufferVisMod", "NONE", ui_fg_warning, "NONE" ], + [ "CtrlPBufferCur", "NONE", ui_fg_strong3, "bold" ], + [ "CtrlPBufferCurMod", "NONE", ui_fg_warning_strong, "NONE" ], + + [ "CtrlPBufName", "NONE", ui_fg_strong2, "NONE" ], + [ "CtrlPTagKind", "NONE", ui_fg_strong3, "bold" ], + [ "CtrlPqfLineCol", "NONE", ui_fg_warning, "bold" ], + [ "CtrlPUndoT", "NONE", ui_fg_strong1, "NONE" ], + [ "CtrlPUndoBr", "NONE", ui_fg_weak1, "NONE" ], + [ "CtrlPUndoNr", "NONE", ui_fg_weak2, "NONE" ], + [ "CtrlPUndoSv", "NONE", ui_fg_warning, "NONE" ], + [ "CtrlPUndoPo", "NONE", ui_fg_strong3, "bold" ], + + # i3config + [ "Variable", "Function" ], + + # to be implemented + + # "" #shell highlighting + # "{{{ + # "hi! def link shConditional shLoop + # "hi! def link shFunctionTwo mIdentifierBright + # "hi! def link shFunction mIdentifier + # "hi! def link shFunctionKey mStatement + # "hi! def link shCaseEsac mValue + # "hi! def link shCaseBar mNoise + # "hi! def link shEcho mNoiseBright + # "hi! def link bashSpecialVariables mSpecial + # "hi! def link shCmdSubRegion mNoiseBright + # "hi! def link shCommandSub mSpecialDark + # "hi! def link shEscape mNoise + # "hi! def link shTestOpr mNoise + # "hi! def link shSnglCase mNoise + # hi! def link shDerefSimple Type + # hi! def link shDerefVar shDerefSimple + # hi! def link shDerefOp Conditional + # hi! def link shDerefPattern shDerefOp + # hi! def link shCommandSub Type + # hi! def link shOption StorageClass + # ""}}} + + # "" vim-fugitive + # ""{{{ + # "hi! def link gitCommitBranch mValueDarkItalic + # "hi! def link gitCommitDiscarded mNoiseDark + # "hi! def link gitCommitComment mNoiseDark + # "hi! def link gitCommitOnBranch mNoise + # "hi! def link gitCommitWarning mInterfaceError + # "hi! def link gitCommitDiscardedType mNoise + # "hi! def link gitCommitSelectedType mNoise + # "hi! def link gitCommitSelectedFile mValueDarkerItalic + # "hi! def link gitCommitDiscardedFile mInterfaceWarning + # "hi! def link gitCommitUntrackedFile mStatementBright + # "hi! def link gitCommitNumber mInterfaceError + # "hi! def link gitCommitAhead gitCommitNumber + # "hi! def link gitCommitBehind gitCommitNumber + # ""}}} + + # "" #netrw highlighting + # ""{{{ + # "hi! def link netrwVersion mInterfaceH3 + # "hi! def link netrwComment mInterfaceNormalNormal + # "hi! def link netrwClassify mInterfaceNormal + # "hi! def link netrwTreebar mInterfaceNormalDark + # "hi! def link netrwCmdNote mInterfaceHelpBright + # "hi! def link netrwQuickHelp netrwCmdNote + # "hi! def link netrwList mInterfaceSpecial + # "hi! def link netrwHidePat mInterfaceSpecial + # "hi! def link netrwQHTopic mInterfaceKeyword + # "hi! def link netrwHelpCmd mInterfaceKey + # ""}}} + + # "" #tagbar highlighting + # "" TagbarHighlight defined in vimrc as it gets overridden + # "" by plugin when defined in here + # "" hi! def link TagbarFoldIcon InterfaceNormal + # + # "" hi! def link TagbarHelp InterfaceHelp + # "" hi! def link TagbarHelpKey InterfaceHelpDark + # "" hi! def link TagbarHelpTitle InterfaceHelpBright + # + # "" hi! def link TagbarKind InterfaceH1 + # "" hi! def link TagbarNestedKind InterfaceH1 + # + # "" hi! def link TagbarScope InterfaceH1 + # "" hi! def link TagbarType InterfaceH1 + # "" hi! def link TagbarSignature InterfaceNormal + # "" hi! def link TagbarPseudoID InterfaceNormal + # "" hi! def link TagbarHighlight InterfaceCurrent + # + # "" hi! def link TagbarAccessPublic InterfaceH2 + # "" hi! def link TagbarAccessProtected InterfaceH2 + # "" hi! def link TagbarAccessPrivate InterfaceH2 + # + # "" hi! TagbarHighlight ctermfg=255 guifg=#eeeeee ctermbg=240 guibg=#585858 + + # "" #vimwiki highlighting + # "" hi VimwikiLink ctermfg=252 guifg=#d0d0d0 ctermbg=234 guibg=#1c1c1c + # "" hi! def link VimwikiHeaderChar CRNoiseDark + # "" hi VimwikiHeader1 ctermbg=242 guibg=#666666 ctermfg=255 guifg=#eeeeee + # "" hi VimwikiHeader2 ctermbg=238 guibg=#444444 ctermfg=255 guifg=#eeeeee + # "" hi VimwikiHeader3 ctermbg=236 guibg=#303030 guibg=#303030 ctermfg=255 guifg=#eeeeee + # "" hi VimwikiHeader4 ctermbg=236 guibg=#303030 guibg=#303030 ctermfg=251 guifg=#c6c6c6 + # "" hi VimwikiHeader5 ctermbg=236 guibg=#303030 guibg=#303030 ctermfg=246 guifg=#949494 + # "" hi VimwikiHeader6 ctermbg=236 guibg=#303030 guibg=#303030 ctermfg=244 guifg=#808080 + # "" hi VimwikiListTodo ctermbg=233 guibg=#121212 ctermfg=255 guifg=#eeeeee + + + ] + + # Step 4: generation + # + # From a separate shell: + # + # $ erb -T - bar.erb > bar.vim + # + # From Vim: + # + # :!erb -T - % > %:r.vim + + # These online resources can help you design your colorscheme: + # + # * http://upload.wikimedia.org/wikipedia/en/1/15/Xterm_256color_chart.svg + # the xterm palette + # * http://whatcolor.herokuapp.com/ + # play with hexadecimal colors right in the address bar (currently down) + # * http://color.hailpixel.com/ + # similar concept, fuzzier implementation + # * http://colourco.de/ + # similar concept, fancier implementation + # * http://www.colr.org/ + # extract a palette from an image + # * http://colores.manugarri.com/ + # search for 'word', get images and color palettes + # * http://www.colourlovers.com/palettes + # user-created palettes + # * http://www.perbang.dk/color+scheme/ + # a no-nonsense colorscheme generator + # * https://color.adobe.com/ + # Adobe's fancy colorscheme generator + # * http://paletton.com/ + # The classic 'Color Scheme Designer', rebranded + # * http://vrl.cs.brown.edu/color + # A very smart palette generator + # * https://cmcenroe.me/2018/04/03/colour-scheme.html + # "I Made My Own Colour Scheme and You Can Too!" + + # A few general advices: + # + # * The Windows console is limited to the 16 so-called "ANSI" colors but it has + # a few of them interverted which makes numbers impractical. Use color names + # instead of numbers: :help cterm-colors + # * The Windows console (yeah…) doesn't do italics, underlines or bolded text; + # it is limited to normal and reverse. Keep that in mind if you want + # your colorscheme to be usable in as many environments as possible by as many + # people as possible. + # * All of the terminal emulators in use these days allow their users to + # change the 16 so-called "ANSI" colors. It is also possible on some platforms + # to change some or all of the 256 colors in the xterm palette. Don't take + # anything for granted. + # * When used against a light background, strong colors work better than muted + # ones. Light or dark doesn't really matters. Also, it is harder to discriminate + # between two similar colors on a light background. + # * Both strong and muted colors work well against a dark background. It is also + # easier to work with similar colors, but dark colors don't work at all. + # * Use as many text samples as possible. String-heavy languages may look completely + # different than keyword-heavy ones. This can have an impact on the usability + # of your colorscheme. + # * Most terminal emulators and terminal multiplexers currently in use on unix-like + # systems support 256 colors but they almost always default to a '$TERM' that tells + # Vim otherwise. Your users will need to make sure their terminal emulator/multiplexer + # is correctly set up if they want to enjoy the best possible experience. + + # Many thanks to Barry Arthur (https://github.com/dahu) for the original idea. + + # You don't need to edit anything beyond this line. +-%> +" <%= information[:name] %>.vim -- Vim color scheme. +" Author: <%= information[:author] %> (<%= information[:email] %>) +" Webpage: <%= information[:webpage] %> +" Description: <%= information[:description] %> + +hi clear + +if exists("syntax_on") + syntax reset +endif + +let colors_name = "<%= information[:name] %>" + +if ($TERM =~ '256' || &t_Co >= 256) || has("gui_running") +<% for highlight in highlights -%> +<% if highlight.length == 2 -%> + hi link <%= highlight[0] %> <%= highlight[1] %> +<% elsif highlight.length == 4 -%> + hi <%= highlight[0] %> ctermbg=<%= highlight[1].kind_of?(String) ? highlight[1] : highlight[1][1] %> ctermfg=<%= highlight[2].kind_of?(String) ? highlight[2] : highlight[2][1] %> cterm=<%= highlight[3] %> guibg=<%= highlight[1].kind_of?(String) ? highlight[1] : highlight[1][0] %> guifg=<%= highlight[2].kind_of?(String) ? highlight[2] : highlight[2][0] %> gui=<%= highlight[3] %> +<% if highlight[0] == "Normal" -%> + set background=<%= information[:background] %> +<% end -%> +<% else -%> + hi <%= highlight[0] %> ctermbg=<%= highlight[1].kind_of?(String) ? highlight[1] : highlight[1][1] %> ctermfg=<%= highlight[2].kind_of?(String) ? highlight[2] : highlight[2][1] %> cterm=<%= highlight[3] %> guibg=<%= highlight[1].kind_of?(String) ? highlight[1] : highlight[1][0] %> guifg=<%= highlight[2].kind_of?(String) ? highlight[2] : highlight[2][0] %> gui=<%= highlight[3] %> guisp=<%= highlight[4].kind_of?(String) ? highlight[4] : highlight[4][0] %> +<% end -%> +<% end -%> +elseif &t_Co == 8 || $TERM !~# '^linux' || &t_Co == 16 + set t_Co=16 +<% for highlight in highlights -%> +<% if highlight.length == 2 -%> + hi link <%= highlight[0] %> <%= highlight[1] %> +<% else -%> + hi <%= highlight[0] %> ctermbg=<%= highlight[1].kind_of?(String) ? highlight[1] : highlight[1][2] %> ctermfg=<%= highlight[2].kind_of?(String) ? highlight[2] : highlight[2][2] %> cterm=<%= highlight[3] %> +<% if highlight[0] == "Normal" -%> + set background=<%= information[:background] %> +<% end -%> +<% end -%> +<% end -%> +endif + +augroup cursorlinebg + au! + au InsertEnter * hi CursorLine ctermbg=<%= bg_cursorline_input[1] %> ctermfg=NONE cterm=NONE guibg=<%= bg_cursorline_input[0] %> guifg=NONE + au InsertLeave * hi CursorLine ctermbg=<%= bg_cursorline[1] %> ctermfg=NONE cterm=NONE guibg=<%= bg_cursorline[0] %> guifg=NONE +augroup END + + diff --git a/vimrc b/vimrc index 02392eb..0bee607 100644 --- a/vimrc +++ b/vimrc @@ -254,9 +254,6 @@ Plug 'mattn/emmet-vim' let g:user_emmet_leader_key=',,' let g:user_emmet_settings = { \ 'indentation': ' ', -\ 'html': { -\ 'indentation': ' ', -\ } \} "}}}