diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..dd3c9c3 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1 @@ +Hello! Please do not forget to provide a screenshot of the visual changes that your pull request makes! Thank you! :) diff --git a/README.md b/README.md index f49533d..3d84542 100644 --- a/README.md +++ b/README.md @@ -140,3 +140,12 @@ set guifont=Powerline_Consolas:h11 set renderoptions=type:directx,gamma:1.5,contrast:0.5,geom:1,renmode:5,taamode:1,level:0.5 ``` +### Are italics supported? +Italics in comments can be enabled by setting `g:codedark_italics = 1` _before_ +setting the colorscheme in your `.vimrc` like so: +``` +let g:codedark_italics = 1 +colorscheme codedark +``` +Please note that your terminal must support rendering italic fonts. + diff --git a/autoload/airline/themes/codedark.vim b/autoload/airline/themes/codedark.vim index ec393d8..ef8e7b5 100644 --- a/autoload/airline/themes/codedark.vim +++ b/autoload/airline/themes/codedark.vim @@ -38,7 +38,7 @@ elseif !exists("g:codedark_term256") let g:codedark_term256=0 endif -let s:cdFront = {'gui': '#FFFFFF', 'cterm': (g:codedark_term256 ? '15' : s:cterm07)} +let s:cdFront = {'gui': '#FFFFFF', 'cterm': (g:codedark_term256 ? '231' : s:cterm07)} let s:cdFrontGray = {'gui': '#D4D4D4', 'cterm': (g:codedark_term256 ? '188' : s:cterm05)} let s:cdBack = {'gui': '#1E1E1E', 'cterm': (g:codedark_term256 ? '234' : s:cterm00)} let s:cdSelection = {'gui': '#264F78', 'cterm': (g:codedark_term256 ? '24' : s:cterm01)} diff --git a/colors/codedark.vim b/colors/codedark.vim index 343eab5..e67827b 100644 --- a/colors/codedark.vim +++ b/colors/codedark.vim @@ -98,8 +98,8 @@ let s:cdDiffRedLightLight = {'gui': '#FB0101', 'cterm': s:cterm08, 'cterm256': ' let s:cdDiffGreenDark = {'gui': '#373D29', 'cterm': s:cterm0B, 'cterm256': '237'} let s:cdDiffGreenLight = {'gui': '#4B5632', 'cterm': s:cterm09, 'cterm256': '58'} -let s:cdSearchCurrent = {'gui': '#49545F', 'cterm': s:cterm09, 'cterm256': '236'} -let s:cdSearch = {'gui': '#4C4E50', 'cterm': s:cterm0A, 'cterm256': '236'} +let s:cdSearchCurrent = {'gui': '#4B5632', 'cterm': s:cterm09, 'cterm256': '58'} +let s:cdSearch = {'gui': '#264F78', 'cterm': s:cterm03, 'cterm256': '24'} " Syntax colors: @@ -107,13 +107,18 @@ if !exists("g:codedark_conservative") let g:codedark_conservative=0 endif +" Italicized comments +if !exists("g:codedark_italics") + let g:codedark_italics=0 +endif + let s:cdGray = {'gui': '#808080', 'cterm': s:cterm04, 'cterm256': '08'} let s:cdViolet = {'gui': '#646695', 'cterm': s:cterm04, 'cterm256': '60'} let s:cdBlue = {'gui': '#569CD6', 'cterm': s:cterm0D, 'cterm256': '75'} let s:cdDarkBlue = {'gui': '#223E55', 'cterm': s:cterm0D, 'cterm256': '73'} let s:cdLightBlue = {'gui': '#9CDCFE', 'cterm': s:cterm0C, 'cterm256': '117'} if g:codedark_conservative | let s:cdLightBlue = s:cdFront | endif -let s:cdGreen = {'gui': '#608B4E', 'cterm': s:cterm0B, 'cterm256': '65'} +let s:cdGreen = {'gui': '#6A9955', 'cterm': s:cterm0B, 'cterm256': '65'} let s:cdBlueGreen = {'gui': '#4EC9B0', 'cterm': s:cterm0F, 'cterm256': '43'} let s:cdLightGreen = {'gui': '#B5CEA8', 'cterm': s:cterm09, 'cterm256': '151'} let s:cdRed = {'gui': '#F44747', 'cterm': s:cterm08, 'cterm256': '203'} @@ -135,7 +140,7 @@ call hi('Cursor', s:cdCursorDark, s:cdCursorLight, 'none', {}) call hi('CursorLine', {}, s:cdCursorDarkDark, 'none', {}) call hi('CursorColumn', {}, s:cdCursorDarkDark, 'none', {}) call hi('Directory', s:cdBlue, s:cdBack, 'none', {}) -call hi('DiffAdd', {}, s:cdDiffGreenDark, 'none', {}) +call hi('DiffAdd', {}, s:cdDiffGreenLight, 'none', {}) call hi('DiffChange', {}, s:cdDiffRedDark, 'none', {}) call hi('DiffDelete', {}, s:cdDiffRedLight, 'none', {}) call hi('DiffText', {}, s:cdDiffRedLight, 'none', {}) @@ -159,9 +164,6 @@ call hi('PmenuThumb', {}, s:cdPopupFront, 'none', {}) call hi('Question', s:cdBlue, s:cdBack, 'none', {}) call hi('Search', s:cdNone, s:cdSearch, 'none', {}) call hi('SpecialKey', s:cdBlue, s:cdNone, 'none', {}) -call hi('SpellBad', s:cdNone, s:cdNone, 'undercurl', {}) -call hi('SpellCap', s:cdNone, s:cdNone, 'undercurl', {}) -call hi('SpellLocal', s:cdNone, s:cdNone, 'undercurl', {}) call hi('StatusLine', s:cdFront, s:cdLeftMid, 'none', {}) call hi('StatusLineNC', s:cdFront, s:cdLeftDark, 'none', {}) call hi('TabLine', s:cdFront, s:cdTabOther, 'none', {}) @@ -173,7 +175,12 @@ call hi('VisualNOS', s:cdNone, s:cdSelection, 'none', {}) call hi('WarningMsg', s:cdOrange, s:cdBack, 'none', {}) call hi('WildMenu', s:cdNone, s:cdSelection, 'none', {}) -call hi('Comment', s:cdGreen, {}, 'none', {}) +" Legacy groups for official git.vim and diff.vim syntax +hi! link diffAdded DiffAdd +hi! link diffChanged DiffChange +hi! link diffRemoved DiffDelete + +if g:codedark_italics | call hi('Comment', s:cdGreen, {}, 'italic', {}) | else | call hi('Comment', s:cdGreen, {}, 'none', {}) | endif call hi('Constant', s:cdBlue, {}, 'none', {}) call hi('String', s:cdOrange, {}, 'none', {}) @@ -204,11 +211,11 @@ call hi('StorageClass', s:cdBlue, {}, 'none', {}) call hi('Structure', s:cdBlue, {}, 'none', {}) call hi('Typedef', s:cdBlue, {}, 'none', {}) -call hi('Special', s:cdFront, {}, 'none', {}) +call hi('Special', s:cdYellowOrange, {}, 'none', {}) call hi('SpecialChar', s:cdFront, {}, 'none', {}) call hi('Tag', s:cdFront, {}, 'none', {}) call hi('Delimiter', s:cdFront, {}, 'none', {}) -call hi('SpecialComment', s:cdGreen, {}, 'none', {}) +if g:codedark_italics | call hi('SpecialComment', s:cdGreen, {}, 'italic', {}) | else | call hi('SpecialComment', s:cdGreen, {}, 'none', {}) | endif call hi('Debug', s:cdFront, {}, 'none', {}) call hi('Underlined', s:cdNone, {}, 'underline', {}) @@ -220,6 +227,69 @@ call hi('Error', s:cdRed, s:cdBack, 'undercurl', s:cdRed) call hi('Todo', s:cdNone, s:cdLeftMid, 'none', {}) +call hi('SpellBad', s:cdRed, s:cdBack, 'undercurl', s:cdRed) +call hi('SpellCap', s:cdRed, s:cdBack, 'undercurl', s:cdRed) +call hi('SpellRare', s:cdRed, s:cdBack, 'undercurl', s:cdRed) +call hi('SpellLocal', s:cdRed, s:cdBack, 'undercurl', s:cdRed) + + +" Neovim Treesitter: +call hi('TSError', s:cdRed, {}, 'none', {}) +call hi('TSPunctDelimiter', s:cdFront, {}, 'none', {}) +call hi('TSPunctBracket', s:cdFront, {}, 'none', {}) +call hi('TSPunctSpecial', s:cdFront, {}, 'none', {}) +" Constant +call hi('TSConstant', s:cdYellow, {}, 'none', {}) +call hi('TSConstBuiltin', s:cdBlue, {}, 'none', {}) +call hi('TSConstMacro', s:cdBlueGreen, {}, 'none', {}) +call hi('TSStringRegex', s:cdOrange, {}, 'none', {}) +call hi('TSString', s:cdOrange, {}, 'none', {}) +call hi('TSStringEscape', s:cdYellowOrange, {}, 'none', {}) +call hi('TSCharacter', s:cdOrange, {}, 'none', {}) +call hi('TSNumber', s:cdLightGreen, {}, 'none', {}) +call hi('TSBoolean', s:cdBlue, {}, 'none', {}) +call hi('TSFloat', s:cdLightGreen, {}, 'none', {}) +call hi('TSAnnotation', s:cdYellow, {}, 'none', {}) +call hi('TSAttribute', s:cdBlueGreen, {}, 'none', {}) +call hi('TSNamespace', s:cdBlueGreen, {}, 'none', {}) +" Functions +call hi('TSFuncBuiltin', s:cdYellow, {}, 'none', {}) +call hi('TSFunction', s:cdYellow, {}, 'none', {}) +call hi('TSFuncMacro', s:cdYellow, {}, 'none', {}) +call hi('TSParameter', s:cdLightBlue, {}, 'none', {}) +call hi('TSParameterReference', s:cdLightBlue, {}, 'none', {}) +call hi('TSMethod', s:cdYellow, {}, 'none', {}) +call hi('TSField', s:cdLightBlue, {}, 'none', {}) +call hi('TSProperty', s:cdLightBlue, {}, 'none', {}) +call hi('TSConstructor', s:cdBlueGreen, {}, 'none', {}) +" Keywords +call hi('TSConditional', s:cdPink, {}, 'none', {}) +call hi('TSRepeat', s:cdPink, {}, 'none', {}) +call hi('TSLabel', s:cdLightBlue, {}, 'none', {}) +call hi('TSKeyword', s:cdBlue, {}, 'none', {}) +call hi('TSKeywordFunction', s:cdBlue, {}, 'none', {}) +call hi('TSKeywordOperator', s:cdBlue, {}, 'none', {}) +call hi('TSOperator', s:cdFront, {}, 'none', {}) +call hi('TSException', s:cdPink, {}, 'none', {}) +call hi('TSType', s:cdBlueGreen, {}, 'none', {}) +call hi('TSTypeBuiltin', s:cdBlue, {}, 'none', {}) +call hi('TSStructure', s:cdLightBlue, {}, 'none', {}) +call hi('TSInclude', s:cdPink, {}, 'none', {}) +" Variable +call hi('TSVariable', s:cdLightBlue, {}, 'none', {}) +call hi('TSVariableBuiltin', s:cdLightBlue, {}, 'none', {}) +" Text +call hi('TSText', s:cdYellowOrange, {}, 'none', {}) +call hi('TSStrong', s:cdYellowOrange, {}, 'none', {}) +call hi('TSEmphasis', s:cdYellowOrange, {}, 'none', {}) +call hi('TSUnderline', s:cdYellowOrange, {}, 'none', {}) +call hi('TSTitle', s:cdYellowOrange, {}, 'none', {}) +call hi('TSLiteral', s:cdYellowOrange, {}, 'none', {}) +call hi('TSURI', s:cdYellowOrange, {}, 'none', {}) +" Tags +call hi('TSTag', s:cdBlue, {}, 'none', {}) +call hi('TSTagDelimiter', s:cdGray, {}, 'none', {}) + " Markdown: call hi('markdownBold', s:cdBlue, {}, 'bold', {}) call hi('markdownCode', s:cdOrange, {}, 'none', {}) @@ -232,6 +302,29 @@ call hi('markdownUrl', s:cdLightBlue, {}, 'underline', {}) call hi('markdownLinkText', s:cdOrange, {}, 'none', {}) call hi('markdownEscape', s:cdYellowOrange, {}, 'none', {}) +" Asciidoc (for default syntax highlighting) +call hi("asciidocAttributeEntry", s:cdYellowOrange, {}, 'none', {}) +call hi("asciidocAttributeList", s:cdPink, {}, 'none', {}) +call hi("asciidocAttributeRef", s:cdYellowOrange, {}, 'none', {}) +call hi("asciidocHLabel", s:cdBlue, {}, 'bold', {}) +call hi("asciidocListingBlock", s:cdOrange, {}, 'none', {}) +call hi("asciidocMacroAttributes", s:cdYellowOrange, {}, 'none', {}) +call hi("asciidocOneLineTitle", s:cdBlue, {}, 'bold', {}) +call hi("asciidocPassthroughBlock", s:cdBlue, {}, 'none', {}) +call hi("asciidocQuotedMonospaced", s:cdOrange, {}, 'none', {}) +call hi("asciidocTriplePlusPassthrough", s:cdYellow, {}, 'none', {}) +call hi("asciidocMacro", s:cdPink, {}, 'none', {}) +call hi("asciidocAdmonition", s:cdOrange, {}, 'none', {}) +call hi("asciidocQuotedEmphasized", s:cdBlue, {}, 'italic', {}) +call hi("asciidocQuotedEmphasized2", s:cdBlue, {}, 'italic', {}) +call hi("asciidocQuotedEmphasizedItalic", s:cdBlue, {}, 'italic', {}) +hi! link asciidocBackslash Keyword +hi! link asciidocQuotedBold markdownBold +hi! link asciidocQuotedMonospaced2 asciidocQuotedMonospaced +hi! link asciidocQuotedUnconstrainedBold asciidocQuotedBold +hi! link asciidocQuotedUnconstrainedEmphasized asciidocQuotedEmphasized +hi! link asciidocURL markdownUrl + " JSON: call hi('jsonKeyword', s:cdLightBlue, {}, 'none', {}) call hi('jsonEscape', s:cdYellowOrange, {}, 'none', {}) @@ -245,6 +338,16 @@ call hi('htmlTagName', s:cdBlue, {}, 'none', {}) call hi('htmlSpecialTagName', s:cdBlue, {}, 'none', {}) call hi('htmlArg', s:cdLightBlue, {}, 'none', {}) +" PHP: +call hi('phpStaticClasses', s:cdBlueGreen, {}, 'none', {}) +call hi('phpMethod', s:cdYellow, {}, 'none', {}) +call hi('phpClass', s:cdBlueGreen, {}, 'none', {}) +call hi('phpFunction', s:cdYellow, {}, 'none', {}) +call hi('phpInclude', s:cdBlue, {}, 'none', {}) +call hi('phpUseClass', s:cdBlueGreen, {}, 'none', {}) +call hi('phpRegion', s:cdBlueGreen, {}, 'none', {}) +call hi('phpMethodsVar', s:cdLightBlue, {}, 'none', {}) + " CSS: call hi('cssBraces', s:cdFront, {}, 'none', {}) call hi('cssInclude', s:cdPink, {}, 'none', {}) @@ -265,10 +368,13 @@ call hi('cssVendor', s:cdOrange, {}, 'none', {}) call hi('cssValueNumber', s:cdOrange, {}, 'none', {}) call hi('cssValueLength', s:cdOrange, {}, 'none', {}) call hi('cssUnitDecorators', s:cdOrange, {}, 'none', {}) +call hi('cssStyle', s:cdLightBlue, {}, 'none', {}) +call hi('cssImportant', s:cdBlue, {}, 'none', {}) " JavaScript: call hi('jsVariableDef', s:cdLightBlue, {}, 'none', {}) call hi('jsFuncArgs', s:cdLightBlue, {}, 'none', {}) +call hi('jsFuncBlock', s:cdLightBlue, {}, 'none', {}) call hi('jsRegexpString', s:cdLightRed, {}, 'none', {}) call hi('jsThis', s:cdBlue, {}, 'none', {}) call hi('jsOperatorKeyword', s:cdBlue, {}, 'none', {}) @@ -284,6 +390,10 @@ call hi('jsFuncCall', s:cdYellow, {}, 'none', {}) call hi('jsObjectValue', s:cdLightBlue, {}, 'none', {}) call hi('jsParen', s:cdLightBlue, {}, 'none', {}) call hi('jsObjectProp', s:cdLightBlue, {}, 'none', {}) +call hi('jsIfElseBlock', s:cdLightBlue, {}, 'none', {}) +call hi('jsParenIfElse', s:cdLightBlue, {}, 'none', {}) +call hi('jsSpreadOperator', s:cdLightBlue, {}, 'none', {}) +call hi('jsSpreadExpression', s:cdLightBlue, {}, 'none', {}) " Typescript: call hi('typescriptLabel', s:cdLightBlue, {}, 'none', {}) @@ -432,6 +542,16 @@ call hi('luaFuncKeyword', s:cdPink, {}, 'none', {}) call hi('luaLocal', s:cdPink, {}, 'none', {}) call hi('luaBuiltIn', s:cdBlue, {}, 'none', {}) + +" SH: +call hi('shDeref', s:cdLightBlue, {}, 'none', {}) +call hi('shVariable', s:cdLightBlue, {}, 'none', {}) + +" SQL: +call hi('sqlKeyword', s:cdPink, {}, 'none', {}) +call hi('sqlFunction', s:cdYellowOrange, {}, 'none', {}) +call hi('sqlOperator', s:cdPink, {}, 'none', {}) + " YAML: call hi('yamlKey', s:cdBlue, {}, 'none', {}) call hi('yamlConstant', s:cdBlue, {}, 'none', {}) @@ -476,4 +596,19 @@ call hi('LspCxxHlSymTypeParameter', s:cdBlueGreen, {}, 'none', {}) call hi('LspCxxHlSymConcept', s:cdBlueGreen, {}, 'italic', {}) call hi('LspCxxHlSymNamespace', s:cdSilver, {}, 'none', {}) +" Coc Explorer: call hi('CocHighlightText', {}, s:cdSelection, 'none', {}) +call hi('CocExplorerIndentLine', s:cdCursorDark, {}, 'none', {}) + +" nvim-cmp +call hi('CmpItemAbbrDeprecated', s:cdGray, {}, 'strikethrough', {}) +call hi('CmpItemAbbrMatch', s:cdBlue, {}, 'none', {}) +call hi('CmpItemAbbrMatchFuzzy', s:cdBlue, {}, 'none', {}) +call hi('CmpItemKindVariable', s:cdLightBlue, {}, 'none', {}) +call hi('CmpItemKindInterface', s:cdLightBlue, {}, 'none', {}) +call hi('CmpItemKindText', s:cdLightBlue, {}, 'none', {}) +call hi('CmpItemKindFunction', s:cdPink, {}, 'none', {}) +call hi('CmpItemKindMethod ', s:cdPink, {}, 'none', {}) +call hi('CmpItemKindKeyword', s:cdFront, {}, 'none', {}) +call hi('CmpItemKindProperty', s:cdFront, {}, 'none', {}) +call hi('CmpItemKindUnit', s:cdFront, {}, 'none', {})