diff --git a/CHANGELOG.md b/CHANGELOG.md index d4987d4..bd6d580 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,22 @@ Changelog --- +# 14.0.0 [Holiday Release] + +**3 New Dark Themes!** + +- Celebrate Christmas with Chocola from the NekoPara Series! +_I lied about Shigure being the last addition from NekoPara._ + +- The 4th of July now just got even better, now that you can code with Essex from Azur Lane. +If you prefer a more canon experience, Essex's theme also has **secondary content** with the Eagle Union branding. + +- Even though I missed this year's Halloween, I've got something to look forward to in 2022. +Yotsuba, from The Quintessential Quintuplets, isn't 2spooky4me. + + +![v22 Girls](https://doki.assets.unthrottled.io/misc/v22_girls.png) + # 13.0.0 [Jahy-sama will not be discouraged!] **1 New Theme!** diff --git a/after/plugin/christmas_chocola.vim b/after/plugin/christmas_chocola.vim new file mode 100644 index 0000000..813a677 --- /dev/null +++ b/after/plugin/christmas_chocola.vim @@ -0,0 +1,45 @@ +if christmas_chocola#should_abort() + finish +endif + +" Fzf: +if exists('g:loaded_fzf') && ! exists('g:fzf_colors') + let g:fzf_colors = { + \ 'fg': ['fg', 'Normal'], + \ 'bg': ['bg', 'Normal'], + \ 'hl': ['fg', 'Search'], + \ 'fg+': ['fg', 'Normal'], + \ 'bg+': ['bg', 'Normal'], + \ 'hl+': ['fg', 'ChristmasChocolaParameter'], + \ 'info': ['fg', 'ChristmasChocolaConstants'], + \ 'border': ['fg', 'Ignore'], + \ 'prompt': ['fg', 'ChristmasChocolaClassName'], + \ 'pointer': ['fg', 'Exception'], + \ 'marker': ['fg', 'Keyword'], + \ 'spinner': ['fg', 'Label'], + \ 'header': ['fg', 'Comment'], + \} +endif +"}}} +" ALE: +if exists('g:ale_enabled') + hi! link ALEError ChristmasChocolaErrorLine + hi! link ALEWarning ChristmasChocolaWarnLine + hi! link ALEInfo ChristmasChocolaInfoLine + + hi! link ALEErrorSign ChristmasChocolaRed + hi! link ALEWarningSign ChristmasChocolaParameter + hi! link ALEInfoSign ChristmasChocolaKeyColor + + hi! link ALEVirtualTextError Comment + hi! link ALEVirtualTextWarning Comment +endif +" }}} +" CtrlP: +if exists('g:loaded_ctrlp') + hi! link CtrlPMatch IncSearch + hi! link CtrlPBufferHid Normal +endif +" }}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/plugin/essex.vim b/after/plugin/essex.vim new file mode 100644 index 0000000..f79c7f6 --- /dev/null +++ b/after/plugin/essex.vim @@ -0,0 +1,45 @@ +if essex#should_abort() + finish +endif + +" Fzf: +if exists('g:loaded_fzf') && ! exists('g:fzf_colors') + let g:fzf_colors = { + \ 'fg': ['fg', 'Normal'], + \ 'bg': ['bg', 'Normal'], + \ 'hl': ['fg', 'Search'], + \ 'fg+': ['fg', 'Normal'], + \ 'bg+': ['bg', 'Normal'], + \ 'hl+': ['fg', 'EssexParameter'], + \ 'info': ['fg', 'EssexConstants'], + \ 'border': ['fg', 'Ignore'], + \ 'prompt': ['fg', 'EssexClassName'], + \ 'pointer': ['fg', 'Exception'], + \ 'marker': ['fg', 'Keyword'], + \ 'spinner': ['fg', 'Label'], + \ 'header': ['fg', 'Comment'], + \} +endif +"}}} +" ALE: +if exists('g:ale_enabled') + hi! link ALEError EssexErrorLine + hi! link ALEWarning EssexWarnLine + hi! link ALEInfo EssexInfoLine + + hi! link ALEErrorSign EssexRed + hi! link ALEWarningSign EssexParameter + hi! link ALEInfoSign EssexKeyColor + + hi! link ALEVirtualTextError Comment + hi! link ALEVirtualTextWarning Comment +endif +" }}} +" CtrlP: +if exists('g:loaded_ctrlp') + hi! link CtrlPMatch IncSearch + hi! link CtrlPBufferHid Normal +endif +" }}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/plugin/nakano_yotsuba.vim b/after/plugin/nakano_yotsuba.vim new file mode 100644 index 0000000..80dddf4 --- /dev/null +++ b/after/plugin/nakano_yotsuba.vim @@ -0,0 +1,45 @@ +if nakano_yotsuba#should_abort() + finish +endif + +" Fzf: +if exists('g:loaded_fzf') && ! exists('g:fzf_colors') + let g:fzf_colors = { + \ 'fg': ['fg', 'Normal'], + \ 'bg': ['bg', 'Normal'], + \ 'hl': ['fg', 'Search'], + \ 'fg+': ['fg', 'Normal'], + \ 'bg+': ['bg', 'Normal'], + \ 'hl+': ['fg', 'NakanoYotsubaParameter'], + \ 'info': ['fg', 'NakanoYotsubaConstants'], + \ 'border': ['fg', 'Ignore'], + \ 'prompt': ['fg', 'NakanoYotsubaClassName'], + \ 'pointer': ['fg', 'Exception'], + \ 'marker': ['fg', 'Keyword'], + \ 'spinner': ['fg', 'Label'], + \ 'header': ['fg', 'Comment'], + \} +endif +"}}} +" ALE: +if exists('g:ale_enabled') + hi! link ALEError NakanoYotsubaErrorLine + hi! link ALEWarning NakanoYotsubaWarnLine + hi! link ALEInfo NakanoYotsubaInfoLine + + hi! link ALEErrorSign NakanoYotsubaRed + hi! link ALEWarningSign NakanoYotsubaParameter + hi! link ALEInfoSign NakanoYotsubaKeyColor + + hi! link ALEVirtualTextError Comment + hi! link ALEVirtualTextWarning Comment +endif +" }}} +" CtrlP: +if exists('g:loaded_ctrlp') + hi! link CtrlPMatch IncSearch + hi! link CtrlPBufferHid Normal +endif +" }}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/christmas_chocola_css.vim b/after/syntax/christmas_chocola_css.vim new file mode 100644 index 0000000..d8b10ff --- /dev/null +++ b/after/syntax/christmas_chocola_css.vim @@ -0,0 +1,15 @@ +if christmas_chocola#should_abort('css') + finish +endif + +hi! link cssAttrComma Delimiter +hi! link cssAttrRegion ChristmasChocolaKeyword +hi! link cssAttributeSelector ChristmasChocolaClassNameItalic +hi! link cssBraces Delimiter +hi! link cssFunctionComma Delimiter +hi! link cssNoise ChristmasChocolaKeyword +hi! link cssProp ChristmasChocolaKeyColor +hi! link cssPseudoClass ChristmasChocolaKeyword +hi! link cssPseudoClassId ChristmasChocolaClassNameItalic +hi! link cssUnitDecorators ChristmasChocolaKeyword +hi! link cssVendor ChristmasChocolaClassNameItalic diff --git a/after/syntax/christmas_chocola_gitcommit.vim b/after/syntax/christmas_chocola_gitcommit.vim new file mode 100644 index 0000000..3462c75 --- /dev/null +++ b/after/syntax/christmas_chocola_gitcommit.vim @@ -0,0 +1,12 @@ +if christmas_chocola#should_abort('gitcommit') + finish +endif + +" The following two are misnomers. Colors are correct. +hi! link diffFile ChristmasChocolaClassName +hi! link diffNewFile ChristmasChocolaRed + +hi! link diffAdded ChristmasChocolaClassName +hi! link diffLine ChristmasChocolaKeyColorItalic +hi! link diffRemoved ChristmasChocolaRed + diff --git a/after/syntax/christmas_chocola_html.vim b/after/syntax/christmas_chocola_html.vim new file mode 100644 index 0000000..77f7cc8 --- /dev/null +++ b/after/syntax/christmas_chocola_html.vim @@ -0,0 +1,9 @@ +if christmas_chocola#should_abort('html') + finish +endif + +hi! link htmlTag ChristmasChocolaFg +hi! link htmlArg ChristmasChocolaClassNameItalic +hi! link htmlTitle ChristmasChocolaFg +hi! link htmlH1 ChristmasChocolaFg +hi! link htmlSpecialChar ChristmasChocolaConstants diff --git a/after/syntax/christmas_chocola_javascript.vim b/after/syntax/christmas_chocola_javascript.vim new file mode 100644 index 0000000..f964775 --- /dev/null +++ b/after/syntax/christmas_chocola_javascript.vim @@ -0,0 +1,25 @@ +if christmas_chocola#should_abort('javascript') + finish +endif + +hi! link javaScriptBraces Delimiter +hi! link javaScriptNumber Constant +hi! link javaScriptNull Constant +hi! link javaScriptFunction Keyword + +" pangloss/vim-javascript + +hi! link jsArrowFunction Operator +hi! link jsClassMethodType Keyword +hi! link jsDestructuringAssignment ChristmasChocolaParameterItalic +hi! link jsDocParam ChristmasChocolaParameterItalic +hi! link jsDocTags Keyword +hi! link jsDocType Type +hi! link jsDocTypeBrackets ChristmasChocolaKeyColor +hi! link jsFuncArgOperator Operator +hi! link jsFunction Keyword +hi! link jsTemplateBraces Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/christmas_chocola_json.vim b/after/syntax/christmas_chocola_json.vim new file mode 100644 index 0000000..5c50bb6 --- /dev/null +++ b/after/syntax/christmas_chocola_json.vim @@ -0,0 +1,6 @@ +if christmas_chocola#should_abort('json') + finish +endif + +hi! link jsonKeyword ChristmasChocolaKeyColor +hi! link jsonKeywordMatch ChristmasChocolaKeyword diff --git a/after/syntax/christmas_chocola_lua.vim b/after/syntax/christmas_chocola_lua.vim new file mode 100644 index 0000000..d3312d8 --- /dev/null +++ b/after/syntax/christmas_chocola_lua.vim @@ -0,0 +1,6 @@ +if christmas_chocola#should_abort('lua') + finish +endif + +hi! link luaFunc ChristmasChocolaKeyColor +hi! link luaTable ChristmasChocolaFg diff --git a/after/syntax/christmas_chocola_markdown.vim b/after/syntax/christmas_chocola_markdown.vim new file mode 100644 index 0000000..426e564 --- /dev/null +++ b/after/syntax/christmas_chocola_markdown.vim @@ -0,0 +1,50 @@ +if christmas_chocola#should_abort('markdown', 'mkd') + finish +endif + +if b:current_syntax ==# 'mkd' +" plasticboy/vim-markdown + hi! link htmlBold ChristmasChocolaParameterBold + hi! link htmlBoldItalic ChristmasChocolaParameterBoldItalic + hi! link htmlH1 ChristmasChocolaConstantsBold + hi! link htmlItalic ChristmasChocolaStringColorItalic + hi! link mkdBlockquote ChristmasChocolaStringColorItalic + hi! link mkdBold ChristmasChocolaParameterBold + hi! link mkdBoldItalic ChristmasChocolaParameterBoldItalic + hi! link mkdCode ChristmasChocolaClassName + hi! link mkdCodeEnd ChristmasChocolaClassName + hi! link mkdCodeStart ChristmasChocolaClassName + hi! link mkdHeading ChristmasChocolaConstantsBold + hi! link mkdInlineUrl ChristmasChocolaLink + hi! link mkdItalic ChristmasChocolaStringColorItalic + hi! link mkdLink ChristmasChocolaKeyword + hi! link mkdListItem ChristmasChocolaKeyColor + hi! link mkdRule ChristmasChocolaComment + hi! link mkdUrl ChristmasChocolaLink +"}}}1 +elseif b:current_syntax ==# 'markdown' +" Builtin: + hi! link markdownBlockquote ChristmasChocolaKeyColor + hi! link markdownBold ChristmasChocolaParameterBold + hi! link markdownBoldItalic ChristmasChocolaParameterBoldItalic + hi! link markdownCodeBlock ChristmasChocolaClassName + hi! link markdownCode ChristmasChocolaClassName + hi! link markdownCodeDelimiter ChristmasChocolaClassName + hi! link markdownH1 ChristmasChocolaConstantsBold + hi! link markdownH2 markdownH1 + hi! link markdownH3 markdownH1 + hi! link markdownH4 markdownH1 + hi! link markdownH5 markdownH1 + hi! link markdownH6 markdownH1 + hi! link markdownHeadingDelimiter markdownH1 + hi! link markdownHeadingRule markdownH1 + hi! link markdownItalic ChristmasChocolaStringColorItalic + hi! link markdownLinkText ChristmasChocolaKeyword + hi! link markdownListMarker ChristmasChocolaKeyColor + hi! link markdownOrderedListMarker ChristmasChocolaKeyColor + hi! link markdownRule ChristmasChocolaComment + hi! link markdownUrl ChristmasChocolaLink +"}}} +endif + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/christmas_chocola_ocaml.vim b/after/syntax/christmas_chocola_ocaml.vim new file mode 100644 index 0000000..aa9e7c3 --- /dev/null +++ b/after/syntax/christmas_chocola_ocaml.vim @@ -0,0 +1,7 @@ +if christmas_chocola#should_abort('ocaml') + finish +endif + +hi! link ocamlModule Type +hi! link ocamlModPath Normal +hi! link ocamlLabel ChristmasChocolaParameterItalic diff --git a/after/syntax/christmas_chocola_perl.vim b/after/syntax/christmas_chocola_perl.vim new file mode 100644 index 0000000..26d5a17 --- /dev/null +++ b/after/syntax/christmas_chocola_perl.vim @@ -0,0 +1,38 @@ +if christmas_chocola#should_abort('perl') + finish +endif + +" Regex +hi! link perlMatchStartEnd ChristmasChocolaRed + +" Builtin functions +hi! link perlOperator ChristmasChocolaKeyColor +hi! link perlStatementFiledesc ChristmasChocolaKeyColor +hi! link perlStatementFiles ChristmasChocolaKeyColor +hi! link perlStatementFlow ChristmasChocolaKeyColor +hi! link perlStatementHash ChristmasChocolaKeyColor +hi! link perlStatementIOfunc ChristmasChocolaKeyColor +hi! link perlStatementIPC ChristmasChocolaKeyColor +hi! link perlStatementList ChristmasChocolaKeyColor +hi! link perlStatementMisc ChristmasChocolaKeyColor +hi! link perlStatementNetwork ChristmasChocolaKeyColor +hi! link perlStatementNumeric ChristmasChocolaKeyColor +hi! link perlStatementProc ChristmasChocolaKeyColor +hi! link perlStatementPword ChristmasChocolaKeyColor +hi! link perlStatementRegexp ChristmasChocolaKeyColor +hi! link perlStatementScalar ChristmasChocolaKeyColor +hi! link perlStatementSocket ChristmasChocolaKeyColor +hi! link perlStatementTime ChristmasChocolaKeyColor +hi! link perlStatementVector ChristmasChocolaKeyColor + +" Highlighting for quoting constructs, tied to existing option in vim-perl +if get(g:, 'perl_string_as_statement', 0) + hi! link perlStringStartEnd ChristmasChocolaRed +endif + +" Signatures +hi! link perlSignature ChristmasChocolaParameterItalic +hi! link perlSubPrototype ChristmasChocolaParameterItalic + +" Hash keys +hi! link perlVarSimpleMemberName ChristmasChocolaConstants diff --git a/after/syntax/christmas_chocola_php.vim b/after/syntax/christmas_chocola_php.vim new file mode 100644 index 0000000..c032883 --- /dev/null +++ b/after/syntax/christmas_chocola_php.vim @@ -0,0 +1,10 @@ +if christmas_chocola#should_abort('php') + finish +endif + +hi! link phpClass Type +hi! link phpClasses Type +hi! link phpDocTags ChristmasChocolaKeyColorItalic +hi! link phpFunction Function +hi! link phpParent Normal +hi! link phpSpecialFunction ChristmasChocolaKeyColor diff --git a/after/syntax/christmas_chocola_plantuml.vim b/after/syntax/christmas_chocola_plantuml.vim new file mode 100644 index 0000000..8abd5dc --- /dev/null +++ b/after/syntax/christmas_chocola_plantuml.vim @@ -0,0 +1,13 @@ +if christmas_chocola#should_abort('plantuml') + finish +endif + +hi! link plantumlClassPrivate SpecialKey +hi! link plantumlClassProtected ChristmasChocolaParameter +hi! link plantumlClassPublic Function +hi! link plantumlColonLine String +hi! link plantumlDirectedOrVerticalArrowLR Constant +hi! link plantumlDirectedOrVerticalArrowRL Constant +hi! link plantumlHorizontalArrow Constant +hi! link plantumlSkinParamKeyword ChristmasChocolaKeyColor +hi! link plantumlTypeKeyword Keyword diff --git a/after/syntax/christmas_chocola_python.vim b/after/syntax/christmas_chocola_python.vim new file mode 100644 index 0000000..1f863b8 --- /dev/null +++ b/after/syntax/christmas_chocola_python.vim @@ -0,0 +1,11 @@ +if christmas_chocola#should_abort('python') + finish +endif + +hi! link pythonBuiltinObj Type +hi! link pythonBuiltinObject Type +hi! link pythonBuiltinType Type +hi! link pythonClassVar ChristmasChocolaConstantsItalic +hi! link pythonExClass Type +hi! link pythonNone Type +hi! link pythonRun Comment diff --git a/after/syntax/christmas_chocola_ruby.vim b/after/syntax/christmas_chocola_ruby.vim new file mode 100644 index 0000000..24c1222 --- /dev/null +++ b/after/syntax/christmas_chocola_ruby.vim @@ -0,0 +1,16 @@ +if christmas_chocola#should_abort('ruby') + finish +endif + +if ! exists('g:ruby_operators') + let g:ruby_operators=1 +endif + +hi! link rubyBlockArgument ChristmasChocolaParameterItalic +hi! link rubyBlockParameter ChristmasChocolaParameterItalic +hi! link rubyCurlyBlock ChristmasChocolaKeyword +hi! link rubyGlobalVariable ChristmasChocolaConstants +hi! link rubyInstanceVariable ChristmasChocolaConstantsItalic +hi! link rubyInterpolationDelimiter ChristmasChocolaKeyword +hi! link rubyRegexpDelimiter ChristmasChocolaRed +hi! link rubyStringDelimiter ChristmasChocolaStringColor diff --git a/after/syntax/christmas_chocola_rust.vim b/after/syntax/christmas_chocola_rust.vim new file mode 100644 index 0000000..e6c2dd3 --- /dev/null +++ b/after/syntax/christmas_chocola_rust.vim @@ -0,0 +1,5 @@ +if christmas_chocola#should_abort('rust') + finish +endif + +hi! link rustCommentLineDoc Comment diff --git a/after/syntax/christmas_chocola_sass.vim b/after/syntax/christmas_chocola_sass.vim new file mode 100644 index 0000000..ca2c5d3 --- /dev/null +++ b/after/syntax/christmas_chocola_sass.vim @@ -0,0 +1,12 @@ +if christmas_chocola#should_abort('sass') + finish +endif + +hi! link sassClass cssClassName +hi! link sassClassChar cssClassNameDot +hi! link sassId cssIdentifier +hi! link sassIdChar cssIdentifier +hi! link sassInterpolationDelimiter ChristmasChocolaKeyword +hi! link sassMixinName Function +hi! link sassProperty cssProp +hi! link sassVariableAssignment Operator diff --git a/after/syntax/christmas_chocola_sh.vim b/after/syntax/christmas_chocola_sh.vim new file mode 100644 index 0000000..825f139 --- /dev/null +++ b/after/syntax/christmas_chocola_sh.vim @@ -0,0 +1,8 @@ +if christmas_chocola#should_abort('bash', 'ksh', 'posix', 'sh') + finish +endif + +hi! link shCommandSub NONE +hi! link shEscape ChristmasChocolaRed +hi! link shParen NONE +hi! link shParenError NONE diff --git a/after/syntax/christmas_chocola_tex.vim b/after/syntax/christmas_chocola_tex.vim new file mode 100644 index 0000000..ef83595 --- /dev/null +++ b/after/syntax/christmas_chocola_tex.vim @@ -0,0 +1,17 @@ +if christmas_chocola#should_abort('tex') + finish +endif + +hi! link texBeginEndName ChristmasChocolaParameterItalic +hi! link texBoldItalStyle ChristmasChocolaParameterBoldItalic +hi! link texBoldStyle ChristmasChocolaParameterBold +hi! link texInputFile ChristmasChocolaParameterItalic +hi! link texItalStyle ChristmasChocolaStringColorItalic +hi! link texLigature ChristmasChocolaConstants +hi! link texMath ChristmasChocolaConstants +hi! link texMathMatcher ChristmasChocolaConstants +hi! link texMathSymbol ChristmasChocolaConstants +hi! link texRefZone ChristmasChocolaBgDarker +hi! link texSpecialChar ChristmasChocolaConstants +hi! link texSubscripts ChristmasChocolaConstants +hi! link texTitle ChristmasChocolaFgBold diff --git a/after/syntax/christmas_chocola_typescript.vim b/after/syntax/christmas_chocola_typescript.vim new file mode 100644 index 0000000..7d565f7 --- /dev/null +++ b/after/syntax/christmas_chocola_typescript.vim @@ -0,0 +1,57 @@ +if christmas_chocola#should_abort('typescript', 'typescriptreact') + finish +endif + +" HerringtonDarkholme/yats.vim + +hi! link typescriptAliasDeclaration Type +hi! link typescriptArrayMethod Function +hi! link typescriptArrowFunc Operator +hi! link typescriptArrowFuncArg ChristmasChocolaParameterItalic +hi! link typescriptAssign Operator +hi! link typescriptBOMWindowProp Constant +hi! link typescriptBinaryOp Operator +hi! link typescriptBraces Delimiter +hi! link typescriptCall typescriptArrowFuncArg +hi! link typescriptClassHeritage Type +hi! link typescriptClassName Type +hi! link typescriptDateMethod ChristmasChocolaKeyColor +hi! link typescriptDateStaticMethod Function +hi! link typescriptDecorator ChristmasChocolaClassNameItalic +hi! link typescriptDefaultParam Operator +hi! link typescriptES6SetMethod ChristmasChocolaKeyColor +hi! link typescriptEndColons Delimiter +hi! link typescriptEnum Type +hi! link typescriptEnumKeyword Keyword +hi! link typescriptFuncComma Delimiter +hi! link typescriptFuncKeyword Keyword +hi! link typescriptFuncType ChristmasChocolaParameterItalic +hi! link typescriptFuncTypeArrow Operator +hi! link typescriptGlobal Type +hi! link typescriptGlobalMethod ChristmasChocolaKeyColor +hi! link typescriptGlobalObjects Type +hi! link typescriptIdentifier ChristmasChocolaConstantsItalic +hi! link typescriptInterfaceHeritage Type +hi! link typescriptInterfaceName Type +hi! link typescriptInterpolationDelimiter Keyword +hi! link typescriptKeywordOp Keyword +hi! link typescriptLogicSymbols Operator +hi! link typescriptMember Identifier +hi! link typescriptMemberOptionality Special +hi! link typescriptObjectColon Special +hi! link typescriptObjectLabel Identifier +hi! link typescriptObjectSpread Operator +hi! link typescriptOperator Operator +hi! link typescriptParamImpl ChristmasChocolaParameterItalic +hi! link typescriptParens Delimiter +hi! link typescriptPredefinedType Type +hi! link typescriptRestOrSpread Operator +hi! link typescriptTernaryOp Operator +hi! link typescriptTypeAnnotation Special +hi! link typescriptTypeCast Operator +hi! link typescriptTypeParameter ChristmasChocolaParameterItalic +hi! link typescriptTypeReference Type +hi! link typescriptUnaryOp Operator +hi! link typescriptVariable Keyword + +" }}} diff --git a/after/syntax/christmas_chocola_typescriptreact.vim b/after/syntax/christmas_chocola_typescriptreact.vim new file mode 100644 index 0000000..89592d3 --- /dev/null +++ b/after/syntax/christmas_chocola_typescriptreact.vim @@ -0,0 +1,10 @@ +if christmas_chocola#should_abort('typescriptreact') + finish +endif + +runtime! syntax/typescript.vim + +hi! link tsxAttrib ChristmasChocolaClassNameItalic +hi! link tsxEqual Operator +hi! link tsxIntrinsicTagName Keyword +hi! link tsxTagName Type diff --git a/after/syntax/christmas_chocola_vim.vim b/after/syntax/christmas_chocola_vim.vim new file mode 100644 index 0000000..f7698bd --- /dev/null +++ b/after/syntax/christmas_chocola_vim.vim @@ -0,0 +1,14 @@ +if christmas_chocola#should_abort('vim') + finish +endif + +hi! link vimAutoCmdSfxList Type +hi! link vimAutoEventList Type +hi! link vimEnvVar Constant +hi! link vimFunction Function +hi! link vimHiBang Keyword +hi! link vimOption Type +hi! link vimSetMod Keyword +hi! link vimSetSep Delimiter +hi! link vimUserAttrbCmpltFunc Function +hi! link vimUserFunc Function diff --git a/after/syntax/christmas_chocola_xml.vim b/after/syntax/christmas_chocola_xml.vim new file mode 100644 index 0000000..d9bee20 --- /dev/null +++ b/after/syntax/christmas_chocola_xml.vim @@ -0,0 +1,13 @@ +if christmas_chocola#should_abort('xml') + finish +endif + +hi! link xmlAttrib ChristmasChocolaClassNameItalic +hi! link xmlEqual Operator +hi! link xmlTag Delimiter +hi! link xmlTagName Statement + +" Fixes missing highlight over end tags +syn region xmlTagName + \ matchgroup=xmlTag start=+"']\@=+ + \ matchgroup=xmlTag end=+>+ diff --git a/after/syntax/christmas_chocola_yaml.vim b/after/syntax/christmas_chocola_yaml.vim new file mode 100644 index 0000000..97fe51c --- /dev/null +++ b/after/syntax/christmas_chocola_yaml.vim @@ -0,0 +1,12 @@ +if christmas_chocola#should_abort('yaml') + finish +endif + +hi! link yamlAlias ChristmasChocolaClassNameItalicUnderline +hi! link yamlAnchor ChristmasChocolaKeywordItalic +hi! link yamlBlockMappingKey ChristmasChocolaKeyColor +hi! link yamlFlowCollection ChristmasChocolaKeyword +hi! link yamlFlowIndicator Delimiter +hi! link yamlNodeTag ChristmasChocolaKeyword +hi! link yamlPlainScalar ChristmasChocolaStringColor + diff --git a/after/syntax/essex_css.vim b/after/syntax/essex_css.vim new file mode 100644 index 0000000..202510f --- /dev/null +++ b/after/syntax/essex_css.vim @@ -0,0 +1,15 @@ +if essex#should_abort('css') + finish +endif + +hi! link cssAttrComma Delimiter +hi! link cssAttrRegion EssexKeyword +hi! link cssAttributeSelector EssexClassNameItalic +hi! link cssBraces Delimiter +hi! link cssFunctionComma Delimiter +hi! link cssNoise EssexKeyword +hi! link cssProp EssexKeyColor +hi! link cssPseudoClass EssexKeyword +hi! link cssPseudoClassId EssexClassNameItalic +hi! link cssUnitDecorators EssexKeyword +hi! link cssVendor EssexClassNameItalic diff --git a/after/syntax/essex_gitcommit.vim b/after/syntax/essex_gitcommit.vim new file mode 100644 index 0000000..a059c6c --- /dev/null +++ b/after/syntax/essex_gitcommit.vim @@ -0,0 +1,12 @@ +if essex#should_abort('gitcommit') + finish +endif + +" The following two are misnomers. Colors are correct. +hi! link diffFile EssexClassName +hi! link diffNewFile EssexRed + +hi! link diffAdded EssexClassName +hi! link diffLine EssexKeyColorItalic +hi! link diffRemoved EssexRed + diff --git a/after/syntax/essex_html.vim b/after/syntax/essex_html.vim new file mode 100644 index 0000000..2683c0c --- /dev/null +++ b/after/syntax/essex_html.vim @@ -0,0 +1,9 @@ +if essex#should_abort('html') + finish +endif + +hi! link htmlTag EssexFg +hi! link htmlArg EssexClassNameItalic +hi! link htmlTitle EssexFg +hi! link htmlH1 EssexFg +hi! link htmlSpecialChar EssexConstants diff --git a/after/syntax/essex_javascript.vim b/after/syntax/essex_javascript.vim new file mode 100644 index 0000000..4fc228a --- /dev/null +++ b/after/syntax/essex_javascript.vim @@ -0,0 +1,25 @@ +if essex#should_abort('javascript') + finish +endif + +hi! link javaScriptBraces Delimiter +hi! link javaScriptNumber Constant +hi! link javaScriptNull Constant +hi! link javaScriptFunction Keyword + +" pangloss/vim-javascript + +hi! link jsArrowFunction Operator +hi! link jsClassMethodType Keyword +hi! link jsDestructuringAssignment EssexParameterItalic +hi! link jsDocParam EssexParameterItalic +hi! link jsDocTags Keyword +hi! link jsDocType Type +hi! link jsDocTypeBrackets EssexKeyColor +hi! link jsFuncArgOperator Operator +hi! link jsFunction Keyword +hi! link jsTemplateBraces Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/essex_json.vim b/after/syntax/essex_json.vim new file mode 100644 index 0000000..d1f6639 --- /dev/null +++ b/after/syntax/essex_json.vim @@ -0,0 +1,6 @@ +if essex#should_abort('json') + finish +endif + +hi! link jsonKeyword EssexKeyColor +hi! link jsonKeywordMatch EssexKeyword diff --git a/after/syntax/essex_lua.vim b/after/syntax/essex_lua.vim new file mode 100644 index 0000000..298ced0 --- /dev/null +++ b/after/syntax/essex_lua.vim @@ -0,0 +1,6 @@ +if essex#should_abort('lua') + finish +endif + +hi! link luaFunc EssexKeyColor +hi! link luaTable EssexFg diff --git a/after/syntax/essex_markdown.vim b/after/syntax/essex_markdown.vim new file mode 100644 index 0000000..6a5c20a --- /dev/null +++ b/after/syntax/essex_markdown.vim @@ -0,0 +1,50 @@ +if essex#should_abort('markdown', 'mkd') + finish +endif + +if b:current_syntax ==# 'mkd' +" plasticboy/vim-markdown + hi! link htmlBold EssexParameterBold + hi! link htmlBoldItalic EssexParameterBoldItalic + hi! link htmlH1 EssexConstantsBold + hi! link htmlItalic EssexStringColorItalic + hi! link mkdBlockquote EssexStringColorItalic + hi! link mkdBold EssexParameterBold + hi! link mkdBoldItalic EssexParameterBoldItalic + hi! link mkdCode EssexClassName + hi! link mkdCodeEnd EssexClassName + hi! link mkdCodeStart EssexClassName + hi! link mkdHeading EssexConstantsBold + hi! link mkdInlineUrl EssexLink + hi! link mkdItalic EssexStringColorItalic + hi! link mkdLink EssexKeyword + hi! link mkdListItem EssexKeyColor + hi! link mkdRule EssexComment + hi! link mkdUrl EssexLink +"}}}1 +elseif b:current_syntax ==# 'markdown' +" Builtin: + hi! link markdownBlockquote EssexKeyColor + hi! link markdownBold EssexParameterBold + hi! link markdownBoldItalic EssexParameterBoldItalic + hi! link markdownCodeBlock EssexClassName + hi! link markdownCode EssexClassName + hi! link markdownCodeDelimiter EssexClassName + hi! link markdownH1 EssexConstantsBold + hi! link markdownH2 markdownH1 + hi! link markdownH3 markdownH1 + hi! link markdownH4 markdownH1 + hi! link markdownH5 markdownH1 + hi! link markdownH6 markdownH1 + hi! link markdownHeadingDelimiter markdownH1 + hi! link markdownHeadingRule markdownH1 + hi! link markdownItalic EssexStringColorItalic + hi! link markdownLinkText EssexKeyword + hi! link markdownListMarker EssexKeyColor + hi! link markdownOrderedListMarker EssexKeyColor + hi! link markdownRule EssexComment + hi! link markdownUrl EssexLink +"}}} +endif + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/essex_ocaml.vim b/after/syntax/essex_ocaml.vim new file mode 100644 index 0000000..8fd4121 --- /dev/null +++ b/after/syntax/essex_ocaml.vim @@ -0,0 +1,7 @@ +if essex#should_abort('ocaml') + finish +endif + +hi! link ocamlModule Type +hi! link ocamlModPath Normal +hi! link ocamlLabel EssexParameterItalic diff --git a/after/syntax/essex_perl.vim b/after/syntax/essex_perl.vim new file mode 100644 index 0000000..50febd0 --- /dev/null +++ b/after/syntax/essex_perl.vim @@ -0,0 +1,38 @@ +if essex#should_abort('perl') + finish +endif + +" Regex +hi! link perlMatchStartEnd EssexRed + +" Builtin functions +hi! link perlOperator EssexKeyColor +hi! link perlStatementFiledesc EssexKeyColor +hi! link perlStatementFiles EssexKeyColor +hi! link perlStatementFlow EssexKeyColor +hi! link perlStatementHash EssexKeyColor +hi! link perlStatementIOfunc EssexKeyColor +hi! link perlStatementIPC EssexKeyColor +hi! link perlStatementList EssexKeyColor +hi! link perlStatementMisc EssexKeyColor +hi! link perlStatementNetwork EssexKeyColor +hi! link perlStatementNumeric EssexKeyColor +hi! link perlStatementProc EssexKeyColor +hi! link perlStatementPword EssexKeyColor +hi! link perlStatementRegexp EssexKeyColor +hi! link perlStatementScalar EssexKeyColor +hi! link perlStatementSocket EssexKeyColor +hi! link perlStatementTime EssexKeyColor +hi! link perlStatementVector EssexKeyColor + +" Highlighting for quoting constructs, tied to existing option in vim-perl +if get(g:, 'perl_string_as_statement', 0) + hi! link perlStringStartEnd EssexRed +endif + +" Signatures +hi! link perlSignature EssexParameterItalic +hi! link perlSubPrototype EssexParameterItalic + +" Hash keys +hi! link perlVarSimpleMemberName EssexConstants diff --git a/after/syntax/essex_php.vim b/after/syntax/essex_php.vim new file mode 100644 index 0000000..f1a051b --- /dev/null +++ b/after/syntax/essex_php.vim @@ -0,0 +1,10 @@ +if essex#should_abort('php') + finish +endif + +hi! link phpClass Type +hi! link phpClasses Type +hi! link phpDocTags EssexKeyColorItalic +hi! link phpFunction Function +hi! link phpParent Normal +hi! link phpSpecialFunction EssexKeyColor diff --git a/after/syntax/essex_plantuml.vim b/after/syntax/essex_plantuml.vim new file mode 100644 index 0000000..1c1fa58 --- /dev/null +++ b/after/syntax/essex_plantuml.vim @@ -0,0 +1,13 @@ +if essex#should_abort('plantuml') + finish +endif + +hi! link plantumlClassPrivate SpecialKey +hi! link plantumlClassProtected EssexParameter +hi! link plantumlClassPublic Function +hi! link plantumlColonLine String +hi! link plantumlDirectedOrVerticalArrowLR Constant +hi! link plantumlDirectedOrVerticalArrowRL Constant +hi! link plantumlHorizontalArrow Constant +hi! link plantumlSkinParamKeyword EssexKeyColor +hi! link plantumlTypeKeyword Keyword diff --git a/after/syntax/essex_python.vim b/after/syntax/essex_python.vim new file mode 100644 index 0000000..e52adb1 --- /dev/null +++ b/after/syntax/essex_python.vim @@ -0,0 +1,11 @@ +if essex#should_abort('python') + finish +endif + +hi! link pythonBuiltinObj Type +hi! link pythonBuiltinObject Type +hi! link pythonBuiltinType Type +hi! link pythonClassVar EssexConstantsItalic +hi! link pythonExClass Type +hi! link pythonNone Type +hi! link pythonRun Comment diff --git a/after/syntax/essex_ruby.vim b/after/syntax/essex_ruby.vim new file mode 100644 index 0000000..9e15a20 --- /dev/null +++ b/after/syntax/essex_ruby.vim @@ -0,0 +1,16 @@ +if essex#should_abort('ruby') + finish +endif + +if ! exists('g:ruby_operators') + let g:ruby_operators=1 +endif + +hi! link rubyBlockArgument EssexParameterItalic +hi! link rubyBlockParameter EssexParameterItalic +hi! link rubyCurlyBlock EssexKeyword +hi! link rubyGlobalVariable EssexConstants +hi! link rubyInstanceVariable EssexConstantsItalic +hi! link rubyInterpolationDelimiter EssexKeyword +hi! link rubyRegexpDelimiter EssexRed +hi! link rubyStringDelimiter EssexStringColor diff --git a/after/syntax/essex_rust.vim b/after/syntax/essex_rust.vim new file mode 100644 index 0000000..5270f66 --- /dev/null +++ b/after/syntax/essex_rust.vim @@ -0,0 +1,5 @@ +if essex#should_abort('rust') + finish +endif + +hi! link rustCommentLineDoc Comment diff --git a/after/syntax/essex_sass.vim b/after/syntax/essex_sass.vim new file mode 100644 index 0000000..a59798d --- /dev/null +++ b/after/syntax/essex_sass.vim @@ -0,0 +1,12 @@ +if essex#should_abort('sass') + finish +endif + +hi! link sassClass cssClassName +hi! link sassClassChar cssClassNameDot +hi! link sassId cssIdentifier +hi! link sassIdChar cssIdentifier +hi! link sassInterpolationDelimiter EssexKeyword +hi! link sassMixinName Function +hi! link sassProperty cssProp +hi! link sassVariableAssignment Operator diff --git a/after/syntax/essex_sh.vim b/after/syntax/essex_sh.vim new file mode 100644 index 0000000..97a65a9 --- /dev/null +++ b/after/syntax/essex_sh.vim @@ -0,0 +1,8 @@ +if essex#should_abort('bash', 'ksh', 'posix', 'sh') + finish +endif + +hi! link shCommandSub NONE +hi! link shEscape EssexRed +hi! link shParen NONE +hi! link shParenError NONE diff --git a/after/syntax/essex_tex.vim b/after/syntax/essex_tex.vim new file mode 100644 index 0000000..31909da --- /dev/null +++ b/after/syntax/essex_tex.vim @@ -0,0 +1,17 @@ +if essex#should_abort('tex') + finish +endif + +hi! link texBeginEndName EssexParameterItalic +hi! link texBoldItalStyle EssexParameterBoldItalic +hi! link texBoldStyle EssexParameterBold +hi! link texInputFile EssexParameterItalic +hi! link texItalStyle EssexStringColorItalic +hi! link texLigature EssexConstants +hi! link texMath EssexConstants +hi! link texMathMatcher EssexConstants +hi! link texMathSymbol EssexConstants +hi! link texRefZone EssexBgDarker +hi! link texSpecialChar EssexConstants +hi! link texSubscripts EssexConstants +hi! link texTitle EssexFgBold diff --git a/after/syntax/essex_typescript.vim b/after/syntax/essex_typescript.vim new file mode 100644 index 0000000..df6eeba --- /dev/null +++ b/after/syntax/essex_typescript.vim @@ -0,0 +1,57 @@ +if essex#should_abort('typescript', 'typescriptreact') + finish +endif + +" HerringtonDarkholme/yats.vim + +hi! link typescriptAliasDeclaration Type +hi! link typescriptArrayMethod Function +hi! link typescriptArrowFunc Operator +hi! link typescriptArrowFuncArg EssexParameterItalic +hi! link typescriptAssign Operator +hi! link typescriptBOMWindowProp Constant +hi! link typescriptBinaryOp Operator +hi! link typescriptBraces Delimiter +hi! link typescriptCall typescriptArrowFuncArg +hi! link typescriptClassHeritage Type +hi! link typescriptClassName Type +hi! link typescriptDateMethod EssexKeyColor +hi! link typescriptDateStaticMethod Function +hi! link typescriptDecorator EssexClassNameItalic +hi! link typescriptDefaultParam Operator +hi! link typescriptES6SetMethod EssexKeyColor +hi! link typescriptEndColons Delimiter +hi! link typescriptEnum Type +hi! link typescriptEnumKeyword Keyword +hi! link typescriptFuncComma Delimiter +hi! link typescriptFuncKeyword Keyword +hi! link typescriptFuncType EssexParameterItalic +hi! link typescriptFuncTypeArrow Operator +hi! link typescriptGlobal Type +hi! link typescriptGlobalMethod EssexKeyColor +hi! link typescriptGlobalObjects Type +hi! link typescriptIdentifier EssexConstantsItalic +hi! link typescriptInterfaceHeritage Type +hi! link typescriptInterfaceName Type +hi! link typescriptInterpolationDelimiter Keyword +hi! link typescriptKeywordOp Keyword +hi! link typescriptLogicSymbols Operator +hi! link typescriptMember Identifier +hi! link typescriptMemberOptionality Special +hi! link typescriptObjectColon Special +hi! link typescriptObjectLabel Identifier +hi! link typescriptObjectSpread Operator +hi! link typescriptOperator Operator +hi! link typescriptParamImpl EssexParameterItalic +hi! link typescriptParens Delimiter +hi! link typescriptPredefinedType Type +hi! link typescriptRestOrSpread Operator +hi! link typescriptTernaryOp Operator +hi! link typescriptTypeAnnotation Special +hi! link typescriptTypeCast Operator +hi! link typescriptTypeParameter EssexParameterItalic +hi! link typescriptTypeReference Type +hi! link typescriptUnaryOp Operator +hi! link typescriptVariable Keyword + +" }}} diff --git a/after/syntax/essex_typescriptreact.vim b/after/syntax/essex_typescriptreact.vim new file mode 100644 index 0000000..15a54e2 --- /dev/null +++ b/after/syntax/essex_typescriptreact.vim @@ -0,0 +1,10 @@ +if essex#should_abort('typescriptreact') + finish +endif + +runtime! syntax/typescript.vim + +hi! link tsxAttrib EssexClassNameItalic +hi! link tsxEqual Operator +hi! link tsxIntrinsicTagName Keyword +hi! link tsxTagName Type diff --git a/after/syntax/essex_vim.vim b/after/syntax/essex_vim.vim new file mode 100644 index 0000000..cd016d2 --- /dev/null +++ b/after/syntax/essex_vim.vim @@ -0,0 +1,14 @@ +if essex#should_abort('vim') + finish +endif + +hi! link vimAutoCmdSfxList Type +hi! link vimAutoEventList Type +hi! link vimEnvVar Constant +hi! link vimFunction Function +hi! link vimHiBang Keyword +hi! link vimOption Type +hi! link vimSetMod Keyword +hi! link vimSetSep Delimiter +hi! link vimUserAttrbCmpltFunc Function +hi! link vimUserFunc Function diff --git a/after/syntax/essex_xml.vim b/after/syntax/essex_xml.vim new file mode 100644 index 0000000..9935db3 --- /dev/null +++ b/after/syntax/essex_xml.vim @@ -0,0 +1,13 @@ +if essex#should_abort('xml') + finish +endif + +hi! link xmlAttrib EssexClassNameItalic +hi! link xmlEqual Operator +hi! link xmlTag Delimiter +hi! link xmlTagName Statement + +" Fixes missing highlight over end tags +syn region xmlTagName + \ matchgroup=xmlTag start=+"']\@=+ + \ matchgroup=xmlTag end=+>+ diff --git a/after/syntax/essex_yaml.vim b/after/syntax/essex_yaml.vim new file mode 100644 index 0000000..9350711 --- /dev/null +++ b/after/syntax/essex_yaml.vim @@ -0,0 +1,12 @@ +if essex#should_abort('yaml') + finish +endif + +hi! link yamlAlias EssexClassNameItalicUnderline +hi! link yamlAnchor EssexKeywordItalic +hi! link yamlBlockMappingKey EssexKeyColor +hi! link yamlFlowCollection EssexKeyword +hi! link yamlFlowIndicator Delimiter +hi! link yamlNodeTag EssexKeyword +hi! link yamlPlainScalar EssexStringColor + diff --git a/after/syntax/nakano_yotsuba_css.vim b/after/syntax/nakano_yotsuba_css.vim new file mode 100644 index 0000000..a1efb74 --- /dev/null +++ b/after/syntax/nakano_yotsuba_css.vim @@ -0,0 +1,15 @@ +if nakano_yotsuba#should_abort('css') + finish +endif + +hi! link cssAttrComma Delimiter +hi! link cssAttrRegion NakanoYotsubaKeyword +hi! link cssAttributeSelector NakanoYotsubaClassNameItalic +hi! link cssBraces Delimiter +hi! link cssFunctionComma Delimiter +hi! link cssNoise NakanoYotsubaKeyword +hi! link cssProp NakanoYotsubaKeyColor +hi! link cssPseudoClass NakanoYotsubaKeyword +hi! link cssPseudoClassId NakanoYotsubaClassNameItalic +hi! link cssUnitDecorators NakanoYotsubaKeyword +hi! link cssVendor NakanoYotsubaClassNameItalic diff --git a/after/syntax/nakano_yotsuba_gitcommit.vim b/after/syntax/nakano_yotsuba_gitcommit.vim new file mode 100644 index 0000000..d1575e8 --- /dev/null +++ b/after/syntax/nakano_yotsuba_gitcommit.vim @@ -0,0 +1,12 @@ +if nakano_yotsuba#should_abort('gitcommit') + finish +endif + +" The following two are misnomers. Colors are correct. +hi! link diffFile NakanoYotsubaClassName +hi! link diffNewFile NakanoYotsubaRed + +hi! link diffAdded NakanoYotsubaClassName +hi! link diffLine NakanoYotsubaKeyColorItalic +hi! link diffRemoved NakanoYotsubaRed + diff --git a/after/syntax/nakano_yotsuba_html.vim b/after/syntax/nakano_yotsuba_html.vim new file mode 100644 index 0000000..3afae24 --- /dev/null +++ b/after/syntax/nakano_yotsuba_html.vim @@ -0,0 +1,9 @@ +if nakano_yotsuba#should_abort('html') + finish +endif + +hi! link htmlTag NakanoYotsubaFg +hi! link htmlArg NakanoYotsubaClassNameItalic +hi! link htmlTitle NakanoYotsubaFg +hi! link htmlH1 NakanoYotsubaFg +hi! link htmlSpecialChar NakanoYotsubaConstants diff --git a/after/syntax/nakano_yotsuba_javascript.vim b/after/syntax/nakano_yotsuba_javascript.vim new file mode 100644 index 0000000..40cf8c1 --- /dev/null +++ b/after/syntax/nakano_yotsuba_javascript.vim @@ -0,0 +1,25 @@ +if nakano_yotsuba#should_abort('javascript') + finish +endif + +hi! link javaScriptBraces Delimiter +hi! link javaScriptNumber Constant +hi! link javaScriptNull Constant +hi! link javaScriptFunction Keyword + +" pangloss/vim-javascript + +hi! link jsArrowFunction Operator +hi! link jsClassMethodType Keyword +hi! link jsDestructuringAssignment NakanoYotsubaParameterItalic +hi! link jsDocParam NakanoYotsubaParameterItalic +hi! link jsDocTags Keyword +hi! link jsDocType Type +hi! link jsDocTypeBrackets NakanoYotsubaKeyColor +hi! link jsFuncArgOperator Operator +hi! link jsFunction Keyword +hi! link jsTemplateBraces Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/nakano_yotsuba_json.vim b/after/syntax/nakano_yotsuba_json.vim new file mode 100644 index 0000000..9c4b01f --- /dev/null +++ b/after/syntax/nakano_yotsuba_json.vim @@ -0,0 +1,6 @@ +if nakano_yotsuba#should_abort('json') + finish +endif + +hi! link jsonKeyword NakanoYotsubaKeyColor +hi! link jsonKeywordMatch NakanoYotsubaKeyword diff --git a/after/syntax/nakano_yotsuba_lua.vim b/after/syntax/nakano_yotsuba_lua.vim new file mode 100644 index 0000000..253f29b --- /dev/null +++ b/after/syntax/nakano_yotsuba_lua.vim @@ -0,0 +1,6 @@ +if nakano_yotsuba#should_abort('lua') + finish +endif + +hi! link luaFunc NakanoYotsubaKeyColor +hi! link luaTable NakanoYotsubaFg diff --git a/after/syntax/nakano_yotsuba_markdown.vim b/after/syntax/nakano_yotsuba_markdown.vim new file mode 100644 index 0000000..55d1892 --- /dev/null +++ b/after/syntax/nakano_yotsuba_markdown.vim @@ -0,0 +1,50 @@ +if nakano_yotsuba#should_abort('markdown', 'mkd') + finish +endif + +if b:current_syntax ==# 'mkd' +" plasticboy/vim-markdown + hi! link htmlBold NakanoYotsubaParameterBold + hi! link htmlBoldItalic NakanoYotsubaParameterBoldItalic + hi! link htmlH1 NakanoYotsubaConstantsBold + hi! link htmlItalic NakanoYotsubaStringColorItalic + hi! link mkdBlockquote NakanoYotsubaStringColorItalic + hi! link mkdBold NakanoYotsubaParameterBold + hi! link mkdBoldItalic NakanoYotsubaParameterBoldItalic + hi! link mkdCode NakanoYotsubaClassName + hi! link mkdCodeEnd NakanoYotsubaClassName + hi! link mkdCodeStart NakanoYotsubaClassName + hi! link mkdHeading NakanoYotsubaConstantsBold + hi! link mkdInlineUrl NakanoYotsubaLink + hi! link mkdItalic NakanoYotsubaStringColorItalic + hi! link mkdLink NakanoYotsubaKeyword + hi! link mkdListItem NakanoYotsubaKeyColor + hi! link mkdRule NakanoYotsubaComment + hi! link mkdUrl NakanoYotsubaLink +"}}}1 +elseif b:current_syntax ==# 'markdown' +" Builtin: + hi! link markdownBlockquote NakanoYotsubaKeyColor + hi! link markdownBold NakanoYotsubaParameterBold + hi! link markdownBoldItalic NakanoYotsubaParameterBoldItalic + hi! link markdownCodeBlock NakanoYotsubaClassName + hi! link markdownCode NakanoYotsubaClassName + hi! link markdownCodeDelimiter NakanoYotsubaClassName + hi! link markdownH1 NakanoYotsubaConstantsBold + hi! link markdownH2 markdownH1 + hi! link markdownH3 markdownH1 + hi! link markdownH4 markdownH1 + hi! link markdownH5 markdownH1 + hi! link markdownH6 markdownH1 + hi! link markdownHeadingDelimiter markdownH1 + hi! link markdownHeadingRule markdownH1 + hi! link markdownItalic NakanoYotsubaStringColorItalic + hi! link markdownLinkText NakanoYotsubaKeyword + hi! link markdownListMarker NakanoYotsubaKeyColor + hi! link markdownOrderedListMarker NakanoYotsubaKeyColor + hi! link markdownRule NakanoYotsubaComment + hi! link markdownUrl NakanoYotsubaLink +"}}} +endif + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/after/syntax/nakano_yotsuba_ocaml.vim b/after/syntax/nakano_yotsuba_ocaml.vim new file mode 100644 index 0000000..ceea856 --- /dev/null +++ b/after/syntax/nakano_yotsuba_ocaml.vim @@ -0,0 +1,7 @@ +if nakano_yotsuba#should_abort('ocaml') + finish +endif + +hi! link ocamlModule Type +hi! link ocamlModPath Normal +hi! link ocamlLabel NakanoYotsubaParameterItalic diff --git a/after/syntax/nakano_yotsuba_perl.vim b/after/syntax/nakano_yotsuba_perl.vim new file mode 100644 index 0000000..d96acd5 --- /dev/null +++ b/after/syntax/nakano_yotsuba_perl.vim @@ -0,0 +1,38 @@ +if nakano_yotsuba#should_abort('perl') + finish +endif + +" Regex +hi! link perlMatchStartEnd NakanoYotsubaRed + +" Builtin functions +hi! link perlOperator NakanoYotsubaKeyColor +hi! link perlStatementFiledesc NakanoYotsubaKeyColor +hi! link perlStatementFiles NakanoYotsubaKeyColor +hi! link perlStatementFlow NakanoYotsubaKeyColor +hi! link perlStatementHash NakanoYotsubaKeyColor +hi! link perlStatementIOfunc NakanoYotsubaKeyColor +hi! link perlStatementIPC NakanoYotsubaKeyColor +hi! link perlStatementList NakanoYotsubaKeyColor +hi! link perlStatementMisc NakanoYotsubaKeyColor +hi! link perlStatementNetwork NakanoYotsubaKeyColor +hi! link perlStatementNumeric NakanoYotsubaKeyColor +hi! link perlStatementProc NakanoYotsubaKeyColor +hi! link perlStatementPword NakanoYotsubaKeyColor +hi! link perlStatementRegexp NakanoYotsubaKeyColor +hi! link perlStatementScalar NakanoYotsubaKeyColor +hi! link perlStatementSocket NakanoYotsubaKeyColor +hi! link perlStatementTime NakanoYotsubaKeyColor +hi! link perlStatementVector NakanoYotsubaKeyColor + +" Highlighting for quoting constructs, tied to existing option in vim-perl +if get(g:, 'perl_string_as_statement', 0) + hi! link perlStringStartEnd NakanoYotsubaRed +endif + +" Signatures +hi! link perlSignature NakanoYotsubaParameterItalic +hi! link perlSubPrototype NakanoYotsubaParameterItalic + +" Hash keys +hi! link perlVarSimpleMemberName NakanoYotsubaConstants diff --git a/after/syntax/nakano_yotsuba_php.vim b/after/syntax/nakano_yotsuba_php.vim new file mode 100644 index 0000000..5d46347 --- /dev/null +++ b/after/syntax/nakano_yotsuba_php.vim @@ -0,0 +1,10 @@ +if nakano_yotsuba#should_abort('php') + finish +endif + +hi! link phpClass Type +hi! link phpClasses Type +hi! link phpDocTags NakanoYotsubaKeyColorItalic +hi! link phpFunction Function +hi! link phpParent Normal +hi! link phpSpecialFunction NakanoYotsubaKeyColor diff --git a/after/syntax/nakano_yotsuba_plantuml.vim b/after/syntax/nakano_yotsuba_plantuml.vim new file mode 100644 index 0000000..f871ec9 --- /dev/null +++ b/after/syntax/nakano_yotsuba_plantuml.vim @@ -0,0 +1,13 @@ +if nakano_yotsuba#should_abort('plantuml') + finish +endif + +hi! link plantumlClassPrivate SpecialKey +hi! link plantumlClassProtected NakanoYotsubaParameter +hi! link plantumlClassPublic Function +hi! link plantumlColonLine String +hi! link plantumlDirectedOrVerticalArrowLR Constant +hi! link plantumlDirectedOrVerticalArrowRL Constant +hi! link plantumlHorizontalArrow Constant +hi! link plantumlSkinParamKeyword NakanoYotsubaKeyColor +hi! link plantumlTypeKeyword Keyword diff --git a/after/syntax/nakano_yotsuba_python.vim b/after/syntax/nakano_yotsuba_python.vim new file mode 100644 index 0000000..2c0fd65 --- /dev/null +++ b/after/syntax/nakano_yotsuba_python.vim @@ -0,0 +1,11 @@ +if nakano_yotsuba#should_abort('python') + finish +endif + +hi! link pythonBuiltinObj Type +hi! link pythonBuiltinObject Type +hi! link pythonBuiltinType Type +hi! link pythonClassVar NakanoYotsubaConstantsItalic +hi! link pythonExClass Type +hi! link pythonNone Type +hi! link pythonRun Comment diff --git a/after/syntax/nakano_yotsuba_ruby.vim b/after/syntax/nakano_yotsuba_ruby.vim new file mode 100644 index 0000000..70918b1 --- /dev/null +++ b/after/syntax/nakano_yotsuba_ruby.vim @@ -0,0 +1,16 @@ +if nakano_yotsuba#should_abort('ruby') + finish +endif + +if ! exists('g:ruby_operators') + let g:ruby_operators=1 +endif + +hi! link rubyBlockArgument NakanoYotsubaParameterItalic +hi! link rubyBlockParameter NakanoYotsubaParameterItalic +hi! link rubyCurlyBlock NakanoYotsubaKeyword +hi! link rubyGlobalVariable NakanoYotsubaConstants +hi! link rubyInstanceVariable NakanoYotsubaConstantsItalic +hi! link rubyInterpolationDelimiter NakanoYotsubaKeyword +hi! link rubyRegexpDelimiter NakanoYotsubaRed +hi! link rubyStringDelimiter NakanoYotsubaStringColor diff --git a/after/syntax/nakano_yotsuba_rust.vim b/after/syntax/nakano_yotsuba_rust.vim new file mode 100644 index 0000000..268137e --- /dev/null +++ b/after/syntax/nakano_yotsuba_rust.vim @@ -0,0 +1,5 @@ +if nakano_yotsuba#should_abort('rust') + finish +endif + +hi! link rustCommentLineDoc Comment diff --git a/after/syntax/nakano_yotsuba_sass.vim b/after/syntax/nakano_yotsuba_sass.vim new file mode 100644 index 0000000..77d02dc --- /dev/null +++ b/after/syntax/nakano_yotsuba_sass.vim @@ -0,0 +1,12 @@ +if nakano_yotsuba#should_abort('sass') + finish +endif + +hi! link sassClass cssClassName +hi! link sassClassChar cssClassNameDot +hi! link sassId cssIdentifier +hi! link sassIdChar cssIdentifier +hi! link sassInterpolationDelimiter NakanoYotsubaKeyword +hi! link sassMixinName Function +hi! link sassProperty cssProp +hi! link sassVariableAssignment Operator diff --git a/after/syntax/nakano_yotsuba_sh.vim b/after/syntax/nakano_yotsuba_sh.vim new file mode 100644 index 0000000..5f51b4d --- /dev/null +++ b/after/syntax/nakano_yotsuba_sh.vim @@ -0,0 +1,8 @@ +if nakano_yotsuba#should_abort('bash', 'ksh', 'posix', 'sh') + finish +endif + +hi! link shCommandSub NONE +hi! link shEscape NakanoYotsubaRed +hi! link shParen NONE +hi! link shParenError NONE diff --git a/after/syntax/nakano_yotsuba_tex.vim b/after/syntax/nakano_yotsuba_tex.vim new file mode 100644 index 0000000..38f4724 --- /dev/null +++ b/after/syntax/nakano_yotsuba_tex.vim @@ -0,0 +1,17 @@ +if nakano_yotsuba#should_abort('tex') + finish +endif + +hi! link texBeginEndName NakanoYotsubaParameterItalic +hi! link texBoldItalStyle NakanoYotsubaParameterBoldItalic +hi! link texBoldStyle NakanoYotsubaParameterBold +hi! link texInputFile NakanoYotsubaParameterItalic +hi! link texItalStyle NakanoYotsubaStringColorItalic +hi! link texLigature NakanoYotsubaConstants +hi! link texMath NakanoYotsubaConstants +hi! link texMathMatcher NakanoYotsubaConstants +hi! link texMathSymbol NakanoYotsubaConstants +hi! link texRefZone NakanoYotsubaBgDarker +hi! link texSpecialChar NakanoYotsubaConstants +hi! link texSubscripts NakanoYotsubaConstants +hi! link texTitle NakanoYotsubaFgBold diff --git a/after/syntax/nakano_yotsuba_typescript.vim b/after/syntax/nakano_yotsuba_typescript.vim new file mode 100644 index 0000000..947146f --- /dev/null +++ b/after/syntax/nakano_yotsuba_typescript.vim @@ -0,0 +1,57 @@ +if nakano_yotsuba#should_abort('typescript', 'typescriptreact') + finish +endif + +" HerringtonDarkholme/yats.vim + +hi! link typescriptAliasDeclaration Type +hi! link typescriptArrayMethod Function +hi! link typescriptArrowFunc Operator +hi! link typescriptArrowFuncArg NakanoYotsubaParameterItalic +hi! link typescriptAssign Operator +hi! link typescriptBOMWindowProp Constant +hi! link typescriptBinaryOp Operator +hi! link typescriptBraces Delimiter +hi! link typescriptCall typescriptArrowFuncArg +hi! link typescriptClassHeritage Type +hi! link typescriptClassName Type +hi! link typescriptDateMethod NakanoYotsubaKeyColor +hi! link typescriptDateStaticMethod Function +hi! link typescriptDecorator NakanoYotsubaClassNameItalic +hi! link typescriptDefaultParam Operator +hi! link typescriptES6SetMethod NakanoYotsubaKeyColor +hi! link typescriptEndColons Delimiter +hi! link typescriptEnum Type +hi! link typescriptEnumKeyword Keyword +hi! link typescriptFuncComma Delimiter +hi! link typescriptFuncKeyword Keyword +hi! link typescriptFuncType NakanoYotsubaParameterItalic +hi! link typescriptFuncTypeArrow Operator +hi! link typescriptGlobal Type +hi! link typescriptGlobalMethod NakanoYotsubaKeyColor +hi! link typescriptGlobalObjects Type +hi! link typescriptIdentifier NakanoYotsubaConstantsItalic +hi! link typescriptInterfaceHeritage Type +hi! link typescriptInterfaceName Type +hi! link typescriptInterpolationDelimiter Keyword +hi! link typescriptKeywordOp Keyword +hi! link typescriptLogicSymbols Operator +hi! link typescriptMember Identifier +hi! link typescriptMemberOptionality Special +hi! link typescriptObjectColon Special +hi! link typescriptObjectLabel Identifier +hi! link typescriptObjectSpread Operator +hi! link typescriptOperator Operator +hi! link typescriptParamImpl NakanoYotsubaParameterItalic +hi! link typescriptParens Delimiter +hi! link typescriptPredefinedType Type +hi! link typescriptRestOrSpread Operator +hi! link typescriptTernaryOp Operator +hi! link typescriptTypeAnnotation Special +hi! link typescriptTypeCast Operator +hi! link typescriptTypeParameter NakanoYotsubaParameterItalic +hi! link typescriptTypeReference Type +hi! link typescriptUnaryOp Operator +hi! link typescriptVariable Keyword + +" }}} diff --git a/after/syntax/nakano_yotsuba_typescriptreact.vim b/after/syntax/nakano_yotsuba_typescriptreact.vim new file mode 100644 index 0000000..275c183 --- /dev/null +++ b/after/syntax/nakano_yotsuba_typescriptreact.vim @@ -0,0 +1,10 @@ +if nakano_yotsuba#should_abort('typescriptreact') + finish +endif + +runtime! syntax/typescript.vim + +hi! link tsxAttrib NakanoYotsubaClassNameItalic +hi! link tsxEqual Operator +hi! link tsxIntrinsicTagName Keyword +hi! link tsxTagName Type diff --git a/after/syntax/nakano_yotsuba_vim.vim b/after/syntax/nakano_yotsuba_vim.vim new file mode 100644 index 0000000..8983c04 --- /dev/null +++ b/after/syntax/nakano_yotsuba_vim.vim @@ -0,0 +1,14 @@ +if nakano_yotsuba#should_abort('vim') + finish +endif + +hi! link vimAutoCmdSfxList Type +hi! link vimAutoEventList Type +hi! link vimEnvVar Constant +hi! link vimFunction Function +hi! link vimHiBang Keyword +hi! link vimOption Type +hi! link vimSetMod Keyword +hi! link vimSetSep Delimiter +hi! link vimUserAttrbCmpltFunc Function +hi! link vimUserFunc Function diff --git a/after/syntax/nakano_yotsuba_xml.vim b/after/syntax/nakano_yotsuba_xml.vim new file mode 100644 index 0000000..08fbb52 --- /dev/null +++ b/after/syntax/nakano_yotsuba_xml.vim @@ -0,0 +1,13 @@ +if nakano_yotsuba#should_abort('xml') + finish +endif + +hi! link xmlAttrib NakanoYotsubaClassNameItalic +hi! link xmlEqual Operator +hi! link xmlTag Delimiter +hi! link xmlTagName Statement + +" Fixes missing highlight over end tags +syn region xmlTagName + \ matchgroup=xmlTag start=+"']\@=+ + \ matchgroup=xmlTag end=+>+ diff --git a/after/syntax/nakano_yotsuba_yaml.vim b/after/syntax/nakano_yotsuba_yaml.vim new file mode 100644 index 0000000..9fc2c47 --- /dev/null +++ b/after/syntax/nakano_yotsuba_yaml.vim @@ -0,0 +1,12 @@ +if nakano_yotsuba#should_abort('yaml') + finish +endif + +hi! link yamlAlias NakanoYotsubaClassNameItalicUnderline +hi! link yamlAnchor NakanoYotsubaKeywordItalic +hi! link yamlBlockMappingKey NakanoYotsubaKeyColor +hi! link yamlFlowCollection NakanoYotsubaKeyword +hi! link yamlFlowIndicator Delimiter +hi! link yamlNodeTag NakanoYotsubaKeyword +hi! link yamlPlainScalar NakanoYotsubaStringColor + diff --git a/autoload/christmas_chocola.vim b/autoload/christmas_chocola.vim new file mode 100644 index 0000000..6ff1c2c --- /dev/null +++ b/autoload/christmas_chocola.vim @@ -0,0 +1,57 @@ +" Palette: + +let g:christmas_chocola#palette = {} +let g:christmas_chocola#palette.fg = ['#d3d3d3', 252] + +let g:christmas_chocola#palette.bglighter = ['#3c161f', 234] +let g:christmas_chocola#palette.bglight = ['#3c161f', 234] +let g:christmas_chocola#palette.bg = ['#3c161f', 234] +let g:christmas_chocola#palette.bgdark = ['#3c161f', 234] +let g:christmas_chocola#palette.bgdarker = ['#3c161f', 234] + +let g:christmas_chocola#palette.comment = ['#72A174', 243] +let g:christmas_chocola#palette.selection = ['#1f422d', 236] +let g:christmas_chocola#palette.subtle = ['#1e3828', 235] + +let g:christmas_chocola#palette.key_color = ['#48eae4', 80] +let g:christmas_chocola#palette.class_name = ['#f689f6', 213] +let g:christmas_chocola#palette.parameter_color = ['#FFB86C', 215] +let g:christmas_chocola#palette.keyword_color = ['#EF354B', 203] +let g:christmas_chocola#palette.constants_color = ['#96b7fb', 111] +let g:christmas_chocola#palette.red = ['#FF5555', 203] +let g:christmas_chocola#palette.string_color = ['#FDBAAE', 217] + +" +" Terminal Colors +" +let g:christmas_chocola#palette.color_0 = '#21222C' +let g:christmas_chocola#palette.color_1 = '#E356A7' +let g:christmas_chocola#palette.color_2 = '#42E66C' +let g:christmas_chocola#palette.color_3 = '#F1FA8C' +let g:christmas_chocola#palette.color_4 = '#9B6BDF' +let g:christmas_chocola#palette.color_5 = '#E64747' +let g:christmas_chocola#palette.color_6 = '#75D7EC' +let g:christmas_chocola#palette.color_7 = '#F8F8F2' +let g:christmas_chocola#palette.color_8 = '#6272A4' +let g:christmas_chocola#palette.color_9 = '#E356A7' +let g:christmas_chocola#palette.color_10 = '#42E66C' +let g:christmas_chocola#palette.color_11 = '#EFA554' +let g:christmas_chocola#palette.color_12 = '#9B6BDF' +let g:christmas_chocola#palette.color_13 = '#E64747' +let g:christmas_chocola#palette.color_14 = '#75D7EC' +let g:christmas_chocola#palette.color_15 = '#FFFFFF' + +" }}} + +" Helper function that takes a variadic list of filetypes as args and returns +" whether or not the execution of the ftplugin should be aborted. +func! christmas_chocola#should_abort(...) + if ! exists('g:colors_name') || g:colors_name !=# 'christmas_chocola' + return 1 + elseif a:0 > 0 && (! exists('b:current_syntax') || index(a:000, b:current_syntax) == -1) + return 1 + endif + return 0 +endfunction + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/autoload/essex.vim b/autoload/essex.vim new file mode 100644 index 0000000..2a9d7f2 --- /dev/null +++ b/autoload/essex.vim @@ -0,0 +1,57 @@ +" Palette: + +let g:essex#palette = {} +let g:essex#palette.fg = ['#d7d7d7', 188] + +let g:essex#palette.bglighter = ['#002446', 17] +let g:essex#palette.bglight = ['#002446', 17] +let g:essex#palette.bg = ['#002446', 17] +let g:essex#palette.bgdark = ['#002446', 17] +let g:essex#palette.bgdarker = ['#002446', 17] + +let g:essex#palette.comment = ['#6387AF', 67] +let g:essex#palette.selection = ['#480F0F', 52] +let g:essex#palette.subtle = ['#261a30', 235] + +let g:essex#palette.key_color = ['#eec45e', 221] +let g:essex#palette.class_name = ['#B5AAEE', 147] +let g:essex#palette.parameter_color = ['#FFB86C', 215] +let g:essex#palette.keyword_color = ['#e83737', 167] +let g:essex#palette.constants_color = ['#78DBEF', 117] +let g:essex#palette.red = ['#FF5555', 203] +let g:essex#palette.string_color = ['#f3b085', 216] + +" +" Terminal Colors +" +let g:essex#palette.color_0 = '#21222C' +let g:essex#palette.color_1 = '#E356A7' +let g:essex#palette.color_2 = '#42E66C' +let g:essex#palette.color_3 = '#F1FA8C' +let g:essex#palette.color_4 = '#9B6BDF' +let g:essex#palette.color_5 = '#E64747' +let g:essex#palette.color_6 = '#75D7EC' +let g:essex#palette.color_7 = '#F8F8F2' +let g:essex#palette.color_8 = '#6272A4' +let g:essex#palette.color_9 = '#E356A7' +let g:essex#palette.color_10 = '#42E66C' +let g:essex#palette.color_11 = '#EFA554' +let g:essex#palette.color_12 = '#9B6BDF' +let g:essex#palette.color_13 = '#E64747' +let g:essex#palette.color_14 = '#75D7EC' +let g:essex#palette.color_15 = '#FFFFFF' + +" }}} + +" Helper function that takes a variadic list of filetypes as args and returns +" whether or not the execution of the ftplugin should be aborted. +func! essex#should_abort(...) + if ! exists('g:colors_name') || g:colors_name !=# 'essex' + return 1 + elseif a:0 > 0 && (! exists('b:current_syntax') || index(a:000, b:current_syntax) == -1) + return 1 + endif + return 0 +endfunction + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/autoload/nakano_yotsuba.vim b/autoload/nakano_yotsuba.vim new file mode 100644 index 0000000..2db5666 --- /dev/null +++ b/autoload/nakano_yotsuba.vim @@ -0,0 +1,57 @@ +" Palette: + +let g:nakano_yotsuba#palette = {} +let g:nakano_yotsuba#palette.fg = ['#bbbbbb', 250] + +let g:nakano_yotsuba#palette.bglighter = ['#140e19', 233] +let g:nakano_yotsuba#palette.bglight = ['#140e19', 233] +let g:nakano_yotsuba#palette.bg = ['#140e19', 233] +let g:nakano_yotsuba#palette.bgdark = ['#140e19', 233] +let g:nakano_yotsuba#palette.bgdarker = ['#140e19', 233] + +let g:nakano_yotsuba#palette.comment = ['#6C524E', 239] +let g:nakano_yotsuba#palette.selection = ['#622316', 52] +let g:nakano_yotsuba#palette.subtle = ['#2d0d0d', 233] + +let g:nakano_yotsuba#palette.key_color = ['#39e6a6', 79] +let g:nakano_yotsuba#palette.class_name = ['#ffba2f', 214] +let g:nakano_yotsuba#palette.parameter_color = ['#FFB86C', 215] +let g:nakano_yotsuba#palette.keyword_color = ['#ff858c', 210] +let g:nakano_yotsuba#palette.constants_color = ['#9DACF6', 147] +let g:nakano_yotsuba#palette.red = ['#FF5555', 203] +let g:nakano_yotsuba#palette.string_color = ['#F6E3CC', 224] + +" +" Terminal Colors +" +let g:nakano_yotsuba#palette.color_0 = '#21222C' +let g:nakano_yotsuba#palette.color_1 = '#E356A7' +let g:nakano_yotsuba#palette.color_2 = '#42E66C' +let g:nakano_yotsuba#palette.color_3 = '#F1FA8C' +let g:nakano_yotsuba#palette.color_4 = '#9B6BDF' +let g:nakano_yotsuba#palette.color_5 = '#E64747' +let g:nakano_yotsuba#palette.color_6 = '#75D7EC' +let g:nakano_yotsuba#palette.color_7 = '#F8F8F2' +let g:nakano_yotsuba#palette.color_8 = '#6272A4' +let g:nakano_yotsuba#palette.color_9 = '#E356A7' +let g:nakano_yotsuba#palette.color_10 = '#42E66C' +let g:nakano_yotsuba#palette.color_11 = '#EFA554' +let g:nakano_yotsuba#palette.color_12 = '#9B6BDF' +let g:nakano_yotsuba#palette.color_13 = '#E64747' +let g:nakano_yotsuba#palette.color_14 = '#75D7EC' +let g:nakano_yotsuba#palette.color_15 = '#FFFFFF' + +" }}} + +" Helper function that takes a variadic list of filetypes as args and returns +" whether or not the execution of the ftplugin should be aborted. +func! nakano_yotsuba#should_abort(...) + if ! exists('g:colors_name') || g:colors_name !=# 'nakano_yotsuba' + return 1 + elseif a:0 > 0 && (! exists('b:current_syntax') || index(a:000, b:current_syntax) == -1) + return 1 + endif + return 0 +endfunction + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: diff --git a/buildSrc/assets/themes/azurLane/essex/dark/essex.dark.vim.definition.json b/buildSrc/assets/themes/azurLane/essex/dark/essex.dark.vim.definition.json new file mode 100644 index 0000000..7c1721a --- /dev/null +++ b/buildSrc/assets/themes/azurLane/essex/dark/essex.dark.vim.definition.json @@ -0,0 +1,7 @@ +{ + "id": "e55e70ea-454b-47ef-9270-d46390dd2769", + "overrides": {}, + "laf": {}, + "syntax": {}, + "colors": {} +} \ No newline at end of file diff --git a/buildSrc/assets/themes/nekoPara/chocola/xmas/chocola.xmas.vim.definition.json b/buildSrc/assets/themes/nekoPara/chocola/xmas/chocola.xmas.vim.definition.json new file mode 100644 index 0000000..42ec27b --- /dev/null +++ b/buildSrc/assets/themes/nekoPara/chocola/xmas/chocola.xmas.vim.definition.json @@ -0,0 +1,7 @@ +{ + "id": "6428e1ff-202c-4a43-afb3-9999ebe3b2ca", + "overrides": {}, + "laf": {}, + "syntax": {}, + "colors": {} +} \ No newline at end of file diff --git a/buildSrc/assets/themes/quintuplets/yotsuba/dark/yotsuba.dark.vim.definition.json b/buildSrc/assets/themes/quintuplets/yotsuba/dark/yotsuba.dark.vim.definition.json new file mode 100644 index 0000000..6e028a2 --- /dev/null +++ b/buildSrc/assets/themes/quintuplets/yotsuba/dark/yotsuba.dark.vim.definition.json @@ -0,0 +1,7 @@ +{ + "id": "3b11c8f4-d030-4a7e-a46f-b22d3e430a1d", + "overrides": {}, + "laf": {}, + "syntax": {}, + "colors": {} +} \ No newline at end of file diff --git a/buildSrc/package.json b/buildSrc/package.json index 57fd5c4..f43eaf6 100644 --- a/buildSrc/package.json +++ b/buildSrc/package.json @@ -12,7 +12,7 @@ "@types/jest": "^26.0.0", "@types/lodash": "^4.14.155", "copy-webpack-plugin": "^6.0.2", - "doki-build-source": "1.7.0", + "doki-build-source": "1.8.0", "jest": "^26.0.1", "rimraf": "^3.0.2", "ts-jest": "^26.1.0", diff --git a/buildSrc/yarn.lock b/buildSrc/yarn.lock index ca6979b..0c93430 100644 --- a/buildSrc/yarn.lock +++ b/buildSrc/yarn.lock @@ -1841,10 +1841,10 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -doki-build-source@1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/doki-build-source/-/doki-build-source-1.7.0.tgz#d90402b8f02e80d8b0376d86d48e57ba7be991e8" - integrity sha512-E2PCaT2lNAEZVHhl6cDRah9KqWf/M6S59YgfwHU7N3HBtDl6ld8U6Np9f5UUQPtquLb47UC2R+CvN2t8SKXRhw== +doki-build-source@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/doki-build-source/-/doki-build-source-1.8.0.tgz#30f82942eca97f4091697302e55ff5504a7bf42e" + integrity sha512-l7gvHdcptjruHPVe0KB5UgY9lTjtbxC8aqE2ds4+eD78OttjCgUrfJjAVeeY0tF2cp3vZ8+3eUB9EthbuwL3eQ== domain-browser@^1.1.1: version "1.2.0" diff --git a/colors/christmas_chocola.vim b/colors/christmas_chocola.vim new file mode 100644 index 0000000..12a976a --- /dev/null +++ b/colors/christmas_chocola.vim @@ -0,0 +1,300 @@ +" Configuration: + +if v:version > 580 + highlight clear + if exists('syntax_on') + syntax reset + endif +endif + +let g:colors_name = 'christmas_chocola' + +if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256 + finish +endif + +" Palette: + +let s:fg = g:christmas_chocola#palette.fg + +let s:bglighter = g:christmas_chocola#palette.bglighter +let s:bglight = g:christmas_chocola#palette.bglight +let s:bg = g:christmas_chocola#palette.bg +let s:bgdark = g:christmas_chocola#palette.bgdark +let s:bgdarker = g:christmas_chocola#palette.bgdarker + +let s:comment = g:christmas_chocola#palette.comment +let s:selection = g:christmas_chocola#palette.selection +let s:subtle = g:christmas_chocola#palette.subtle + +let s:key_color = g:christmas_chocola#palette.key_color +let s:class_name = g:christmas_chocola#palette.class_name +let s:parameter_color = g:christmas_chocola#palette.parameter_color +let s:keyword_color = g:christmas_chocola#palette.keyword_color +let s:constants_color = g:christmas_chocola#palette.constants_color +let s:red = g:christmas_chocola#palette.red +let s:string_color = g:christmas_chocola#palette.string_color + +let s:none = ['NONE', 'NONE'] + +if has('nvim') + for s:i in range(16) + let g:terminal_color_{s:i} = g:christmas_chocola#palette['color_' . s:i] + endfor +endif + +if has('terminal') + let g:terminal_ansi_colors = [] + for s:i in range(16) + call add(g:terminal_ansi_colors, g:christmas_chocola#palette['color_' . s:i]) + endfor +endif + +" }}}2 +" User Configuration: + +if !exists('g:christmas_chocola_bold') + let g:christmas_chocola_bold = 1 +endif + +if !exists('g:christmas_chocola_italic') + let g:christmas_chocola_italic = 1 +endif + +if !exists('g:christmas_chocola_underline') + let g:christmas_chocola_underline = 1 +endif + +if !exists('g:christmas_chocola_undercurl') && g:christmas_chocola_underline != 0 + let g:christmas_chocola_undercurl = 1 +endif + +if !exists('g:christmas_chocola_inverse') + let g:christmas_chocola_inverse = 1 +endif + +if !exists('g:christmas_chocola_colorterm') + let g:christmas_chocola_colorterm = 1 +endif + +"}}}2 +" Script Helpers: + +let s:attrs = { + \ 'bold': g:christmas_chocola_bold == 1 ? 'bold' : 0, + \ 'italic': g:christmas_chocola_italic == 1 ? 'italic' : 0, + \ 'underline': g:christmas_chocola_underline == 1 ? 'underline' : 0, + \ 'undercurl': g:christmas_chocola_undercurl == 1 ? 'undercurl' : 0, + \ 'inverse': g:christmas_chocola_inverse == 1 ? 'inverse' : 0, + \} + +function! s:h(scope, fg, ...) " bg, attr_list, special + let l:fg = copy(a:fg) + let l:bg = get(a:, 1, ['NONE', 'NONE']) + + let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1') + let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE' + + " Falls back to coloring foreground group on terminals because + " nearly all do not support undercurl + let l:special = get(a:, 3, ['NONE', 'NONE']) + if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !has('gui_running') + let l:fg[0] = l:special[0] + let l:fg[1] = l:special[1] + endif + + let l:hl_string = [ + \ 'highlight', a:scope, + \ 'guifg=' . l:fg[0], 'ctermfg=' . l:fg[1], + \ 'guibg=' . l:bg[0], 'ctermbg=' . l:bg[1], + \ 'gui=' . l:attrs, 'cterm=' . l:attrs, + \ 'guisp=' . l:special[0], + \] + + execute join(l:hl_string, ' ') +endfunction + +"}}}2 +"Highlight Groups: + +call s:h('ChristmasChocolaBgLight', s:none, s:bglight) +call s:h('ChristmasChocolaBgLighter', s:none, s:bglighter) +call s:h('ChristmasChocolaBgDark', s:none, s:bgdark) +call s:h('ChristmasChocolaBgDarker', s:none, s:bgdarker) + +call s:h('ChristmasChocolaFg', s:fg) +call s:h('ChristmasChocolaFgUnderline', s:fg, s:none, [s:attrs.underline]) +call s:h('ChristmasChocolaFgBold', s:fg, s:none, [s:attrs.bold]) + +call s:h('ChristmasChocolaComment', s:comment) +call s:h('ChristmasChocolaCommentBold', s:comment, s:none, [s:attrs.bold]) + +call s:h('ChristmasChocolaSelection', s:none, s:selection) + +call s:h('ChristmasChocolaSubtle', s:subtle) + +call s:h('ChristmasChocolaKeyColor', s:key_color) +call s:h('ChristmasChocolaKeyColorItalic', s:key_color, s:none, [s:attrs.italic]) + +call s:h('ChristmasChocolaClassName', s:class_name) +call s:h('ChristmasChocolaClassNameBold', s:class_name, s:none, [s:attrs.bold]) +call s:h('ChristmasChocolaClassNameItalic', s:class_name, s:none, [s:attrs.italic]) +call s:h('ChristmasChocolaClassNameItalicUnderline', s:class_name, s:none, [s:attrs.italic, s:attrs.underline]) + +call s:h('ChristmasChocolaParameter', s:parameter_color) +call s:h('ChristmasChocolaParameterBold', s:parameter_color, s:none, [s:attrs.bold]) +call s:h('ChristmasChocolaParameterItalic', s:parameter_color, s:none, [s:attrs.italic]) +call s:h('ChristmasChocolaParameterBoldItalic', s:parameter_color, s:none, [s:attrs.bold, s:attrs.italic]) +call s:h('ChristmasChocolaParameterInverse', s:bg, s:parameter_color) + +call s:h('ChristmasChocolaKeyword', s:keyword_color) +call s:h('ChristmasChocolaKeywordItalic', s:keyword_color, s:none, [s:attrs.italic]) + +call s:h('ChristmasChocolaConstants', s:constants_color) +call s:h('ChristmasChocolaConstantsBold', s:constants_color, s:none, [s:attrs.bold]) +call s:h('ChristmasChocolaConstantsItalic', s:constants_color, s:none, [s:attrs.italic]) + +call s:h('ChristmasChocolaRed', s:red) +call s:h('ChristmasChocolaRedInverse', s:fg, s:red) + +call s:h('ChristmasChocolaStringColor', s:string_color) +call s:h('ChristmasChocolaStringColorItalic', s:string_color, s:none, [s:attrs.italic]) + +call s:h('ChristmasChocolaError', s:red, s:none, [], s:red) + +call s:h('ChristmasChocolaErrorLine', s:none, s:none, [s:attrs.undercurl], s:red) +call s:h('ChristmasChocolaWarnLine', s:none, s:none, [s:attrs.undercurl], s:parameter_color) +call s:h('ChristmasChocolaInfoLine', s:none, s:none, [s:attrs.undercurl], s:key_color) + +call s:h('ChristmasChocolaTodo', s:key_color, s:none, [s:attrs.bold, s:attrs.inverse]) +call s:h('ChristmasChocolaSearch', s:class_name, s:none, [s:attrs.inverse]) +call s:h('ChristmasChocolaBoundary', s:comment, s:bgdark) +call s:h('ChristmasChocolaLink', s:key_color, s:none, [s:attrs.underline]) + +call s:h('ChristmasChocolaDiffChange', s:parameter_color, s:none) +call s:h('ChristmasChocolaDiffText', s:bg, s:parameter_color) +call s:h('ChristmasChocolaDiffDelete', s:red, s:bgdark) + +" }}}2 + +" }}} +" User Interface: + + +" Required as some plugins will overwrite +" call s:h('Normal', s:fg, g:christmas_chocola_colorterm || has('gui_running') ? s:bg : s:none ) +call s:h('StatusLine', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineNC', s:none, s:bglight) +call s:h('StatusLineTerm', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineTermNC', s:none, s:bglight) +call s:h('WildMenu', s:bg, s:constants_color, [s:attrs.bold]) +call s:h('CursorLine', s:none, s:subtle) + +" hi! link ColorColumn ChristmasChocolaBgDark +hi! link CursorColumn CursorLine +hi! link CursorLineNr ChristmasChocolaStringColor +hi! link DiffAdd ChristmasChocolaClassName +hi! link DiffAdded DiffAdd +hi! link DiffChange ChristmasChocolaDiffChange +hi! link DiffDelete ChristmasChocolaDiffDelete +hi! link DiffRemoved DiffDelete +hi! link DiffText ChristmasChocolaDiffText +hi! link Directory ChristmasChocolaConstantsBold +hi! link ErrorMsg ChristmasChocolaRedInverse +hi! link FoldColumn ChristmasChocolaSubtle +hi! link Folded ChristmasChocolaBoundary +hi! link IncSearch ChristmasChocolaParameterInverse +call s:h('LineNr', s:comment) +hi! link MoreMsg ChristmasChocolaFgBold +hi! link NonText ChristmasChocolaSubtle +" hi! link Pmenu ChristmasChocolaBgDark +" hi! link PmenuSbar ChristmasChocolaBgDark +hi! link PmenuSel ChristmasChocolaSelection +hi! link PmenuThumb ChristmasChocolaSelection +hi! link Question ChristmasChocolaFgBold +hi! link Search ChristmasChocolaSearch +call s:h('SignColumn', s:comment) +hi! link TabLine ChristmasChocolaBoundary +" hi! link TabLineFill ChristmasChocolaBgDarker +hi! link TabLineSel Normal +hi! link Title ChristmasChocolaClassNameBold +hi! link VertSplit ChristmasChocolaBoundary +hi! link Visual ChristmasChocolaSelection +hi! link VisualNOS Visual +hi! link WarningMsg ChristmasChocolaParameterInverse + +" }}} +" Syntax: + +" Required as some plugins will overwrite +call s:h('MatchParen', s:class_name, s:none, [s:attrs.underline]) +call s:h('Conceal', s:key_color, s:none) + +" Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace. +if has('nvim') + hi! link SpecialKey ChristmasChocolaRed + hi! link LspDiagnosticsUnderline ChristmasChocolaFgUnderline + hi! link LspDiagnosticsInformation ChristmasChocolaKeyColor + hi! link LspDiagnosticsHint ChristmasChocolaKeyColor + hi! link LspDiagnosticsError ChristmasChocolaError + hi! link LspDiagnosticsWarning ChristmasChocolaParameter + hi! link LspDiagnosticsUnderlineError ChristmasChocolaErrorLine + hi! link LspDiagnosticsUnderlineHint ChristmasChocolaInfoLine + hi! link LspDiagnosticsUnderlineInformation ChristmasChocolaInfoLine + hi! link LspDiagnosticsUnderlineWarning ChristmasChocolaWarnLine +else + hi! link SpecialKey ChristmasChocolaSubtle +endif + +hi! link Comment ChristmasChocolaComment +hi! link Underlined ChristmasChocolaFgUnderline +hi! link Todo ChristmasChocolaTodo + +hi! link Error ChristmasChocolaError +hi! link SpellBad ChristmasChocolaErrorLine +hi! link SpellLocal ChristmasChocolaWarnLine +hi! link SpellCap ChristmasChocolaInfoLine +hi! link SpellRare ChristmasChocolaInfoLine + +hi! link Constant ChristmasChocolaConstants +hi! link String ChristmasChocolaStringColor +hi! link Character ChristmasChocolaKeyword +hi! link Number Constant +hi! link Boolean Constant +hi! link Float Constant + +hi! link Identifier ChristmasChocolaFg +hi! link Function ChristmasChocolaClassName + +hi! link Statement ChristmasChocolaKeyword +hi! link Conditional ChristmasChocolaKeyword +hi! link Repeat ChristmasChocolaKeyword +hi! link Label ChristmasChocolaKeyword +hi! link Operator ChristmasChocolaKeyword +hi! link Keyword ChristmasChocolaKeyword +hi! link Exception ChristmasChocolaKeyword + +hi! link PreProc ChristmasChocolaKeyword +hi! link Include ChristmasChocolaKeyword +hi! link Define ChristmasChocolaKeyword +hi! link Macro ChristmasChocolaKeyword +hi! link PreCondit ChristmasChocolaKeyword +hi! link StorageClass ChristmasChocolaKeyword +hi! link Structure ChristmasChocolaKeyword +hi! link Typedef ChristmasChocolaKeyword + +hi! link Type ChristmasChocolaKeyColorItalic + +hi! link Delimiter ChristmasChocolaFg + +hi! link Special ChristmasChocolaKeyword +hi! link SpecialComment ChristmasChocolaKeyColorItalic +hi! link Tag ChristmasChocolaKeyColor +hi! link helpHyperTextJump ChristmasChocolaLink +hi! link helpCommand ChristmasChocolaConstants +hi! link helpExample ChristmasChocolaClassName +hi! link helpBacktick Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et: diff --git a/colors/essex.vim b/colors/essex.vim new file mode 100644 index 0000000..77a2a3f --- /dev/null +++ b/colors/essex.vim @@ -0,0 +1,300 @@ +" Configuration: + +if v:version > 580 + highlight clear + if exists('syntax_on') + syntax reset + endif +endif + +let g:colors_name = 'essex' + +if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256 + finish +endif + +" Palette: + +let s:fg = g:essex#palette.fg + +let s:bglighter = g:essex#palette.bglighter +let s:bglight = g:essex#palette.bglight +let s:bg = g:essex#palette.bg +let s:bgdark = g:essex#palette.bgdark +let s:bgdarker = g:essex#palette.bgdarker + +let s:comment = g:essex#palette.comment +let s:selection = g:essex#palette.selection +let s:subtle = g:essex#palette.subtle + +let s:key_color = g:essex#palette.key_color +let s:class_name = g:essex#palette.class_name +let s:parameter_color = g:essex#palette.parameter_color +let s:keyword_color = g:essex#palette.keyword_color +let s:constants_color = g:essex#palette.constants_color +let s:red = g:essex#palette.red +let s:string_color = g:essex#palette.string_color + +let s:none = ['NONE', 'NONE'] + +if has('nvim') + for s:i in range(16) + let g:terminal_color_{s:i} = g:essex#palette['color_' . s:i] + endfor +endif + +if has('terminal') + let g:terminal_ansi_colors = [] + for s:i in range(16) + call add(g:terminal_ansi_colors, g:essex#palette['color_' . s:i]) + endfor +endif + +" }}}2 +" User Configuration: + +if !exists('g:essex_bold') + let g:essex_bold = 1 +endif + +if !exists('g:essex_italic') + let g:essex_italic = 1 +endif + +if !exists('g:essex_underline') + let g:essex_underline = 1 +endif + +if !exists('g:essex_undercurl') && g:essex_underline != 0 + let g:essex_undercurl = 1 +endif + +if !exists('g:essex_inverse') + let g:essex_inverse = 1 +endif + +if !exists('g:essex_colorterm') + let g:essex_colorterm = 1 +endif + +"}}}2 +" Script Helpers: + +let s:attrs = { + \ 'bold': g:essex_bold == 1 ? 'bold' : 0, + \ 'italic': g:essex_italic == 1 ? 'italic' : 0, + \ 'underline': g:essex_underline == 1 ? 'underline' : 0, + \ 'undercurl': g:essex_undercurl == 1 ? 'undercurl' : 0, + \ 'inverse': g:essex_inverse == 1 ? 'inverse' : 0, + \} + +function! s:h(scope, fg, ...) " bg, attr_list, special + let l:fg = copy(a:fg) + let l:bg = get(a:, 1, ['NONE', 'NONE']) + + let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1') + let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE' + + " Falls back to coloring foreground group on terminals because + " nearly all do not support undercurl + let l:special = get(a:, 3, ['NONE', 'NONE']) + if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !has('gui_running') + let l:fg[0] = l:special[0] + let l:fg[1] = l:special[1] + endif + + let l:hl_string = [ + \ 'highlight', a:scope, + \ 'guifg=' . l:fg[0], 'ctermfg=' . l:fg[1], + \ 'guibg=' . l:bg[0], 'ctermbg=' . l:bg[1], + \ 'gui=' . l:attrs, 'cterm=' . l:attrs, + \ 'guisp=' . l:special[0], + \] + + execute join(l:hl_string, ' ') +endfunction + +"}}}2 +"Highlight Groups: + +call s:h('EssexBgLight', s:none, s:bglight) +call s:h('EssexBgLighter', s:none, s:bglighter) +call s:h('EssexBgDark', s:none, s:bgdark) +call s:h('EssexBgDarker', s:none, s:bgdarker) + +call s:h('EssexFg', s:fg) +call s:h('EssexFgUnderline', s:fg, s:none, [s:attrs.underline]) +call s:h('EssexFgBold', s:fg, s:none, [s:attrs.bold]) + +call s:h('EssexComment', s:comment) +call s:h('EssexCommentBold', s:comment, s:none, [s:attrs.bold]) + +call s:h('EssexSelection', s:none, s:selection) + +call s:h('EssexSubtle', s:subtle) + +call s:h('EssexKeyColor', s:key_color) +call s:h('EssexKeyColorItalic', s:key_color, s:none, [s:attrs.italic]) + +call s:h('EssexClassName', s:class_name) +call s:h('EssexClassNameBold', s:class_name, s:none, [s:attrs.bold]) +call s:h('EssexClassNameItalic', s:class_name, s:none, [s:attrs.italic]) +call s:h('EssexClassNameItalicUnderline', s:class_name, s:none, [s:attrs.italic, s:attrs.underline]) + +call s:h('EssexParameter', s:parameter_color) +call s:h('EssexParameterBold', s:parameter_color, s:none, [s:attrs.bold]) +call s:h('EssexParameterItalic', s:parameter_color, s:none, [s:attrs.italic]) +call s:h('EssexParameterBoldItalic', s:parameter_color, s:none, [s:attrs.bold, s:attrs.italic]) +call s:h('EssexParameterInverse', s:bg, s:parameter_color) + +call s:h('EssexKeyword', s:keyword_color) +call s:h('EssexKeywordItalic', s:keyword_color, s:none, [s:attrs.italic]) + +call s:h('EssexConstants', s:constants_color) +call s:h('EssexConstantsBold', s:constants_color, s:none, [s:attrs.bold]) +call s:h('EssexConstantsItalic', s:constants_color, s:none, [s:attrs.italic]) + +call s:h('EssexRed', s:red) +call s:h('EssexRedInverse', s:fg, s:red) + +call s:h('EssexStringColor', s:string_color) +call s:h('EssexStringColorItalic', s:string_color, s:none, [s:attrs.italic]) + +call s:h('EssexError', s:red, s:none, [], s:red) + +call s:h('EssexErrorLine', s:none, s:none, [s:attrs.undercurl], s:red) +call s:h('EssexWarnLine', s:none, s:none, [s:attrs.undercurl], s:parameter_color) +call s:h('EssexInfoLine', s:none, s:none, [s:attrs.undercurl], s:key_color) + +call s:h('EssexTodo', s:key_color, s:none, [s:attrs.bold, s:attrs.inverse]) +call s:h('EssexSearch', s:class_name, s:none, [s:attrs.inverse]) +call s:h('EssexBoundary', s:comment, s:bgdark) +call s:h('EssexLink', s:key_color, s:none, [s:attrs.underline]) + +call s:h('EssexDiffChange', s:parameter_color, s:none) +call s:h('EssexDiffText', s:bg, s:parameter_color) +call s:h('EssexDiffDelete', s:red, s:bgdark) + +" }}}2 + +" }}} +" User Interface: + + +" Required as some plugins will overwrite +" call s:h('Normal', s:fg, g:essex_colorterm || has('gui_running') ? s:bg : s:none ) +call s:h('StatusLine', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineNC', s:none, s:bglight) +call s:h('StatusLineTerm', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineTermNC', s:none, s:bglight) +call s:h('WildMenu', s:bg, s:constants_color, [s:attrs.bold]) +call s:h('CursorLine', s:none, s:subtle) + +" hi! link ColorColumn EssexBgDark +hi! link CursorColumn CursorLine +hi! link CursorLineNr EssexStringColor +hi! link DiffAdd EssexClassName +hi! link DiffAdded DiffAdd +hi! link DiffChange EssexDiffChange +hi! link DiffDelete EssexDiffDelete +hi! link DiffRemoved DiffDelete +hi! link DiffText EssexDiffText +hi! link Directory EssexConstantsBold +hi! link ErrorMsg EssexRedInverse +hi! link FoldColumn EssexSubtle +hi! link Folded EssexBoundary +hi! link IncSearch EssexParameterInverse +call s:h('LineNr', s:comment) +hi! link MoreMsg EssexFgBold +hi! link NonText EssexSubtle +" hi! link Pmenu EssexBgDark +" hi! link PmenuSbar EssexBgDark +hi! link PmenuSel EssexSelection +hi! link PmenuThumb EssexSelection +hi! link Question EssexFgBold +hi! link Search EssexSearch +call s:h('SignColumn', s:comment) +hi! link TabLine EssexBoundary +" hi! link TabLineFill EssexBgDarker +hi! link TabLineSel Normal +hi! link Title EssexClassNameBold +hi! link VertSplit EssexBoundary +hi! link Visual EssexSelection +hi! link VisualNOS Visual +hi! link WarningMsg EssexParameterInverse + +" }}} +" Syntax: + +" Required as some plugins will overwrite +call s:h('MatchParen', s:class_name, s:none, [s:attrs.underline]) +call s:h('Conceal', s:key_color, s:none) + +" Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace. +if has('nvim') + hi! link SpecialKey EssexRed + hi! link LspDiagnosticsUnderline EssexFgUnderline + hi! link LspDiagnosticsInformation EssexKeyColor + hi! link LspDiagnosticsHint EssexKeyColor + hi! link LspDiagnosticsError EssexError + hi! link LspDiagnosticsWarning EssexParameter + hi! link LspDiagnosticsUnderlineError EssexErrorLine + hi! link LspDiagnosticsUnderlineHint EssexInfoLine + hi! link LspDiagnosticsUnderlineInformation EssexInfoLine + hi! link LspDiagnosticsUnderlineWarning EssexWarnLine +else + hi! link SpecialKey EssexSubtle +endif + +hi! link Comment EssexComment +hi! link Underlined EssexFgUnderline +hi! link Todo EssexTodo + +hi! link Error EssexError +hi! link SpellBad EssexErrorLine +hi! link SpellLocal EssexWarnLine +hi! link SpellCap EssexInfoLine +hi! link SpellRare EssexInfoLine + +hi! link Constant EssexConstants +hi! link String EssexStringColor +hi! link Character EssexKeyword +hi! link Number Constant +hi! link Boolean Constant +hi! link Float Constant + +hi! link Identifier EssexFg +hi! link Function EssexClassName + +hi! link Statement EssexKeyword +hi! link Conditional EssexKeyword +hi! link Repeat EssexKeyword +hi! link Label EssexKeyword +hi! link Operator EssexKeyword +hi! link Keyword EssexKeyword +hi! link Exception EssexKeyword + +hi! link PreProc EssexKeyword +hi! link Include EssexKeyword +hi! link Define EssexKeyword +hi! link Macro EssexKeyword +hi! link PreCondit EssexKeyword +hi! link StorageClass EssexKeyword +hi! link Structure EssexKeyword +hi! link Typedef EssexKeyword + +hi! link Type EssexKeyColorItalic + +hi! link Delimiter EssexFg + +hi! link Special EssexKeyword +hi! link SpecialComment EssexKeyColorItalic +hi! link Tag EssexKeyColor +hi! link helpHyperTextJump EssexLink +hi! link helpCommand EssexConstants +hi! link helpExample EssexClassName +hi! link helpBacktick Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et: diff --git a/colors/nakano_yotsuba.vim b/colors/nakano_yotsuba.vim new file mode 100644 index 0000000..5df38bc --- /dev/null +++ b/colors/nakano_yotsuba.vim @@ -0,0 +1,300 @@ +" Configuration: + +if v:version > 580 + highlight clear + if exists('syntax_on') + syntax reset + endif +endif + +let g:colors_name = 'nakano_yotsuba' + +if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256 + finish +endif + +" Palette: + +let s:fg = g:nakano_yotsuba#palette.fg + +let s:bglighter = g:nakano_yotsuba#palette.bglighter +let s:bglight = g:nakano_yotsuba#palette.bglight +let s:bg = g:nakano_yotsuba#palette.bg +let s:bgdark = g:nakano_yotsuba#palette.bgdark +let s:bgdarker = g:nakano_yotsuba#palette.bgdarker + +let s:comment = g:nakano_yotsuba#palette.comment +let s:selection = g:nakano_yotsuba#palette.selection +let s:subtle = g:nakano_yotsuba#palette.subtle + +let s:key_color = g:nakano_yotsuba#palette.key_color +let s:class_name = g:nakano_yotsuba#palette.class_name +let s:parameter_color = g:nakano_yotsuba#palette.parameter_color +let s:keyword_color = g:nakano_yotsuba#palette.keyword_color +let s:constants_color = g:nakano_yotsuba#palette.constants_color +let s:red = g:nakano_yotsuba#palette.red +let s:string_color = g:nakano_yotsuba#palette.string_color + +let s:none = ['NONE', 'NONE'] + +if has('nvim') + for s:i in range(16) + let g:terminal_color_{s:i} = g:nakano_yotsuba#palette['color_' . s:i] + endfor +endif + +if has('terminal') + let g:terminal_ansi_colors = [] + for s:i in range(16) + call add(g:terminal_ansi_colors, g:nakano_yotsuba#palette['color_' . s:i]) + endfor +endif + +" }}}2 +" User Configuration: + +if !exists('g:nakano_yotsuba_bold') + let g:nakano_yotsuba_bold = 1 +endif + +if !exists('g:nakano_yotsuba_italic') + let g:nakano_yotsuba_italic = 1 +endif + +if !exists('g:nakano_yotsuba_underline') + let g:nakano_yotsuba_underline = 1 +endif + +if !exists('g:nakano_yotsuba_undercurl') && g:nakano_yotsuba_underline != 0 + let g:nakano_yotsuba_undercurl = 1 +endif + +if !exists('g:nakano_yotsuba_inverse') + let g:nakano_yotsuba_inverse = 1 +endif + +if !exists('g:nakano_yotsuba_colorterm') + let g:nakano_yotsuba_colorterm = 1 +endif + +"}}}2 +" Script Helpers: + +let s:attrs = { + \ 'bold': g:nakano_yotsuba_bold == 1 ? 'bold' : 0, + \ 'italic': g:nakano_yotsuba_italic == 1 ? 'italic' : 0, + \ 'underline': g:nakano_yotsuba_underline == 1 ? 'underline' : 0, + \ 'undercurl': g:nakano_yotsuba_undercurl == 1 ? 'undercurl' : 0, + \ 'inverse': g:nakano_yotsuba_inverse == 1 ? 'inverse' : 0, + \} + +function! s:h(scope, fg, ...) " bg, attr_list, special + let l:fg = copy(a:fg) + let l:bg = get(a:, 1, ['NONE', 'NONE']) + + let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1') + let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE' + + " Falls back to coloring foreground group on terminals because + " nearly all do not support undercurl + let l:special = get(a:, 3, ['NONE', 'NONE']) + if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !has('gui_running') + let l:fg[0] = l:special[0] + let l:fg[1] = l:special[1] + endif + + let l:hl_string = [ + \ 'highlight', a:scope, + \ 'guifg=' . l:fg[0], 'ctermfg=' . l:fg[1], + \ 'guibg=' . l:bg[0], 'ctermbg=' . l:bg[1], + \ 'gui=' . l:attrs, 'cterm=' . l:attrs, + \ 'guisp=' . l:special[0], + \] + + execute join(l:hl_string, ' ') +endfunction + +"}}}2 +"Highlight Groups: + +call s:h('NakanoYotsubaBgLight', s:none, s:bglight) +call s:h('NakanoYotsubaBgLighter', s:none, s:bglighter) +call s:h('NakanoYotsubaBgDark', s:none, s:bgdark) +call s:h('NakanoYotsubaBgDarker', s:none, s:bgdarker) + +call s:h('NakanoYotsubaFg', s:fg) +call s:h('NakanoYotsubaFgUnderline', s:fg, s:none, [s:attrs.underline]) +call s:h('NakanoYotsubaFgBold', s:fg, s:none, [s:attrs.bold]) + +call s:h('NakanoYotsubaComment', s:comment) +call s:h('NakanoYotsubaCommentBold', s:comment, s:none, [s:attrs.bold]) + +call s:h('NakanoYotsubaSelection', s:none, s:selection) + +call s:h('NakanoYotsubaSubtle', s:subtle) + +call s:h('NakanoYotsubaKeyColor', s:key_color) +call s:h('NakanoYotsubaKeyColorItalic', s:key_color, s:none, [s:attrs.italic]) + +call s:h('NakanoYotsubaClassName', s:class_name) +call s:h('NakanoYotsubaClassNameBold', s:class_name, s:none, [s:attrs.bold]) +call s:h('NakanoYotsubaClassNameItalic', s:class_name, s:none, [s:attrs.italic]) +call s:h('NakanoYotsubaClassNameItalicUnderline', s:class_name, s:none, [s:attrs.italic, s:attrs.underline]) + +call s:h('NakanoYotsubaParameter', s:parameter_color) +call s:h('NakanoYotsubaParameterBold', s:parameter_color, s:none, [s:attrs.bold]) +call s:h('NakanoYotsubaParameterItalic', s:parameter_color, s:none, [s:attrs.italic]) +call s:h('NakanoYotsubaParameterBoldItalic', s:parameter_color, s:none, [s:attrs.bold, s:attrs.italic]) +call s:h('NakanoYotsubaParameterInverse', s:bg, s:parameter_color) + +call s:h('NakanoYotsubaKeyword', s:keyword_color) +call s:h('NakanoYotsubaKeywordItalic', s:keyword_color, s:none, [s:attrs.italic]) + +call s:h('NakanoYotsubaConstants', s:constants_color) +call s:h('NakanoYotsubaConstantsBold', s:constants_color, s:none, [s:attrs.bold]) +call s:h('NakanoYotsubaConstantsItalic', s:constants_color, s:none, [s:attrs.italic]) + +call s:h('NakanoYotsubaRed', s:red) +call s:h('NakanoYotsubaRedInverse', s:fg, s:red) + +call s:h('NakanoYotsubaStringColor', s:string_color) +call s:h('NakanoYotsubaStringColorItalic', s:string_color, s:none, [s:attrs.italic]) + +call s:h('NakanoYotsubaError', s:red, s:none, [], s:red) + +call s:h('NakanoYotsubaErrorLine', s:none, s:none, [s:attrs.undercurl], s:red) +call s:h('NakanoYotsubaWarnLine', s:none, s:none, [s:attrs.undercurl], s:parameter_color) +call s:h('NakanoYotsubaInfoLine', s:none, s:none, [s:attrs.undercurl], s:key_color) + +call s:h('NakanoYotsubaTodo', s:key_color, s:none, [s:attrs.bold, s:attrs.inverse]) +call s:h('NakanoYotsubaSearch', s:class_name, s:none, [s:attrs.inverse]) +call s:h('NakanoYotsubaBoundary', s:comment, s:bgdark) +call s:h('NakanoYotsubaLink', s:key_color, s:none, [s:attrs.underline]) + +call s:h('NakanoYotsubaDiffChange', s:parameter_color, s:none) +call s:h('NakanoYotsubaDiffText', s:bg, s:parameter_color) +call s:h('NakanoYotsubaDiffDelete', s:red, s:bgdark) + +" }}}2 + +" }}} +" User Interface: + + +" Required as some plugins will overwrite +" call s:h('Normal', s:fg, g:nakano_yotsuba_colorterm || has('gui_running') ? s:bg : s:none ) +call s:h('StatusLine', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineNC', s:none, s:bglight) +call s:h('StatusLineTerm', s:none, s:bglighter, [s:attrs.bold]) +call s:h('StatusLineTermNC', s:none, s:bglight) +call s:h('WildMenu', s:bg, s:constants_color, [s:attrs.bold]) +call s:h('CursorLine', s:none, s:subtle) + +" hi! link ColorColumn NakanoYotsubaBgDark +hi! link CursorColumn CursorLine +hi! link CursorLineNr NakanoYotsubaStringColor +hi! link DiffAdd NakanoYotsubaClassName +hi! link DiffAdded DiffAdd +hi! link DiffChange NakanoYotsubaDiffChange +hi! link DiffDelete NakanoYotsubaDiffDelete +hi! link DiffRemoved DiffDelete +hi! link DiffText NakanoYotsubaDiffText +hi! link Directory NakanoYotsubaConstantsBold +hi! link ErrorMsg NakanoYotsubaRedInverse +hi! link FoldColumn NakanoYotsubaSubtle +hi! link Folded NakanoYotsubaBoundary +hi! link IncSearch NakanoYotsubaParameterInverse +call s:h('LineNr', s:comment) +hi! link MoreMsg NakanoYotsubaFgBold +hi! link NonText NakanoYotsubaSubtle +" hi! link Pmenu NakanoYotsubaBgDark +" hi! link PmenuSbar NakanoYotsubaBgDark +hi! link PmenuSel NakanoYotsubaSelection +hi! link PmenuThumb NakanoYotsubaSelection +hi! link Question NakanoYotsubaFgBold +hi! link Search NakanoYotsubaSearch +call s:h('SignColumn', s:comment) +hi! link TabLine NakanoYotsubaBoundary +" hi! link TabLineFill NakanoYotsubaBgDarker +hi! link TabLineSel Normal +hi! link Title NakanoYotsubaClassNameBold +hi! link VertSplit NakanoYotsubaBoundary +hi! link Visual NakanoYotsubaSelection +hi! link VisualNOS Visual +hi! link WarningMsg NakanoYotsubaParameterInverse + +" }}} +" Syntax: + +" Required as some plugins will overwrite +call s:h('MatchParen', s:class_name, s:none, [s:attrs.underline]) +call s:h('Conceal', s:key_color, s:none) + +" Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace. +if has('nvim') + hi! link SpecialKey NakanoYotsubaRed + hi! link LspDiagnosticsUnderline NakanoYotsubaFgUnderline + hi! link LspDiagnosticsInformation NakanoYotsubaKeyColor + hi! link LspDiagnosticsHint NakanoYotsubaKeyColor + hi! link LspDiagnosticsError NakanoYotsubaError + hi! link LspDiagnosticsWarning NakanoYotsubaParameter + hi! link LspDiagnosticsUnderlineError NakanoYotsubaErrorLine + hi! link LspDiagnosticsUnderlineHint NakanoYotsubaInfoLine + hi! link LspDiagnosticsUnderlineInformation NakanoYotsubaInfoLine + hi! link LspDiagnosticsUnderlineWarning NakanoYotsubaWarnLine +else + hi! link SpecialKey NakanoYotsubaSubtle +endif + +hi! link Comment NakanoYotsubaComment +hi! link Underlined NakanoYotsubaFgUnderline +hi! link Todo NakanoYotsubaTodo + +hi! link Error NakanoYotsubaError +hi! link SpellBad NakanoYotsubaErrorLine +hi! link SpellLocal NakanoYotsubaWarnLine +hi! link SpellCap NakanoYotsubaInfoLine +hi! link SpellRare NakanoYotsubaInfoLine + +hi! link Constant NakanoYotsubaConstants +hi! link String NakanoYotsubaStringColor +hi! link Character NakanoYotsubaKeyword +hi! link Number Constant +hi! link Boolean Constant +hi! link Float Constant + +hi! link Identifier NakanoYotsubaFg +hi! link Function NakanoYotsubaClassName + +hi! link Statement NakanoYotsubaKeyword +hi! link Conditional NakanoYotsubaKeyword +hi! link Repeat NakanoYotsubaKeyword +hi! link Label NakanoYotsubaKeyword +hi! link Operator NakanoYotsubaKeyword +hi! link Keyword NakanoYotsubaKeyword +hi! link Exception NakanoYotsubaKeyword + +hi! link PreProc NakanoYotsubaKeyword +hi! link Include NakanoYotsubaKeyword +hi! link Define NakanoYotsubaKeyword +hi! link Macro NakanoYotsubaKeyword +hi! link PreCondit NakanoYotsubaKeyword +hi! link StorageClass NakanoYotsubaKeyword +hi! link Structure NakanoYotsubaKeyword +hi! link Typedef NakanoYotsubaKeyword + +hi! link Type NakanoYotsubaKeyColorItalic + +hi! link Delimiter NakanoYotsubaFg + +hi! link Special NakanoYotsubaKeyword +hi! link SpecialComment NakanoYotsubaKeyColorItalic +hi! link Tag NakanoYotsubaKeyColor +hi! link helpHyperTextJump NakanoYotsubaLink +hi! link helpCommand NakanoYotsubaConstants +hi! link helpExample NakanoYotsubaClassName +hi! link helpBacktick Special + +"}}} + +" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et: diff --git a/package.json b/package.json index 4484aef..6642621 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "doki-theme-vim", - "version": "13.0.0", + "version": "14.0.0", "description": "Complementary vim color scheme for your full Otaku cli experience. Works well with the Doki Theme for Hyper.js", "main": "index.js", "repository": "git@github.com:/doki-theme/doki-theme-vim.git",