diff --git a/README.md b/README.md index 2a0f64b..b789756 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,7 @@ There is no need to call setup if you are ok with the defaults. -- Default options: require('kanso').setup({ bold = true, -- enable bold fonts + italics = true, -- enable italics compile = false, -- enable compiling the colorscheme undercurl = true, -- enable undercurls commentStyle = { italic = true }, @@ -82,7 +83,6 @@ require('kanso').setup({ keywordStyle = { italic = true}, statementStyle = {}, typeStyle = {}, - disableItalics = false, transparent = false, -- do not set background color dimInactive = false, -- dim inactive window `:h hl-NormalNC` terminalColors = true, -- define vim.g.terminal_color_{0,17} @@ -235,7 +235,7 @@ require('kanso').setup({ overrides = function(colors) return { -- Assign a static color to strings - String = { fg = colors.palette.carpYellow, italic = not config.disableItalics }, + String = { fg = colors.palette.carpYellow, italic = config.italics }, -- theme colors will update dynamically when you change theme! SomePluginHl = { fg = colors.theme.syn.type, bold = true }, } diff --git a/lua/kanso/highlights/plugins.lua b/lua/kanso/highlights/plugins.lua index 1e4b3ed..1c0aa70 100644 --- a/lua/kanso/highlights/plugins.lua +++ b/lua/kanso/highlights/plugins.lua @@ -62,7 +62,7 @@ function M.setup(colors, config) NvimTreeSymlink = { link = "Type" }, NvimTreeFolderName = { link = "Directory" }, NvimTreeExecFile = { fg = theme.syn.string, bold = config.bold }, - NvimTreeOpenedFile = { fg = theme.syn.special1, italic = not config.disableItalics }, + NvimTreeOpenedFile = { fg = theme.syn.special1, italic = config.italics }, NvimTreeWinSeparator = { link = "WinSeparator" }, NvimTreeWindowPicker = { bg = config.transparent and theme.ui.none or theme.ui.bg_m1, @@ -482,7 +482,7 @@ function M.setup(colors, config) NeotestFile = { fg = theme.syn.fun }, NeotestFocused = { bold = config.bold, underline = true }, NeotestIndent = { fg = theme.ui.special, bold = config.bold }, - NeotestMarked = { fg = theme.diag.warning, italic = not config.disableItalics }, + NeotestMarked = { fg = theme.diag.warning, italic = config.italics }, NeotestNamespace = { fg = theme.syn.fun }, NeotestPassed = { fg = theme.diag.ok }, NeotestRunning = { fg = theme.vcs.changed }, diff --git a/lua/kanso/highlights/syntax.lua b/lua/kanso/highlights/syntax.lua index 390e710..d419c19 100644 --- a/lua/kanso/highlights/syntax.lua +++ b/lua/kanso/highlights/syntax.lua @@ -9,11 +9,7 @@ function M.setup(colors, config) return { -- *Comment any comment - Comment = vim.tbl_extend( - "force", - { fg = theme.syn.comment }, - config.disableItalics and {} or config.commentStyle - ), + Comment = vim.tbl_extend("force", { fg = theme.syn.comment }, not config.italics and {} or config.commentStyle), -- *Constant any constant Constant = { fg = theme.syn.constant }, @@ -41,11 +37,7 @@ function M.setup(colors, config) -- Operator "sizeof", "+", "*", etc. Operator = { fg = theme.syn.operator }, -- Keyword any other keyword - Keyword = vim.tbl_extend( - "force", - { fg = theme.syn.keyword }, - config.disableItalics and {} or config.keywordStyle - ), + Keyword = vim.tbl_extend("force", { fg = theme.syn.keyword }, not config.italics and {} or config.keywordStyle), -- Exception try, catch, throw Exception = { fg = theme.syn.special2 }, @@ -74,7 +66,7 @@ function M.setup(colors, config) -- *Underlined text that stands out, HTML links Underlined = { fg = theme.syn.special1, underline = true }, Bold = { bold = config.bold }, - Italic = { italic = not config.disableItalics }, + Italic = { italic = config.italics }, -- *Ignore left blank, hidden |hl-Ignore| Ignore = { link = "NonText" }, diff --git a/lua/kanso/highlights/treesitter.lua b/lua/kanso/highlights/treesitter.lua index 583437d..5d42578 100644 --- a/lua/kanso/highlights/treesitter.lua +++ b/lua/kanso/highlights/treesitter.lua @@ -9,7 +9,7 @@ function M.setup(colors, config) -- @variable various variable names ["@variable"] = { fg = theme.ui.fg }, -- @variable.builtin (Special) built-in variable names (e.g. `this`, `self`) - ["@variable.builtin"] = { fg = theme.syn.special2, italic = not config.disableItalics }, + ["@variable.builtin"] = { fg = theme.syn.special2, italic = config.italics }, -- @variable.parameter parameters of a function ["@variable.parameter"] = { fg = theme.syn.parameter }, -- @variable.parameter.builtin special parameters (e.g. `_`, `it`) @@ -80,7 +80,7 @@ function M.setup(colors, config) ["@keyword.return"] = vim.tbl_extend( "force", { fg = theme.syn.special3 }, - config.disableItalics and {} or config.keywordStyle + not config.italics and {} or config.keywordStyle ), -- @keyword.debug keywords related to debugging -- @keyword.exception keywords related to exceptions (e.g. `throw`, `catch`) diff --git a/lua/kanso/init.lua b/lua/kanso/init.lua index a29fac3..6272db0 100644 --- a/lua/kanso/init.lua +++ b/lua/kanso/init.lua @@ -9,6 +9,7 @@ local M = {} ---@class KansoConfig M.config = { bold = true, + italics = true, undercurl = true, commentStyle = { italic = true }, functionStyle = {}, @@ -18,7 +19,6 @@ M.config = { transparent = false, dimInactive = false, terminalColors = true, - disableItalics = false, colors = { theme = { zen = {}, pearl = {}, ink = {}, all = {} }, palette = {} }, ---@type fun(colors: KansoColorsSpec): table overrides = function()