Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions lua/catppuccin/groups/editor.lua
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ function M.get()
PmenuThumb = { bg = C.overlay0 }, -- Popup menu: Thumb of the scrollbar.
Question = { fg = C.blue }, -- |hit-enter| prompt and yes/no questions
QuickFixLine = { bg = C.surface1, style = { "bold" } }, -- Current |quickfix| item in the quickfix window. Combined with |hl-CursorLine| when the cursor is there.
Search = { bg = U.darken(C.sky, 0.30, C.base), fg = C.text }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
IncSearch = { bg = U.darken(C.sky, 0.90, C.base), fg = C.mantle }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
Search = { bg = C.surface1, fg = C.pink, style = { "bold" } }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
IncSearch = { bg = C.pink, fg = C.surface1 }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
CurSearch = { bg = C.red, fg = C.mantle }, -- 'cursearch' highlighting: highlights the current search you're on differently
SpecialKey = { link = "NonText" }, -- Unprintable characters: text displayed differently from what it really is. But not 'listchars' textspace. |hl-Whitespace|
SpellBad = { sp = C.red, style = { "undercurl" } }, -- Word that is not recognized by the spellchecker. |spell| Combined with the highlighting used otherwise.
Expand Down
2 changes: 1 addition & 1 deletion lua/catppuccin/groups/integrations/native_lsp.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ function M.get()
local error = C.red
local warning = C.yellow
local info = C.sky
local hint = C.teal
local hint = C.rosewater
local darkening_percentage = 0.095

return {
Expand Down
36 changes: 19 additions & 17 deletions lua/catppuccin/groups/integrations/semantic_tokens.lua
Original file line number Diff line number Diff line change
Expand Up @@ -12,35 +12,37 @@ If you want to stay on nvim 0.7, disable the integration.
return {}
end
return {
["@lsp.type.boolean"] = { link = "@boolean" },
["@lsp.type.builtinType"] = { link = "@type.builtin" },
["@lsp.type.class"] = { link = "@type" },
["@lsp.type.comment"] = { link = "@comment" },
["@lsp.type.enum"] = { link = "@type" },
["@lsp.type.enumMember"] = { link = "@constant" },
["@lsp.type.escapeSequence"] = { link = "@string.escape" },
["@lsp.type.formatSpecifier"] = { link = "@punctuation.special" },
["@lsp.type.interface"] = { fg = C.flamingo },
["@lsp.type.event"] = { link = "@event" },
["@lsp.type.formatSpecifier"] = { link = "@markup.link.label" },
["@lsp.type.interface"] = { link = "@type" },
["@lsp.type.keyword"] = { link = "@keyword" },
["@lsp.type.namespace"] = { link = "@namespace" },
["@lsp.type.modifier"] = { link = "@keyword" },
["@lsp.type.namespace"] = { link = "@module" },
["@lsp.type.number"] = { link = "@number" },
["@lsp.type.operator"] = { link = "@operator" },
["@lsp.type.parameter"] = { link = "@parameter" },
["@lsp.type.parameter"] = { link = "@variable.parameter" },
["@lsp.type.property"] = { link = "@property" },
["@lsp.type.property.cpp"] = { link = "@property.cpp" },
["@lsp.type.regex"] = { link = "@string.regexp" },
["@lsp.type.selfKeyword"] = { link = "@variable.builtin" },
["@lsp.type.typeAlias"] = { link = "@type.definition" },
["@lsp.type.unresolvedReference"] = { link = "@error" },
["@lsp.type.struct"] = { link = "@type" },
["@lsp.type.typeParameter"] = { link = "@type" },
["@lsp.type.variable"] = {}, -- use treesitter styles for regular variables
["@lsp.typemod.class.defaultLibrary"] = { link = "@type.builtin" },
["@lsp.typemod.enum.defaultLibrary"] = { link = "@type.builtin" },
["@lsp.typemod.enumMember.defaultLibrary"] = { link = "@constant.builtin" },
["@lsp.typemod.function.defaultLibrary"] = { link = "@function.builtin" },
["@lsp.typemod.keyword.async"] = { link = "@keyword.coroutine" },
["@lsp.typemod.macro.defaultLibrary"] = { link = "@function.builtin" },
["@lsp.typemod.method.defaultLibrary"] = { link = "@function.builtin" },
["@lsp.typemod.enum.defaultLibrary"] = { link = "@type" },
["@lsp.typemod.enumMember.defaultLibrary"] = { link = "@constant" },
["@lsp.typemod.function.defaultLibrary"] = { link = "@function" },
["@lsp.typemod.keyword.async"] = { link = "@keyword" },
["@lsp.typemod.macro.defaultLibrary"] = { link = "@constant.macro" },
["@lsp.typemod.method.defaultLibrary"] = { link = "@function" },
["@lsp.typemod.operator.injected"] = { link = "@operator" },
["@lsp.typemod.string.injected"] = { link = "@string" },
["@lsp.typemod.type.defaultLibrary"] = { link = "@type.builtin" },
["@lsp.typemod.variable.defaultLibrary"] = { link = "@variable.builtin" },
["@lsp.typemod.type.defaultLibrary"] = { link = "@type" },
["@lsp.typemod.variable.defaultLibrary"] = { link = "@variable" },
["@lsp.typemod.variable.injected"] = { link = "@variable" },
}
end
Expand Down
26 changes: 14 additions & 12 deletions lua/catppuccin/groups/integrations/treesitter.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci

local colors = { -- Reference: https://github.com/nvim-treesitter/nvim-treesitter/blob/master/CONTRIBUTING.md
-- Identifiers
["@variable"] = { fg = C.text, style = O.styles.variables or {} }, -- Any variable name that does not have another highlight.
["@variable"] = { link = "Identifier" }, -- Any variable name that does not have another highlight.
["@variable.builtin"] = { fg = C.red, style = O.styles.properties or {} }, -- Variable names that are defined by the languages, like this or self.
["@variable.parameter"] = { fg = C.maroon, style = O.styles.variables or {} }, -- For parameters of a function.
["@variable.member"] = { fg = C.lavender }, -- For fields.
["@variable.parameter"] = { fg = C.rosewater, style = O.styles.variables or {} }, -- For parameters of a function.
["@variable.member"] = { fg = C.rosewater }, -- For fields.

["@constant"] = { link = "Constant" }, -- For constants
["@constant.builtin"] = { fg = C.peach, style = O.styles.keywords or {} }, -- For constant that are built in the language: nil in Lua.
["@constant.builtin"] = { fg = C.lavender, style = O.styles.properties or {} }, -- For constant that are built in the language: nil in Lua.
["@constant.macro"] = { link = "Macro" }, -- For constants that are defined by macros: NULL in C.

["@module"] = { fg = C.lavender, style = { "italic" } }, -- For identifiers referring to modules and namespaces.
["@module"] = { fg = C.rosewater }, -- For identifiers referring to modules and namespaces.
["@label"] = { link = "Label" }, -- For labels: label: in C and :label: in Lua.

-- Literals
Expand All @@ -48,13 +48,13 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci
["@type.qualifier"] = { link = "Keyword" }, -- type qualifiers (e.g. `const`)

["@attribute"] = { link = "Constant" }, -- attribute annotations (e.g. Python decorators)
["@property"] = { fg = C.lavender, style = O.styles.properties or {} }, -- Same as TSField.
["@property"] = { fg = C.rosewater, style = O.styles.properties or {} }, -- Same as TSField.

-- Functions
["@function"] = { link = "Function" }, -- For function (calls and definitions).
["@function.builtin"] = { fg = C.peach, style = O.styles.functions or {} }, -- For builtin functions: table.insert in Lua.
["@function.call"] = { link = "Function" }, -- function calls
["@function.macro"] = { fg = C.teal, style = O.styles.functions or {} }, -- For macro defined functions (calls and definitions): each macro_rules in Rust.
["@function.macro"] = { link = "Constant" }, -- For macro defined functions (calls and definitions): each macro_rules in Rust.

["@function.method"] = { link = "Function" }, -- For method definitions.
["@function.method.call"] = { link = "Function" }, -- For method calls.
Expand All @@ -64,12 +64,12 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci

-- Keywords
["@keyword"] = { link = "Keyword" }, -- For keywords that don't fall in previous categories.
["@keyword.function"] = { fg = C.mauve, style = O.styles.keywords or {} }, -- For keywords used to define a function.
["@keyword.operator"] = { fg = C.mauve, style = O.styles.operators or {} }, -- For new keyword operator
["@keyword.function"] = { fg = C.maroon, style = O.styles.keywords or {} }, -- For keywords used to define a function.
["@keyword.operator"] = { link = "Operator" }, -- For new keyword operator
["@keyword.import"] = { link = "Include" }, -- For includes: #include in C, use or extern crate in Rust, or require in Lua.
["@keyword.storage"] = { link = "StorageClass" }, -- visibility/life-time/etc. modifiers (e.g. `static`)
["@keyword.repeat"] = { link = "Repeat" }, -- For keywords related to loops.
["@keyword.return"] = { fg = C.mauve, style = O.styles.keywords or {} },
["@keyword.return"] = { fg = C.pink, style = O.styles.keywords or {} },
["@keyword.exception"] = { link = "Exception" }, -- For exception related keywords.

["@keyword.conditional"] = { link = "Conditional" }, -- For keywords related to conditionnals.
Expand Down Expand Up @@ -159,6 +159,7 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci

-- lua
["@constructor.lua"] = { fg = C.flamingo }, -- For constructor calls and definitions: = { } in Lua.
["@variable.member.lua"] = { fg = C.lavender },

-- typescript
["@property.typescript"] = { fg = C.lavender, style = O.styles.properties or {} },
Expand All @@ -180,8 +181,8 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci

-- C/CPP
["@type.builtin.c"] = { fg = C.yellow, style = {} },
["@property.cpp"] = { fg = C.text },
["@type.builtin.cpp"] = { fg = C.yellow, style = {} },
["@property.cpp"] = { fg = C.text },

-- Misc
gitcommitSummary = { fg = C.rosewater, style = { "italic" } },
Expand Down Expand Up @@ -242,7 +243,8 @@ If you want to stay on nvim 0.7, either disable the integration or pin catppucci

colors["@symbol.ruby"] = colors["@string.special.symbol.ruby"]

colors["@variable.member.yaml"] = colors["@field.yaml"]
colors["@field.yaml"] = colors["@variable.member.yaml"]
colors["@field.lua"] = colors["@variable.member.lua"]

colors["@text.title.1.markdown"] = colors["@markup.heading.1.markdown"]
colors["@text.title.2.markdown"] = colors["@markup.heading.2.markdown"]
Expand Down
18 changes: 9 additions & 9 deletions lua/catppuccin/groups/syntax.lua
Original file line number Diff line number Diff line change
Expand Up @@ -10,30 +10,30 @@ function M.get()
Number = { fg = C.peach, style = O.styles.numbers or {} }, -- a number constant: 234, 0xff
Float = { link = "Number" }, -- a floating point constant: 2.3e10
Boolean = { fg = C.peach, style = O.styles.booleans or {} }, -- a boolean constant: TRUE, false
Identifier = { fg = C.flamingo, style = O.styles.variables or {} }, -- (preferred) any variable name
Identifier = { fg = C.text, style = O.styles.variables or {} }, -- (preferred) any variable name
Function = { fg = C.blue, style = O.styles.functions or {} }, -- function name (also: methods for classes)
Statement = { fg = C.mauve }, -- (preferred) any statement
Conditional = { fg = C.mauve, style = O.styles.conditionals or {} }, -- if, then, else, endif, switch, etc.
Repeat = { fg = C.mauve, style = O.styles.loops or {} }, -- for, do, while, etc.
Label = { fg = C.sapphire }, -- case, default, etc.
Label = { fg = C.rosewater }, -- case, default, etc.
Operator = { fg = C.sky, style = O.styles.operators or {} }, -- "sizeof", "+", "*", etc.
Keyword = { fg = C.mauve, style = O.styles.keywords or {} }, -- any other keyword
Exception = { fg = C.mauve, style = O.styles.keywords or {} }, -- try, catch, throw
Keyword = { fg = C.maroon, style = O.styles.keywords or {} }, -- any other keyword
Exception = { fg = C.peach, style = O.styles.keywords or {} }, -- try, catch, throw

PreProc = { fg = C.pink }, -- (preferred) generic Preprocessor
Include = { fg = C.mauve, style = O.styles.keywords or {} }, -- preprocessor #include
Include = { fg = C.teal, style = O.styles.keywords or {} }, -- preprocessor #include
Define = { link = "PreProc" }, -- preprocessor #define
Macro = { fg = C.mauve }, -- same as Define
Macro = { link = "Constant" }, -- same as Define
PreCondit = { link = "PreProc" }, -- preprocessor #if, #else, #endif, etc.

StorageClass = { fg = C.yellow }, -- static, register, volatile, etc.
Structure = { fg = C.yellow }, -- struct, union, enum, etc.
StorageClass = { link = "Keyword" }, -- static, register, volatile, etc.
Structure = { link = "Keyword" }, -- struct, union, enum, etc.
Special = { fg = C.pink }, -- (preferred) any special symbol
Type = { fg = C.yellow, style = O.styles.types or {} }, -- (preferred) int, long, char, etc.
Typedef = { link = "Type" }, -- A typedef
SpecialChar = { link = "Special" }, -- special character in a constant
Tag = { fg = C.lavender, style = { "bold" } }, -- you can use CTRL-] on this
Delimiter = { fg = C.overlay2 }, -- character that needs attention
Delimiter = { fg = C.teal }, -- delimiters (e.g. `;` / `.` / `,`)
Debug = { link = "Special" }, -- debugging statements

Underlined = { style = { "underline" } }, -- (preferred) text that stands out, HTML links
Expand Down