summaryrefslogtreecommitdiff
path: root/lua/no-clown-fiesta/groups/treesitter.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/no-clown-fiesta/groups/treesitter.lua')
-rw-r--r--lua/no-clown-fiesta/groups/treesitter.lua82
1 files changed, 82 insertions, 0 deletions
diff --git a/lua/no-clown-fiesta/groups/treesitter.lua b/lua/no-clown-fiesta/groups/treesitter.lua
new file mode 100644
index 0000000..6217cb7
--- /dev/null
+++ b/lua/no-clown-fiesta/groups/treesitter.lua
@@ -0,0 +1,82 @@
+local M = {}
+
+local unpack = unpack
+
+function M.highlight(palette, options)
+ return {
+ ["@comment"] = vim.tbl_extend(
+ "force",
+ { fg = palette.medium_gray },
+ options.styles.comments
+ ),
+ ["@annotation"] = { fg = palette.white },
+ ["@attribute"] = { fg = palette.white },
+ ["@constructor"] = { fg = palette.cyan },
+ ["@type"] = vim.tbl_extend("force", { fg = palette.white }, options.styles.type),
+ ["@type.builtin"] = { fg = palette.white },
+ ["@conditional"] = { fg = palette.gray_blue },
+ ["@exception"] = { fg = palette.red },
+ ["@include"] = { fg = palette.red },
+ ["@keyword"] = vim.tbl_extend(
+ "force",
+ { fg = palette.gray_blue },
+ options.styles.keywords
+ ),
+ ["@keyword.function"] = vim.tbl_extend(
+ "force",
+ { fg = palette.gray_blue },
+ options.styles.keywords
+ ),
+ ["@label"] = { fg = palette.white },
+ ["@namespace"] = { fg = palette.white },
+ ["@repeat"] = { fg = palette.gray_blue },
+ ["@constant"] = { fg = palette.white },
+ ["@const.builtin"] = { fg = palette.red },
+ ["@float"] = { fg = palette.red },
+ ["@number"] = { fg = palette.red },
+ ["@boolean"] = { fg = palette.red },
+ ["@character"] = { fg = palette.light_green },
+ ["@error"] = { fg = palette.error },
+ ["@function"] = vim.tbl_extend(
+ "force",
+ { fg = palette.cyan },
+ options.styles.functions
+ ),
+ ["@function.builtin"] = { fg = palette.cyan },
+ ["@method"] = { fg = palette.cyan },
+ ["@const.macro"] = { fg = palette.cyan },
+ ["@function.macro"] = { fg = palette.cyan },
+ ["@variable"] = vim.tbl_extend(
+ "force",
+ { fg = palette.white },
+ options.styles.variables
+ ),
+ ["@variable.builtin"] = { fg = palette.white },
+ ["@property"] = { fg = palette.white },
+ ["@operator"] = { fg = palette.white },
+ ["@field"] = { fg = palette.white },
+ ["@parameter"] = { fg = palette.white },
+ ["@parameter.reference"] = { fg = palette.white },
+ ["@symbol"] = { fg = palette.medium_gray },
+ ["@text"] = { fg = palette.fg },
+ ["@punctuation.delimiter"] = { fg = palette.white },
+ ["@tag.delimiter"] = { fg = palette.white },
+ ["@punctuation.bracket"] = { fg = palette.white },
+ ["@punctuation.special"] = { fg = palette.medium_gray },
+ ["@string"] = { fg = palette.medium_gray_blue },
+ ["@string.regex"] = { fg = palette.medium_gray_blue },
+ ["@string.escape"] = { fg = palette.medium_gray_blue },
+ ["@tag"] = { fg = palette.pale_purple },
+ ["@emphasis"] = { italic = true },
+ ["@underline"] = { underline = true },
+ ["@title"] = { fg = palette.medium_gray },
+ ["@literal"] = { fg = palette.medium_gray },
+ ["@uri"] = { fg = palette.cyan, underline = true },
+ ["@keyword.operator"] = { fg = palette.gray_blue },
+ ["@structure"] = { fg = palette.purple_test },
+ ["@strong"] = { fg = palette.medium_gray },
+ ["@query.linter.error"] = { fg = palette.warning },
+ }
+end
+
+return M