Update treesitter highlight groups

Ref: 1ae9b0e455
This commit is contained in:
Hoang Nguyen 2024-01-20 00:00:00 +07:00
parent 82ce78e689
commit a127a40e9f
Signed by: folliehiyuki
GPG Key ID: B0567C20730E9B11
10 changed files with 168 additions and 129 deletions

View File

@ -1,8 +1,8 @@
{
"LuaSnip": { "branch": "master", "commit": "82108e7e31cc6fc223cc5df5cae6d89f70bb199f" },
"SchemaStore.nvim": { "branch": "main", "commit": "d9de9914da37b54a53edec6923e1893c2262e236" },
"aerial.nvim": { "branch": "master", "commit": "e2e3bc2df4490690ea005395eecdc8eeb30c4def" },
"alpha-nvim": { "branch": "main", "commit": "29074eeb869a6cbac9ce1fbbd04f5f5940311b32" },
"LuaSnip": { "branch": "master", "commit": "2dbef19461198630b3d7c39f414d09fb07d1fdd2" },
"SchemaStore.nvim": { "branch": "main", "commit": "22156da516a2555800232e8406738b05951cb1bf" },
"aerial.nvim": { "branch": "master", "commit": "8ccc18055ba855affec5c251e615b92595ac2dba" },
"alpha-nvim": { "branch": "main", "commit": "4b36c1ca9ea475bdc006896657cf1ccc486aeffa" },
"better-escape.nvim": { "branch": "master", "commit": "d62cf3c04163a46f3895c70cc807f5ae68dd8ca1" },
"carbon-now.nvim": { "branch": "main", "commit": "16e843489ba00493466170919abfe144fc9aa158" },
"ccc.nvim": { "branch": "main", "commit": "ec6e23fd2c0bf4ffcf71c1271acdcee6e2c6f49c" },
@ -12,11 +12,11 @@
"cmp-fish": { "branch": "main", "commit": "8ae7bfb1b3251d433c4adf4e64396ef929fbd91f" },
"cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"conform.nvim": { "branch": "master", "commit": "75e7c5c7eb5fbd53f8b12dc420b31ec70770b231" },
"conform.nvim": { "branch": "master", "commit": "cbc5745bf7519acaf3a5cbaaa677fd556aa813d7" },
"dial.nvim": { "branch": "master", "commit": "27eb570085db2ef44bff4f620d3806039184651c" },
"diffview.nvim": { "branch": "main", "commit": "3dc498c9777fe79156f3d32dddd483b8b3dbd95f" },
"dressing.nvim": { "branch": "master", "commit": "94b0d24483d56f3777ee0c8dc51675f21709318c" },
"emmylua-nvim": { "branch": "master", "commit": "ca7e26d863c84bc41e8772f2c0350b68b4081c11" },
"dressing.nvim": { "branch": "master", "commit": "c1179336aaeca82a785cade27e9b7b276af3222e" },
"emmylua-nvim": { "branch": "master", "commit": "0fd565dbaef5a24a5fb6c015d7d7fa670a474fac" },
"flash.nvim": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" },
"friendly-snippets": { "branch": "main", "commit": "69a2c1675b66e002799f5eef803b87a12f593049" },
"git-conflict.nvim": { "branch": "main", "commit": "690879ba23741f21646e97ba287333ff56137c4d" },
@ -37,14 +37,14 @@
"mini.move": { "branch": "main", "commit": "03a16d64e58da0a871de6493c3d8fa1101baef46" },
"mini.pairs": { "branch": "main", "commit": "552062017ff207e1f35f7028bfb3f27c7421d22d" },
"mini.surround": { "branch": "main", "commit": "7bf8915ba15d7a4f3c2afe7868d3c15a858d73f1" },
"neoconf.nvim": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" },
"neoconf.nvim": { "branch": "main", "commit": "fe9e3a933a8c5f9feb5b0fd4cc451f4241d94263" },
"neogen": { "branch": "main", "commit": "70127baaff25611deaf1a29d801fc054ad9d2dc1" },
"neogit": { "branch": "master", "commit": "bd69620be5a2f50fe0ef39236f8c0009d16e4993" },
"neotest": { "branch": "master", "commit": "1ee3fcc150207f33dba8c9b3f478e5a0148d661d" },
"neogit": { "branch": "master", "commit": "38dd297a905ec6869f4c20ea9184a3e514316e3b" },
"neotest": { "branch": "master", "commit": "dcdb40ea48f9c7b67a5576f6bb2e5f63ec15f2c0" },
"neotest-go": { "branch": "main", "commit": "d29d20d912aca81a07c50022d880cc66f0d26542" },
"neotest-jest": { "branch": "main", "commit": "a394106cf053eef86d65ae04c4b93a1a7bd60aef" },
"neotest-python": { "branch": "master", "commit": "86ac2bbc8a4da3f203e56d9303d6ed1d7e50c1f6" },
"neotest-vitest": { "branch": "main", "commit": "15972c4791b3d47df82311047835803a072c1da6" },
"neotest-python": { "branch": "master", "commit": "2e83d2bc00acbcc1fd529dbf0a0e677cabfe6b50" },
"neotest-vitest": { "branch": "main", "commit": "87e91bfd9419a8c74bf0d105e2ae31b9692daf0b" },
"neotest-zig": { "branch": "main", "commit": "742f97f971a39d44b4832b432083608834a0e59c" },
"noice.nvim": { "branch": "main", "commit": "92433164e2f7118d4122c7674c3834d9511722ba" },
"nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" },
@ -53,42 +53,42 @@
"nvim-coverage": { "branch": "main", "commit": "cf4b5c61dfac977026a51a2bcad9173c272986ce" },
"nvim-dap": { "branch": "master", "commit": "9adbfdca13afbe646d09a8d7a86d5d031fb9c5a5" },
"nvim-dap-repl-highlights": { "branch": "master", "commit": "902d533b2682c26d6be4f8a4d1dfd895cbba4840" },
"nvim-dap-ui": { "branch": "master", "commit": "7e5e16427aaf814dc2d58e1b219def9ef2fa2435" },
"nvim-dap-ui": { "branch": "master", "commit": "a6beb3a855b42faa1d0fee1081602257719c2c5e" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "d4542ac257d3c7ee4131350db6179ae6340ce40b" },
"nvim-lint": { "branch": "master", "commit": "8df53b5dde8ea80f0a039775777eae6648a10229" },
"nvim-lspconfig": { "branch": "master", "commit": "e47ccfae775f0d572ef0f3a7d245f043b259dafc" },
"nvim-lint": { "branch": "master", "commit": "b32127ba52f3a1f7dc86773c2ca3f0029afa12c1" },
"nvim-lspconfig": { "branch": "master", "commit": "042aa6b27b8b8d4f4e1bd42de2037c83d676a8a0" },
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
"nvim-notify": { "branch": "master", "commit": "1576123bff3bed67bc673a3076e591abfe5d8ca9" },
"nvim-notify": { "branch": "master", "commit": "80b67b265530632505193553d05127ae7fe09ddd" },
"nvim-scrollbar": { "branch": "main", "commit": "35f99d559041c7c0eff3a41f9093581ceea534e8" },
"nvim-spectre": { "branch": "master", "commit": "d8906855f1949ac97b1e77aaf8d3fe12ed158ddc" },
"nvim-tree.lua": { "branch": "master", "commit": "b8c3a23e76f861d5f0ff3f6714b9b56388984d0b" },
"nvim-treesitter": { "branch": "master", "commit": "8cd2b230174efbf7b5d9f49fe2f90bda6b5eb16e" },
"nvim-treesitter-context": { "branch": "master", "commit": "400a99ad43ac78af1148061da3491cba2637ad29" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "a97a6ea140cbe5e0f7ab1291c7ca70abd5171d31" },
"nvim-tree.lua": { "branch": "master", "commit": "f24afa2cef551122b8bd53bb2e4a7df42343ce2e" },
"nvim-treesitter": { "branch": "master", "commit": "4a4dbe1cb1da34d87fc42a40aaf8e218af4cfe0f" },
"nvim-treesitter-context": { "branch": "master", "commit": "85cf977181fb8e816e47ac05df7f756e9cb72caf" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "19a91a38b02c1c28c14e0ba468d20ae1423c39b2" },
"nvim-ts-autotag": { "branch": "main", "commit": "8515e48a277a2f4947d91004d9aa92c29fdc5e18" },
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1277b4a1f451b0f18c0790e1a7f12e1e5fdebfee" },
"nvim-web-devicons": { "branch": "master", "commit": "584038666b0d8124d452a2e8ea9e38e6d6e56490" },
"orgmode": { "branch": "master", "commit": "803e30ddad61f325d8d4aba1c4c1ad1c8f542849" },
"nvim-web-devicons": { "branch": "master", "commit": "140edfcf25093e8b321d13e154cbce89ee868ca0" },
"orgmode": { "branch": "master", "commit": "651078a2fe60b12c93903e3a2b655491c951bf9d" },
"overseer.nvim": { "branch": "master", "commit": "68a2d344cea4a2e11acfb5690dc8ecd1a1ec0ce0" },
"pantran.nvim": { "branch": "main", "commit": "461799624948bfb66f73b20b6fffa7e4c8ca6d08" },
"parinfer-rust": { "branch": "master", "commit": "0e4d52e712641ad351a1bfe6cee3d34d63ed087b" },
"persistence.nvim": { "branch": "main", "commit": "ad538bfd5336f1335cdb6fd4e0b0eebfa6e12f32" },
"persistence.nvim": { "branch": "main", "commit": "4982499c1636eac254b72923ab826ee7827b3084" },
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
"project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "739a034046465d2b100151037401c24c42cb09cf" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "8b6099f24e435036a628798585f95f62fb892838" },
"rest.nvim": { "branch": "main", "commit": "84e81a19ab24ccf05c9233d34d4dfce61c233abe" },
"scope.nvim": { "branch": "main", "commit": "cd27af77ad61a7199af5c28d27013fb956eb0e3e" },
"sniprun": { "branch": "master", "commit": "551f5839c1ccc8b4d3143ae03f58757d3047e391" },
"sniprun": { "branch": "master", "commit": "0079f9c4675a6825f84e108bbff866f67dd8762f" },
"ssr.nvim": { "branch": "main", "commit": "bb323ba621ac647b4ac5638b47666e3ef3c279e1" },
"stickybuf.nvim": { "branch": "master", "commit": "42973af199ad7765dc820e88b51ec86cfde90537" },
"stickybuf.nvim": { "branch": "master", "commit": "2160fcd536d81f5fa43f7167dba6634e814e3154" },
"telescope-file-browser.nvim": { "branch": "master", "commit": "6f735a63dc24b9aed527cd505a31864223c8a6d8" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" },
"telescope-symbols.nvim": { "branch": "master", "commit": "a6d0127a53d39b9fc2af75bd169d288166118aec" },
"telescope-tabs": { "branch": "master", "commit": "a38c8fee471257a0ff233e065c4a0d123f8e67b0" },
"telescope.nvim": { "branch": "master", "commit": "da8b3d485975a8727bea127518b65c980521ae22" },
"telescope-tabs": { "branch": "master", "commit": "c3572358e60817f40f0de31bc01906af0993d4c4" },
"telescope.nvim": { "branch": "master", "commit": "9cf58f438f95f04cf1709b734bbcb9243c262d70" },
"todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" },
"toggleterm.nvim": { "branch": "main", "commit": "e3805fed94d487b81e9c21548535cc820f62f840" },
"treesj": { "branch": "main", "commit": "1d6e89f4790aa04eaae38fa9460a3ee191961c96" },
"treesj": { "branch": "main", "commit": "14808da3cddd62fc86ede53a5ea1fd1635897e75" },
"trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" },
"twilight.nvim": { "branch": "main", "commit": "8b7b50c0cb2dc781b2f4262a5ddd57571556d1e4" },
"undotree": { "branch": "master", "commit": "36ff7abb6b60980338344982ad4cdf03f7961ecd" },

View File

@ -36,20 +36,12 @@ local opts = {
'gzip',
'matchit',
'matchparen',
'netrw',
'netrwFilHandlers',
'netrwPlugin',
'netrwSettings',
'netrw_gitignore',
'rplugin',
'spellfile',
'sqlcomplete',
'syntaxcomplete',
'tar',
'tarPlugin',
'tohtml',
'tutor',
'zip',
'zipPlugin',
},
},

View File

@ -44,14 +44,14 @@ M.icons = {
},
kind = {
-- aerial.nvim, nvim-navic
File = { icon = '', hl = '@text.uri' },
Module = { icon = '', hl = '@namespace' },
Namespace = { icon = '', hl = '@namespace' },
Package = { icon = '', hl = '@namespace' },
Class = { icon = '', hl = '@storageclass' },
Method = { icon = '', hl = '@method' },
File = { icon = '', hl = '@string.special.path' },
Module = { icon = '', hl = '@module' },
Namespace = { icon = '', hl = '@module' },
Package = { icon = '', hl = '@module' },
Class = { icon = '', hl = '@keyword.storage' },
Method = { icon = '', hl = '@function.method' },
Property = { icon = '', hl = '@property' },
Field = { icon = '', hl = '@field' },
Field = { icon = '', hl = '@variable.member' },
Constructor = { icon = '󰒓', hl = '@constructor' },
Enum = { icon = '', hl = '@lsp.type.enum' },
Interface = { icon = '', hl = '@lsp.type.interface' },
@ -69,7 +69,7 @@ M.icons = {
Struct = { icon = '', hl = '@lsp.type.struct' },
Event = { icon = '', hl = '@type' },
Operator = { icon = '', hl = '@operator' },
TypeParameter = { icon = '', hl = '@parameter' },
TypeParameter = { icon = '', hl = '@variable.parameter' },
-- Additional ones for nvim-cmp.
-- No need to specify the highlights here.

View File

@ -18,10 +18,10 @@ return {
exclude = { 'org' },
},
colors = {
error = { 'DiagnosticError', '@text.danger' },
warning = { 'DiagnosticWarn', '@text.warning' },
info = { 'DiagnosticInfo', '@text.note' },
hint = { 'DiagnosticHint' },
error = { 'DiagnosticError', '@comment.error' },
warning = { 'DiagnosticWarn', '@comment.warning' },
info = { 'DiagnosticInfo', '@comment.info' },
hint = { 'DiagnosticHint', '@comment.hint' },
default = { 'Normal' },
test = { 'Identifier' },
},

View File

@ -17,6 +17,7 @@ return {
},
},
indent = { enable = true },
-- TODO: update the settings when https://github.com/andymass/vim-matchup/pull/330 is merged
matchup = {
enable = true,
disable_virtual_text = true,

View File

@ -16,7 +16,7 @@ return {
-- org = { 'proselint' },
-- asciidoc = { 'proselint' },
proto = { 'buf_lint' },
-- rego = { 'opa_check', 'regal' },
rego = { 'opa_check', 'regal' },
sql = { 'sqlfluff' },
['*'] = { 'codespell', 'cspell' },
},

View File

@ -133,7 +133,7 @@ return {
asciidocListingBlock = { fg = c.teal },
asciidocMacro = { fg = c.green },
asciidocMacroAttributes = { fg = c.purple },
asciidocOneLineTitle = { link = '@text.title' },
asciidocOneLineTitle = { link = '@markup.heading' },
asciidocPassthroughBlock = { fg = c.blue },
asciidocTriplePlusPassthrough = { fg = c.teal },
asciidocAdmonition = { link = 'Keyword' },
@ -144,6 +144,6 @@ return {
asciidocQuotedMonospaced2 = { link = 'asciidocQuotedMonospaced' },
asciidocQuotedUnconstrainedBold = { link = 'asciidocQuotedBold' },
asciidocQuotedUnconstrainedEmphasized = { link = 'asciidocQuotedEmphasized' },
asciidocURL = { link = '@text.uri' },
asciidocEmail = { link = '@text.uri' },
asciidocURL = { link = '@markup.link.url' },
asciidocEmail = { link = '@markup.link.url' },
}

View File

@ -2,6 +2,7 @@ local c = require('user.themes.nord.colors')
return {
-- LSP semantic tokens
-- :help lsp-semantic-highlight
['@lsp.type.boolean'] = { link = '@boolean' },
['@lsp.type.builtinType'] = { link = '@type.builtin' },
['@lsp.type.class'] = { link = '@type' },
@ -10,22 +11,22 @@ return {
['@lsp.type.enumMember'] = { link = '@constant' },
['@lsp.type.escapeSequence'] = { link = '@string.escape' },
['@lsp.type.formatSpecifier'] = { link = '@punctuation.special' },
['@lsp.type.field'] = { link = '@field' },
['@lsp.type.field'] = { link = '@variable.member' },
['@lsp.type.function'] = { link = '@function' },
['@lsp.type.generic'] = { link = '@text' },
['@lsp.type.generic'] = { link = 'Normal' },
['@lsp.type.interface'] = { link = '@type' },
['@lsp.type.keyword'] = { link = '@keyword' },
['@lsp.type.macro'] = { link = '@function.macro' },
['@lsp.type.method'] = { link = '@method' },
['@lsp.type.namespace'] = { link = '@namespace' },
['@lsp.type.method'] = { link = '@function.method' },
['@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.selfKeyword'] = { link = '@variable.builtin' },
['@lsp.type.typeAlias'] = { link = '@type.definition' },
['@lsp.type.unresolvedReference'] = { link = '@error' },
['@lsp.type.typeParameter'] = { link = '@parameter' },
['@lsp.type.unresolvedReference'] = { fg = c.red, italic = true },
['@lsp.type.typeParameter'] = { link = '@variable.parameter' },
['@lsp.type.struct'] = { link = 'Structure' },
['@lsp.type.variable'] = { link = '@variable' },
['@lsp.typemod.enum.defaultLibrary'] = { link = '@type.builtin' },
@ -34,7 +35,7 @@ return {
['@lsp.typemod.macro.defaultLibrary'] = { link = '@function.builtin' },
['@lsp.typemod.method.defaultLibrary'] = { link = '@function.builtin' },
['@lsp.typemod.operator.injected'] = { link = '@operator' },
['@lsp.typemod.string.injected'] = { link = '@string' },
['@lsp.typemod.string.injected'] = { link = 'String' },
['@lsp.typemod.type.defaultLibrary'] = { link = '@type.builtin' },
['@lsp.typemod.variable.defaultLibrary'] = { link = '@variable.builtin' },
['@lsp.typemod.variable.injected'] = { link = '@variable' },

View File

@ -135,8 +135,8 @@ return {
OrgHeadlineLevel6 = { fg = c.fg, bold = true },
OrgTODO = { fg = c.green, bold = true },
OrgDONE = { fg = c.purple, bold = true },
OrgTSCheckbox = { link = '@text.todo.unchecked' },
OrgTSCheckboxChecked = { link = '@text.todo.checked' },
OrgTSCheckbox = { link = '@markup.list.unchecked' },
OrgTSCheckboxChecked = { link = '@markup.list.checked' },
OrgTSCheckboxHalfChecked = { fg = c.blue, bold = true },
OrgAgendaDealine = { fg = c.red, bold = true },
OrgAgendaScheduled = { fg = c.green, bold = true },

View File

@ -1,82 +1,127 @@
local c = require('user.themes.nord.colors')
-- :help nvim-treesitter-highlights
-- https://github.com/nvim-treesitter/nvim-treesitter/blob/master/CONTRIBUTING.md#highlights
return {
['@annotation'] = { fg = c.blue, italic = true },
['@attribute'] = { fg = c.purple },
['@boolean'] = { link = 'Boolean' },
['@character'] = { link = 'Character' },
['@character.special'] = { link = 'SpecialChar' },
['@comment'] = { link = 'Comment' },
['@conditional'] = { link = 'Conditional' },
-- Identifiers
['@variable'] = { link = 'Variable' },
['@variable.builtin'] = { link = 'Variable' },
['@variable.parameter'] = { fg = c.purple, italic = true },
['@variable.member'] = { fg = c.teal },
['@constant'] = { link = 'Constant' },
['@constant.builtin'] = { fg = c.teal },
['@constant.macro'] = { fg = c.teal },
['@conceal'] = { link = 'Conceal' },
['@constructor'] = { fg = c.blue },
['@debug'] = { link = 'Debug' },
['@define'] = { link = 'Define' },
['@error'] = { fg = c.red },
['@exception'] = { link = 'Exception' },
['@field'] = { fg = c.teal },
['@float'] = { link = 'Float' },
['@function'] = { link = 'Function' },
['@function.call'] = { link = 'Function' },
['@function.builtin'] = { link = 'Function' },
['@function.macro'] = { fg = c.teal },
['@include'] = { link = 'Include' },
['@keyword'] = { link = 'Keyword' },
['@keyword.function'] = { link = 'Keyword' },
['@keyword.return'] = { link = 'Keyword' },
['@keyword.operator'] = { link = 'Keyword' },
['@module'] = { fg = c.white1 },
['@module.builtin'] = { fg = c.white1 },
['@label'] = { link = 'Label' },
['@method'] = { fg = c.teal },
['@method.call'] = { fg = c.teal, bold = true },
['@namespace'] = { fg = c.white1 },
-- ['@none'] = { fg = 'NONE', bg = 'NONE' },
-- Literals
['@string'] = { link = 'String' },
['@string.documentation'] = { fg = c.yellow },
['@string.regexp'] = { fg = c.teal },
['@string.escape'] = { fg = c.purple },
['@string.special'] = { link = 'Special' },
['@string.special.symbol'] = { fg = c.purple },
['@string.special.url'] = { link = '@markup.link.url' },
['@string.special.path'] = { fg = c.fg, underline = true },
['@character'] = { link = 'Character' },
['@character.special'] = { link = 'SpecialChar' },
['@boolean'] = { link = 'Boolean' },
['@number'] = { link = 'Number' },
['@operator'] = { link = 'Operator' },
['@parameter'] = { fg = c.purple, italic = true },
['@parameter.reference'] = { fg = c.purple, italic = true },
['@preproc'] = { link = 'PreProc' },
['@number.float'] = { link = 'Float' },
-- Types
['@type'] = { link = 'Type' },
['@type.builtin'] = { link = 'Type' },
['@type.definition'] = { link = 'Typedef' },
['@type.qualifier'] = { fg = c.blue, bold = true, italic = true },
['@attribute'] = { fg = c.purple },
['@property'] = { fg = c.teal },
-- Functions
['@function'] = { link = 'Function' },
['@function.builtin'] = { link = 'Function' },
['@function.call'] = { link = 'Function' },
['@function.macro'] = { fg = c.teal },
['@function.method'] = { fg = c.teal },
['@function.method.call'] = { fg = c.teal, bold = true },
['@constructor'] = { fg = c.blue },
['@operator'] = { link = 'Operator' },
-- Keywords
['@keyword'] = { link = 'Keyword' },
['@keyword.coroutine'] = { link = 'Keyword' },
['@keyword.function'] = { link = 'Keyword' },
['@keyword.operator'] = { link = 'Operator' },
['@keyword.import'] = { link = 'Include' },
['@keyword.storage'] = { link = 'StorageClass' },
['@keyword.repeat'] = { link = 'Repeat' },
['@keyword.return'] = { link = 'Keyword' },
['@keyword.debug'] = { link = 'Debug' },
['@keyword.exception'] = { link = 'Exception' },
['@keyword.conditional'] = { link = 'Conditional' },
['@keyword.conditional.ternary'] = { link = 'Conditional' },
['@keyword.directive'] = { link = 'PreProc' },
['@keyword.directive.define'] = { link = 'Define' },
-- Punctuation
['@punctuation.delimiter'] = { link = 'Delimiter' },
['@punctuation.bracket'] = { link = 'Delimiter' },
['@punctuation.special'] = { link = 'Delimiter' },
['@repeat'] = { link = 'Repeat' },
['@storageclass'] = { link = 'StorageClass' },
['@string'] = { link = 'String' },
['@string.regex'] = { fg = c.teal },
['@string.escape'] = { fg = c.purple },
['@string.special'] = { link = 'Special' },
['@symbol'] = { fg = c.purple },
-- Comments
['@comment'] = { link = 'Comment' },
['@comment.documentation'] = { fg = c.yellow, italic = true },
['@comment.error'] = { fg = c.red, bold = true },
['@comment.warning'] = { fg = c.yellow, bold = true },
['@comment.hint'] = { fg = c.cyan, bold = true },
['@comment.info'] = { fg = c.blue, bold = true },
['@comment.todo'] = { link = 'Todo' },
-- Markup
['@markup.strong'] = { bold = true },
['@markup.italic'] = { italic = true },
['@markup.strikethrough'] = { strikethrough = true },
['@markup.underline'] = { underline = true },
['@markup.heading'] = { fg = c.cyan, bold = true },
['@markup.quote'] = { fg = c.highlight, bold = true },
['@markup.math'] = { fg = c.yellow },
['@markup.environment'] = { fg = c.cyan },
['@markup.link'] = { fg = c.green },
['@markup.link.label'] = { link = 'Label' },
['@markup.link.url'] = { fg = c.green, underline = true },
['@markup.raw'] = { fg = c.green, italic = true },
['@markup.raw.block'] = { fg = c.green, italic = true },
['@markup.list'] = { link = 'Todo' },
['@markup.list.checked'] = { fg = c.green, bold = true },
['@markup.list.unchecked'] = { fg = c.blue, bold = true },
['@diff.plus'] = { link = 'DiffAdd' },
['@diff.minus'] = { link = 'DiffDelete' },
['@diff.delta'] = { link = 'DiffChange' },
['@tag'] = { link = 'Tag' },
['@tag.attribute'] = { fg = c.orange, italic = true },
['@tag.delimiter'] = { fg = c.purple },
['@text'] = { link = 'Normal' },
['@text.diff.add'] = { link = 'DiffAdd' },
['@text.diff.delete'] = { link = 'DiffDelete' },
['@text.strong'] = { bold = true },
['@text.emphasis'] = { italic = true },
['@text.underline'] = { underline = true },
['@text.strike'] = { strikethrough = true },
['@text.title'] = { fg = c.cyan, bold = true },
['@text.literal'] = { fg = c.green, italic = true },
['@text.uri'] = { fg = c.green, underline = true },
['@text.math'] = { fg = c.yellow },
['@text.reference'] = { fg = c.purple, italic = true },
['@text.environment'] = { fg = c.cyan },
['@text.environment.name'] = { fg = c.purple, bold = true },
['@text.todo'] = { link = 'Todo' },
['@text.note'] = { fg = c.blue, bold = true },
['@text.warning'] = { fg = c.yellow, bold = true },
['@text.danger'] = { fg = c.red, bold = true },
['@text.todo.unchecked'] = { fg = c.blue, bold = true },
['@text.todo.checked'] = { fg = c.green, bold = true },
['@type'] = { link = 'Type' },
['@type.builtin'] = { link = 'Type' },
['@type.qualifier'] = { fg = c.blue, bold = true, italic = true },
['@type.definition'] = { link = 'Typedef' },
['@variable'] = { link = 'Variable' },
['@variable.builtin'] = { link = 'Variable' },
-- Non-highlighting captures
-- ['@none'] = { fg = 'NONE', bg = 'NONE' },
['@conceal'] = { link = 'Conceal' },
-- ['@spell'] = { undercurl = true },
-- ['@nospell'] = { fg = 'NONE', bg = 'NONE' },
}