From cbc1447de47e1cfae2315ad39af980a93c8a2bec Mon Sep 17 00:00:00 2001 From: tiagovla Date: Thu, 22 Apr 2021 21:40:59 -0300 Subject: [PATCH] Update highlights, terminal and configs --- README.md | 15 +++-- lua/tokyodark/config.lua | 18 ++++-- lua/tokyodark/highlights.lua | 117 +++++++++++++++++++++++++++-------- lua/tokyodark/palette.lua | 10 +-- lua/tokyodark/terminal.lua | 4 +- 5 files changed, 117 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index 7b97ef2..2166fa9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ### About -A minimal and clean dark theme written in lua for neovim. +A clean dark theme written in lua for neovim. ### Features - Support for numerous plugins @@ -26,9 +26,9 @@ Plug 'tiagovla/tokyodark.nvim' **Note:** The configuration options should be placed before `colorscheme tokyodark` . -- `tokyonight_transparent_background`: Set to enable transparent background. -- `tokyonight_enable_italic_comment`: Set to enable italic in `Comment` . -- `tokyonight_enable_italic`: Set to italicize keywords. This option is +- `tokyodark_transparent_background`: Set to enable transparent background. +- `tokyodark_enable_italic_comment`: Set to enable italic in `Comment` . +- `tokyodark_enable_italic`: Set to italicize keywords. This option is designed to use with fonts that support italic styles, for example [Fira Code, MonoLisa, Dank Mono](https://www.nerdfonts.com/). - `tokyodark_color_gamma`: Change to adjust the brightness of the theme. (Darker < 1.0 < Lighter). @@ -40,7 +40,7 @@ Plug 'tiagovla/tokyodark.nvim' vim.g.tokyodark_transparent_background = false vim.g.tokyodark_enable_italic_comment = true vim.g.tokyodark_enable_italic = true -vim.g.tokyodark_color_gamma = 1.0 +vim.g.tokyodark_color_gamma = "1.0" vim.cmd("colorscheme tokyodark") ``` @@ -49,11 +49,10 @@ vim.cmd("colorscheme tokyodark") let g:tokyodark_transparent_background = 0 let g:tokyodark_enable_italic_comment = 1 let g:tokyodark_enable_italic = 1 -let g:tokyodark_color_gamma = 1.0 +let g:tokyodark_color_gamma = "1.0" colorscheme tokyodark ``` - -#### Inspiration +### Inspiration * [tokyonight-vim](https://github.com/ghifarit53/tokyonight-vim) * [tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme) diff --git a/lua/tokyodark/config.lua b/lua/tokyodark/config.lua index 35f1449..0f837d8 100644 --- a/lua/tokyodark/config.lua +++ b/lua/tokyodark/config.lua @@ -1,8 +1,14 @@ -local cfg = { - transparent_background = true, - enable_italic = true, - enable_italic_comment = true, - gamma = 1.0 +local function get(setting, default) + local key = "tokyodark_" .. setting + if vim.g[key] == nil then return default end + return vim.g[key] +end + +local config = { + bg = get("transparent_background", false), + italic = get("enable_italic", true), + italic_comment = get("enable_italic_comment", true), + gamma = get("color_gamma", "1.0") } -return cfg +return config diff --git a/lua/tokyodark/highlights.lua b/lua/tokyodark/highlights.lua index d3a8dff..9af7e24 100644 --- a/lua/tokyodark/highlights.lua +++ b/lua/tokyodark/highlights.lua @@ -17,26 +17,26 @@ end hl.predef = { Fg = {fg = p.fg}, - Gray = {fg = p.gray}, + Grey = {fg = p.grey}, Red = {fg = p.red}, Orange = {fg = p.orange}, Yellow = {fg = p.yellow}, Green = {fg = p.green}, Blue = {fg = p.blue}, Purple = {fg = p.purple}, - BlueItalic = {fg = p.blue, italic = cfg.enable_italic}, - RedItalic = {fg = p.red, italic = cfg.enable_italic}, - GreenItalic = {fg = p.green, italic = cfg.enable_italic}, - OrangeItalic = {fg = p.orange, italic = cfg.enable_italic} + BlueItalic = {fg = p.blue, italic = cfg.italic}, + RedItalic = {fg = p.red, italic = cfg.italic}, + GreenItalic = {fg = p.green, italic = cfg.italic}, + OrangeItalic = {fg = p.orange, italic = cfg.italic} } hl.common = { - Normal = {fg = p.fg, bg = cfg.transparent_background and p.none or p.bg0}, - Terminal = {fg = p.fg, bg = cfg.transparent_background and p.none or p.bg0}, - EndOfBuffer = {fg = p.bg2, bg = cfg.transparent_background and p.none or p.bg0}, - FoldColumn = {fg = p.fg, bg = cfg.transparent_background and p.none or p.bg1}, - Folded = {fg = p.fg, bg = cfg.transparent_background and p.none or p.bg1}, - SignColumn = {fg = p.fg, bg = cfg.transparent_background and p.none or p.bg0}, + Normal = {fg = p.fg, bg = cfg.bg and p.none or p.bg0}, + Terminal = {fg = p.fg, bg = cfg.bg and p.none or p.bg0}, + EndOfBuffer = {fg = p.bg2, bg = cfg.bg and p.none or p.bg0}, + FoldColumn = {fg = p.fg, bg = cfg.bg and p.none or p.bg1}, + Folded = {fg = p.fg, bg = cfg.bg and p.none or p.bg1}, + SignColumn = {fg = p.fg, bg = cfg.bg and p.none or p.bg0}, ToolbarLine = {fg = p.fg}, Cursor = {reverse = true}, vCursor = {reverse = true}, @@ -56,7 +56,6 @@ hl.common = { Directory = {fg = p.green}, ErrorMsg = {fg = p.red, bold = true, underline = true}, WarningMsg = {fg = p.yellow, bold = true}, - ModeMsg = {fg = p.fg, bold = true}, MoreMsg = {fg = p.blue, bold = true}, IncSearch = {fg = p.bg0, bg = p.bg_red}, Search = {fg = p.bg0, bg = p.bg_green}, @@ -74,16 +73,16 @@ hl.common = { SpellCap = {fg = p.yellow, underline = true, sp = p.yellow}, SpellLocal = {fg = p.blue, underline = true, sp = p.blue}, SpellRare = {fg = p.purple, underline = true, sp = p.purple}, - StatusLine = {fg = p.fg, bg = p.bg3}, - StatusLineTerm = {fg = p.fg, bg = p.bg3}, + StatusLine = {fg = p.fg, bg = p.bg2}, + StatusLineTerm = {fg = p.fg, bg = p.bg2}, StatusLineNC = {fg = p.grey, bg = p.bg1}, StatusLineTermNC = {fg = p.grey, bg = p.bg1}, TabLine = {fg = p.fg, bg = p.bg4}, TabLineFill = {fg = p.grey, bg = p.bg1}, TabLineSel = {fg = p.bg0, bg = p.bg_red}, - VertSplit = {fg = p.black}, - Visual = {fg = p.none, bg = p.bg3}, - VisualNOS = {fg = p.none, bg = p.bg3, underline = true}, + VertSplit = {fg = p.bg5}, + Visual = {bg = p.bg1}, + VisualNOS = {fg = p.none, bg = p.bg2, underline = true}, QuickFixLine = {fg = p.blue, underline = true}, Debug = {fg = p.yellow}, debugPC = {fg = p.bg0, bg = p.green}, @@ -122,25 +121,89 @@ hl.syntax = { Title = hl.predef.Yellow, Tag = hl.predef.Orange, Delimiter = hl.predef.Fg, - Comment = {fg = p.bg4, italic = cfg.enable_italic_comment}, - SpecialComment = {fg = p.bg4, italic = cfg.enable_italic_comment}, - Todo = {fg = p.blue, italic = cfg.enable_italic_comment} + Comment = {fg = p.bg4, italic = cfg.italic_comment}, + SpecialComment = {fg = p.bg4, italic = cfg.italic_comment}, + Todo = {fg = p.blue, italic = cfg.italic_comment} } hl.plugins.lsp = { - LspCxxHlSkippedRegion = hl.predef.Gray, - LspCxxHlSkippedRegionBeginEnd = hl.predef.Red, LspCxxHlGroupEnumConstant = hl.predef.Orange, - LspCxxHlGroupNamespace = hl.predef.Blue, LspCxxHlGroupMemberVariable = hl.predef.Orange, + LspCxxHlGroupNamespace = hl.predef.Blue, + LspCxxHlSkippedRegion = hl.predef.Grey, + LspCxxHlSkippedRegionBeginEnd = hl.predef.Red, LspDiagnosticsDefaultError = {fg = u.color_gamma(p.red, 0.5)}, - LspDiagnosticsDefaultWarning = {fg = u.color_gamma(p.yellow, 0.5)}, - LspDiagnosticsDefaultInformation = {fg = u.color_gamma(p.blue, 0.5)}, LspDiagnosticsDefaultHint = {fg = u.color_gamma(p.purple, 0.5)}, + LspDiagnosticsDefaultInformation = {fg = u.color_gamma(p.blue, 0.5)}, + LspDiagnosticsDefaultWarning = {fg = u.color_gamma(p.yellow, 0.5)}, LspDiagnosticsUnderlineError = {underline = true, sp = u.color_gamma(p.red, 0.5)}, - LspDiagnosticsUnderlineWarning = {underline = true, sp = u.color_gamma(p.yellow, 0.5)}, + LspDiagnosticsUnderlineHint = {underline = true, sp = u.color_gamma(p.purple, 0.5)}, LspDiagnosticsUnderlineInformation = {underline = true, sp = u.color_gamma(p.blue, 0.5)}, - LspDiagnosticsUnderlineHint = {underline = true, sp = u.color_gamma(p.purple, 0.5)} + LspDiagnosticsUnderlineWarning = {underline = true, sp = u.color_gamma(p.yellow, 0.5)} +} + +hl.plugins.whichkey = { + WhichKey = hl.predef.Red, + WhichKeyDesc = hl.predef.Blue, + WhichKeyGroup = hl.predef.Orange, + WhichKeySeperator = hl.predef.Green +} + +hl.plugins.gitgutter = { + GitGutterAdd = {fg = p.diff_green}, + GitGutterChange = {fg = p.diff_blue}, + GitGutterDelete = {fg = p.diff_red} +} + +hl.plugins.gitsigns = { + GitSignsAdd = hl.predef.Green, + GitSignsAddLn = hl.predef.Green, + GitSignsAddNr = hl.predef.Green, + GitSignsChange = hl.predef.Blue, + GitSignsChangeLn = hl.predef.Blue, + GitSignsChangeNr = hl.predef.Blue, + GitSignsDelete = hl.predef.Red, + GitSignsDeleteLn = hl.predef.Red, + GitSignsDeleteNr = hl.predef.Red +} + +hl.langs.markdown = { + markdownBlockquote = hl.predef.Grey, + markdownBold = {fg = p.none, bold = true}, + markdownBoldDelimiter = hl.predef.Grey, + markdownCode = hl.predef.Yellow, + markdownCodeBlock = hl.predef.Yellow, + markdownCodeDelimiter = hl.predef.Green, + markdownH1 = {fg = p.red, bold = true}, + markdownH2 = {fg = p.red, bold = true}, + markdownH3 = {fg = p.red, bold = true}, + markdownH4 = {fg = p.red, bold = true}, + markdownH5 = {fg = p.red, bold = true}, + markdownH6 = {fg = p.red, bold = true}, + markdownHeadingDelimiter = hl.predef.Grey, + markdownHeadingRule = hl.predef.Grey, + markdownId = hl.predef.Yellow, + markdownIdDeclaration = hl.predef.Red, + markdownItalic = {fg = p.none, italic = true}, + markdownItalicDelimiter = {fg = p.grey, italic = true}, + markdownLinkDelimiter = hl.predef.Grey, + markdownLinkText = hl.predef.Red, + markdownLinkTextDelimiter = hl.predef.Grey, + markdownListMarker = hl.predef.Red, + markdownOrderedListMarker = hl.predef.Red, + markdownRule = hl.predef.Purple, + markdownUrl = {fg = p.blue, underline = true}, + markdownUrlDelimiter = hl.predef.Grey, + markdownUrlTitleDelimiter = hl.predef.Green +} + +hl.langs.scala = { + scalaNameDefinition = hl.predef.Fg, + scalaInterpolationBoundary = hl.predef.Purple, + scalaInterpolation = hl.predef.Purple, + scalaTypeOperator = hl.predef.Red, + scalaOperator = hl.predef.Red, + scalaKeywordModifier = hl.predef.Red } function M.setup() diff --git a/lua/tokyodark/palette.lua b/lua/tokyodark/palette.lua index 21d6169..d60740d 100644 --- a/lua/tokyodark/palette.lua +++ b/lua/tokyodark/palette.lua @@ -8,11 +8,12 @@ local colors = { bg2 = '#212234', bg3 = '#392B41', bg4 = '#4A5057', - bg_red = '#F6718A', + bg5 = '#282c34', + bg_red = '#FE6D85', + bg_green = '#98C379', + bg_blue = '#9FBBF3', diff_red = '#773440', - bg_green = '#B0E973', diff_green = '#587738', - bg_blue = '#749DF6', diff_blue = '#354A77', fg = '#A0A8CD', red = '#EE6D85', @@ -20,8 +21,9 @@ local colors = { yellow = '#D7A65F', green = '#95C561', blue = '#7199EE', + cyan = '#38A89D', purple = '#A485DD', - grey = '#3b4261', + grey = '#4A5057', none = 'NONE' } local function gamma_correction(colors) diff --git a/lua/tokyodark/terminal.lua b/lua/tokyodark/terminal.lua index 672a945..f991d76 100644 --- a/lua/tokyodark/terminal.lua +++ b/lua/tokyodark/terminal.lua @@ -8,7 +8,7 @@ function M.setup() vim.g.terminal_color_3 = p.yellow vim.g.terminal_color_4 = p.blue vim.g.terminal_color_5 = p.purple - vim.g.terminal_color_6 = p.orange + vim.g.terminal_color_6 = p.cyan vim.g.terminal_color_7 = p.fg vim.g.terminal_color_8 = p.black vim.g.terminal_color_9 = p.red @@ -16,7 +16,7 @@ function M.setup() vim.g.terminal_color_11 = p.yellow vim.g.terminal_color_12 = p.blue vim.g.terminal_color_13 = p.purple - vim.g.terminal_color_14 = p.orange + vim.g.terminal_color_14 = p.cyan vim.g.terminal_color_15 = p.fg end