aboutsummaryrefslogtreecommitdiff
path: root/lua/prismite/groups/plugins
diff options
context:
space:
mode:
authordelta <darkussdelta@gmail.com>2025-09-13 19:55:00 +0200
committerdelta <darkussdelta@gmail.com>2025-09-13 19:55:00 +0200
commit031bf426ca73146d9253548e77f90ec112ebcedb (patch)
treeb3dcd2de915ba1c31ad7bec2e30fc44df9226251 /lua/prismite/groups/plugins
initial commit
Diffstat (limited to 'lua/prismite/groups/plugins')
-rw-r--r--lua/prismite/groups/plugins/blink.lua10
-rw-r--r--lua/prismite/groups/plugins/indentmini.lua5
-rw-r--r--lua/prismite/groups/plugins/init.lua11
-rw-r--r--lua/prismite/groups/plugins/marks.lua6
-rw-r--r--lua/prismite/groups/plugins/noice.lua33
-rw-r--r--lua/prismite/groups/plugins/nvim-tree.lua7
-rw-r--r--lua/prismite/groups/plugins/treesitter.lua164
-rw-r--r--lua/prismite/groups/plugins/trouble.lua13
8 files changed, 249 insertions, 0 deletions
diff --git a/lua/prismite/groups/plugins/blink.lua b/lua/prismite/groups/plugins/blink.lua
new file mode 100644
index 0000000..b343c9f
--- /dev/null
+++ b/lua/prismite/groups/plugins/blink.lua
@@ -0,0 +1,10 @@
+local colors = require "prismite.palette"
+local kinds = require "prismite.groups.kinds"
+
+return vim.tbl_deep_extend("error", {
+ BlinkCmpMenuBorder = { fg = colors.border },
+ BlinkCmpGhostText = { fg = colors.fg_low },
+ BlinkCmpDocBorder = { fg = colors.border },
+ BlinkCmpLabelDescription = { fg = colors.fg_low },
+ BlinkCmpScrollBarThumb = { bg = colors.yellow },
+}, kinds.generate "BlinkCmpKind")
diff --git a/lua/prismite/groups/plugins/indentmini.lua b/lua/prismite/groups/plugins/indentmini.lua
new file mode 100644
index 0000000..5c2debc
--- /dev/null
+++ b/lua/prismite/groups/plugins/indentmini.lua
@@ -0,0 +1,5 @@
+local colors = require "prismite.palette"
+return {
+ IndentLine = { fg = colors.border_variant },
+ IndentLineCurrent = { fg = colors.border },
+}
diff --git a/lua/prismite/groups/plugins/init.lua b/lua/prismite/groups/plugins/init.lua
new file mode 100644
index 0000000..21bd8e6
--- /dev/null
+++ b/lua/prismite/groups/plugins/init.lua
@@ -0,0 +1,11 @@
+return vim.tbl_deep_extend(
+ "error",
+ {},
+ require "prismite.groups.plugins.indentmini",
+ require "prismite.groups.plugins.treesitter",
+ require "prismite.groups.plugins.noice",
+ require "prismite.groups.plugins.marks",
+ require "prismite.groups.plugins.trouble",
+ require "prismite.groups.plugins.nvim-tree",
+ require "prismite.groups.plugins.blink"
+)
diff --git a/lua/prismite/groups/plugins/marks.lua b/lua/prismite/groups/plugins/marks.lua
new file mode 100644
index 0000000..0bc2ef1
--- /dev/null
+++ b/lua/prismite/groups/plugins/marks.lua
@@ -0,0 +1,6 @@
+local colors = require "prismite.palette"
+
+return {
+ MarkSignHL = { fg = colors.green },
+ MarkSignNumHL = {},
+}
diff --git a/lua/prismite/groups/plugins/noice.lua b/lua/prismite/groups/plugins/noice.lua
new file mode 100644
index 0000000..5982db2
--- /dev/null
+++ b/lua/prismite/groups/plugins/noice.lua
@@ -0,0 +1,33 @@
+local colors = require "prismite.palette"
+
+return {
+ NoiceCmdline = { link = "Normal" },
+ NoiceCmdlineIcon = { bg = colors.bg, fg = colors.yellow },
+ NoiceCmdlinePopup = { bg = colors.bg },
+ NoicePopupBorder = { link = "WinSeparator" },
+ NoiceCmdlinePopupBorder = { link = "NoicePopupBorder" },
+ NoiceCmdlinePopupBorderSearch = { link = "NoicePopupBorder" },
+
+ NoiceCompletionItemKindClass = { link = "@type" },
+ NoiceCompletionItemKindColor = { link = "@type" },
+ NoiceCompletionItemKindConstant = { link = "@constant" },
+ NoiceCompletionItemKindConstructor = { link = "@constructor" },
+ NoiceCompletionItemKindDefault = { bold = true },
+ NoiceCompletionItemKindEnum = { link = "@type" },
+ NoiceCompletionItemKindEnumMember = { link = "@constant" },
+ NoiceCompletionItemKindField = { link = "@variable.member" },
+ NoiceCompletionItemKindFile = { link = "@constant" },
+ NoiceCompletionItemKindFolder = { link = "@constant" },
+ NoiceCompletionItemKindFunction = { link = "@function" },
+ NoiceCompletionItemKindInterface = { link = "@type" },
+ NoiceCompletionItemKindKeyword = { link = "@keyword" },
+ NoiceCompletionItemKindMethod = { link = "@function.method" },
+ NoiceCompletionItemKindModule = { link = "@module" },
+ NoiceCompletionItemKindProperty = { link = "@property" },
+ NoiceCompletionItemKindSnippet = { fg = colors.cyan },
+ NoiceCompletionItemKindStruct = { link = "@type" },
+ -- NoiceCompletionItemKindText = {},
+ NoiceCompletionItemKindUnit = { link = "@constant" },
+ NoiceCompletionItemKindValue = { link = "@constant" },
+ NoiceCompletionItemKindVariable = { link = "@variable" },
+}
diff --git a/lua/prismite/groups/plugins/nvim-tree.lua b/lua/prismite/groups/plugins/nvim-tree.lua
new file mode 100644
index 0000000..a358d19
--- /dev/null
+++ b/lua/prismite/groups/plugins/nvim-tree.lua
@@ -0,0 +1,7 @@
+local colors = require "prismite.palette"
+
+return {
+ NvimTreeSpecialFile = { fg = colors.green },
+ NvimTreeRootFolder = { link = "Directory" },
+ NvimTreeIndentMarker = { fg = colors.border },
+}
diff --git a/lua/prismite/groups/plugins/treesitter.lua b/lua/prismite/groups/plugins/treesitter.lua
new file mode 100644
index 0000000..0302c53
--- /dev/null
+++ b/lua/prismite/groups/plugins/treesitter.lua
@@ -0,0 +1,164 @@
+local colors = require "prismite.palette"
+
+return {
+ -- various variable names
+ ["@variable"] = { link = "Identifier" },
+ -- built-in variable names (e.g. `this`)
+ ["@variable.builtin"] = { fg = colors.pink, bold = true },
+ -- parameters of a function
+ ["@variable.parameter"] = { link = "@variable" },
+ -- special parameters (e.g. `_`, `it`)
+ ["@variable.parameter.builtin"] = { link = "@variable.builtin" },
+ -- object and struct fields
+ ["@variable.member"] = { fg = colors.fg },
+
+ -- constant identifiers
+ ["@constant"] = { link = "Constant" },
+ -- built-in constant values
+ ["@constant.builtin"] = { link = "@constant" },
+ -- constants defined by the preprocessor
+ ["@constant.macro"] = { link = "@constant" },
+
+ -- modules or namespaces
+ ["@module"] = { italic = true },
+ -- built-in modules or namespaces
+ ["@module.builtin"] = { link = "@module" },
+ -- GOTO and other labels (e.g. `label:` in C), including heredoc labels
+ ["@label"] = { link = "Todo" },
+
+ -- string literals
+ ["@string"] = { link = "String" },
+ -- string documenting code (e.g. Python docstrings
+ ["@string.documentation"] = { link = "@comment" },
+ -- regular expressions
+ ["@string.regexp"] = { link = "@constant" },
+ -- escape sequences
+ ["@string.escape"] = { fg = colors.cyan },
+ -- other special strings (e.g. dates)
+ ["@string.special"] = { link = "@string" },
+ -- symbols or atoms
+ ["@string.special.symbol"] = { link = "@string" },
+ -- URIs (e.g. hyperlinks)
+ ["@string.special.url"] = { underline = true },
+ -- filenames
+ ["@string.special.path"] = { link = "@string" },
+
+ -- character literals
+ ["@character"] = { link = "@constant" },
+ -- special characters (e.g. wildcards)
+ ["@character.special"] = { link = "String" },
+
+ -- boolean literals
+ ["@boolean"] = { link = "@constant" },
+ -- numeric literals
+ ["@number"] = { link = "@constant" },
+ -- floating-point number literals
+ ["@number.float"] = { link = "@number" },
+
+ -- type or class definitions and annotations
+ ["@type"] = { link = "Type" },
+ -- built-in types
+ ["@type.builtin"] = { link = "@type" },
+ -- identifiers in type definitions (e.g. `typedef <type> <identifier>` in C)
+ ["@type.definition"] = { link = "@type" },
+
+ -- attribute annotations (e.g. Python decorators, Rust lifetimes)
+ ["@attribute"] = { link = "Function" },
+ -- builtin annotations (e.g. `@property` in Python)
+ ["@attribute.builtin"] = { link = "@attribute" },
+ -- the key in key/value pairs
+ ["@property"] = { fg = colors.fg },
+
+ -- function definitions
+ ["@function"] = { link = "Function" },
+ -- built-in functions
+ ["@function.builtin"] = { link = "@function" },
+ -- function calls
+ ["@function.call"] = { link = "@function" },
+ -- preprocessor macros
+ ["@function.macro"] = { link = "@constant.macro" },
+
+ -- method definitions
+ ["@function.method"] = { link = "@function" },
+ -- method calls
+ ["@function.method.call"] = { link = "@function.method" },
+
+ -- constructor calls and definitions
+ ["@constructor"] = { link = "@function" },
+ -- this is overriden because for some reason the {} in table inits
+ -- are parsed as constructors, which ig makes sense
+ ["@constructor.lua"] = { fg = colors.fg },
+ -- symbolic operators (e.g. `+` / `*`)
+ ["@operator"] = { fg = colors.fg },
+
+ -- keywords not fitting into specific categories
+ ["@keyword"] = { link = "Keyword" },
+ -- keywords related to coroutines (e.g. `go` in Go, `async/await` in Python)
+ ["@keyword.coroutine"] = { link = "@keyword" },
+ -- keywords that define a function (e.g. `func` in Go, `def` in Python)
+ ["@keyword.function"] = { link = "@keyword" },
+ -- operators that are English words (e.g. `and` / `or`)
+ ["@keyword.operator"] = { link = "@keyword" },
+ -- keywords for including or exporting modules (e.g. `import` / `from` in Python)
+ ["@keyword.import"] = { link = "@keyword" },
+ -- keywords describing namespaces and composite types (e.g. `struct`, `enum`)
+ ["@keyword.type"] = { link = "@keyword" },
+ -- keywords modifying other constructs (e.g. `const`, `static`, `public`)
+ ["@keyword.modifier"] = { link = "@keyword" },
+ -- keywords related to loops (e.g. `for` / `while`)
+ ["@keyword.repeat"] = { link = "@keyword" },
+ -- keywords like `return` and `yield`
+ ["@keyword.return"] = { link = "@keyword" },
+ -- keywords related to debugging
+ ["@keyword.debug"] = { link = "@keyword" },
+ -- keywords related to exceptions (e.g. `throw` / `catch`)
+ ["@keyword.exception"] = { link = "@keyword" },
+
+ -- keywords related to conditionals (e.g. `if` / `else`)
+ ["@keyword.conditional"] = { link = "@keyword" },
+ -- ternary operator (e.g. `?` / `:`)
+ ["@keyword.conditional.ternary"] = { link = "@operator" },
+
+ -- various preprocessor directives & shebangs
+ ["@keyword.directive"] = { link = "@keyword" },
+ -- preprocessor definition directives
+ ["@keyword.directive.define"] = { link = "@keyword" },
+
+ -- delimiters (e.g. `;` / `.` / `,`)
+ ["@punctuation"] = { fg = colors.fg },
+ -- brackets (e.g. `()` / `{}` / `[]`)
+ ["@punctuation.special"] = { fg = colors.cyan },
+ -- special symbols (e.g. `{}` in string interpolation)
+
+ -- line and block comments
+ ["@comment"] = { link = "Comment" },
+ -- comments documenting code
+ ["@comment.documentation"] = { link = "@comment" },
+
+ ["@comment.error"] = { sp = colors.red, underline = true },
+ ["@comment.warning"] = { sp = colors.orange, underline = true },
+ ["@comment.todo"] = { link = "Todo" },
+ ["@comment.note"] = { sp = colors.blue, underline = true },
+
+ ["@markup.strong"] = { bold = true },
+ ["@markup.italic"] = { italic = true },
+ ["@markup.strikethrough"] = { strikethrough = true },
+ ["@markup.underline"] = { underline = true },
+
+ ["@markup.heading"] = { fg = colors.blue },
+
+ ["@markup.link"] = { fg = colors.cyan },
+ ["@markup.link.label"] = { bold = true },
+ ["@markup.link.url"] = { underline = true },
+
+ ["@diff.plus"] = { link = "Added" },
+ ["@diff.delta"] = { link = "Changed" },
+ ["@diff.minus"] = { link = "Removed" },
+
+ ["@tag"] = { link = "htmlTag" },
+ ["@tag.builtin"] = { link = "@tag" },
+ ["@tag.attribute"] = { link = "@property" },
+ ["@tag.delimeter"] = { link = "@tag" },
+
+ ["@none"] = { link = "Normal" },
+}
diff --git a/lua/prismite/groups/plugins/trouble.lua b/lua/prismite/groups/plugins/trouble.lua
new file mode 100644
index 0000000..0b6fdf9
--- /dev/null
+++ b/lua/prismite/groups/plugins/trouble.lua
@@ -0,0 +1,13 @@
+local colors = require "prismite.palette"
+
+return {
+ TroubleIndent = { fg = colors.border },
+ TroubleIndentFoldOpen = { fg = colors.fg },
+ TroubleIndentFoldClose = { fg = colors.fg },
+ TroubleIconDirectory = { fg = colors.fg },
+ TroubleFsCount = { fg = colors.fg },
+ TroubleDiagnosticsPost = { fg = colors.fg },
+ TroubleCode = { fg = colors.cyan },
+ TroubleLspCount = { fg = colors.fg },
+ TroubleLspPos = { fg = colors.fg },
+}