Compare commits

...

9 Commits

Author SHA1 Message Date
quantonganh
34e0f7e82f Add a simple language server for HDL (nand2tetris) (#14415) 2025-09-10 08:45:50 -05:00
Kristoffer Plagborg Bak Sørensen
97293c9f36 feat(languages): add gitlab-ci language specialized from yaml (#14396) 2025-09-10 08:41:04 -05:00
Kristoffer Plagborg Bak Sørensen
71038266e8 feat(highlights): add support for syntax features in hurl version 6.0.0 (#12725) 2025-09-10 08:39:34 -05:00
Charles Hall
05a99c2cca fix white/bright white base16 color mixup (#14409) 2025-09-10 08:38:45 -05:00
Axlefublr
14030d0b63 kdl queries: basic tag.scm and niri injections (#14401) 2025-09-10 08:28:31 -05:00
Abderrahmane TAHRI JOUTI
ff376b0d1a move cyan_light to jetbrains_cyan_light (#14412) 2025-09-10 08:27:25 -05:00
Kristoffer Plagborg Bak Sørensen
d25726f573 feat: add fods and fodt extensions to xml filetype (#14416) 2025-09-10 08:26:52 -05:00
may
8f2af68b30 scheme: add block comment token, textobjects.scm (#14408)
* lang(scheme): add block comment token

* queries(scheme): add comment text objects

* chore: run cargo xtask docgen
2025-09-10 08:26:27 -05:00
Kristoffer Plagborg Bak Sørensen
fe8e21a07f feat(bash): add init scripts for xinit and startx to bash file-types (#14397) 2025-09-10 08:22:10 -05:00
18 changed files with 460 additions and 180 deletions

View File

@@ -86,6 +86,7 @@
| git-ignore | ✓ | | | | | |
| git-notes | ✓ | | | | | |
| git-rebase | ✓ | | | | | |
| gitlab-ci | ✓ | ✓ | ✓ | ✓ | ✓ | `yaml-language-server`, `gitlab-ci-ls` |
| gjs | ✓ | ✓ | ✓ | ✓ | | `typescript-language-server`, `vscode-eslint-language-server`, `ember-language-server` |
| gleam | ✓ | ✓ | | | ✓ | `gleam` |
| glimmer | ✓ | | | | | `ember-language-server` |
@@ -106,7 +107,7 @@
| haskell | ✓ | ✓ | | | | `haskell-language-server-wrapper` |
| haskell-persistent | ✓ | | | | | |
| hcl | ✓ | ✓ | ✓ | | | `terraform-ls` |
| hdl | ✓ | | | | | |
| hdl | ✓ | | | | | `hdls` |
| heex | ✓ | ✓ | | | | `elixir-ls`, `expert` |
| helm | ✓ | | | | | `helm_ls` |
| hocon | ✓ | ✓ | ✓ | | | |
@@ -140,7 +141,7 @@
| julia | ✓ | ✓ | ✓ | | | `julia` |
| just | ✓ | ✓ | ✓ | ✓ | | `just-lsp` |
| kconfig | ✓ | | ✓ | | | |
| kdl | ✓ | ✓ | ✓ | | | |
| kdl | ✓ | ✓ | ✓ | | | |
| koka | ✓ | | ✓ | | | `koka` |
| kotlin | ✓ | ✓ | ✓ | ✓ | | `kotlin-language-server` |
| koto | ✓ | ✓ | ✓ | | | `koto-ls` |
@@ -226,7 +227,7 @@
| rust-format-args-macro | ✓ | ✓ | ✓ | | ✓ | |
| sage | ✓ | ✓ | | | | |
| scala | ✓ | ✓ | ✓ | | | `metals` |
| scheme | ✓ | | ✓ | | ✓ | |
| scheme | ✓ | | ✓ | | ✓ | |
| scss | ✓ | | | | ✓ | `vscode-css-language-server` |
| shellcheckrc | ✓ | ✓ | | | | |
| slang | ✓ | ✓ | ✓ | | | `slangd` |

View File

@@ -301,14 +301,14 @@ impl From<Color> for termina::style::ColorSpec {
Color::Magenta => Self::MAGENTA,
Color::Cyan => Self::CYAN,
Color::Gray => Self::BRIGHT_BLACK,
Color::White => Self::WHITE,
Color::White => Self::BRIGHT_WHITE,
Color::LightRed => Self::BRIGHT_RED,
Color::LightGreen => Self::BRIGHT_GREEN,
Color::LightBlue => Self::BRIGHT_BLUE,
Color::LightYellow => Self::BRIGHT_YELLOW,
Color::LightMagenta => Self::BRIGHT_MAGENTA,
Color::LightCyan => Self::BRIGHT_CYAN,
Color::LightGray => Self::BRIGHT_WHITE,
Color::LightGray => Self::WHITE,
Color::Indexed(i) => Self::PaletteIndex(i),
Color::Rgb(r, g, b) => termina::style::RgbColor::new(r, g, b).into(),
}

View File

@@ -50,11 +50,13 @@ forc = { command = "forc", args = ["lsp"] }
forth-lsp = { command = "forth-lsp" }
fortls = { command = "fortls", args = ["--lowercase_intrinsics"] }
fsharp-ls = { command = "fsautocomplete", config = { AutomaticWorkspaceInit = true } }
gitlab-ci-ls = { command = "gitlab-ci-ls" }
gleam = { command = "gleam", args = ["lsp"] }
glsl_analyzer = { command = "glsl_analyzer" }
graphql-language-service = { command = "graphql-lsp", args = ["server", "-m", "stream"] }
harper-ls = { command = "harper-ls", args = ["--stdio"] }
haskell-language-server = { command = "haskell-language-server-wrapper", args = ["--lsp"] }
hdls = { command = "hdls" }
hyprls = { command = "hyprls" }
idris2-lsp = { command = "idris2-lsp" }
intelephense = { command = "intelephense", args = ["--stdio"] }
@@ -1157,6 +1159,10 @@ file-types = [
{ glob = ".yashrc" },
{ glob = ".yash_profile" },
{ glob = ".hushlogin" },
{ glob = ".xinitrc" }, # ~/.xinitrc
{ glob = "xinitrc" }, # /etc/X11/xinit/xinitrc
{ glob = ".xserverrc" }, # ~/.xserverrc
{ glob = "xserverrc" }, # /etc/X11/xinit/xserverrc
]
shebangs = ["sh", "bash", "dash", "zsh"]
comment-token = "#"
@@ -2513,6 +2519,7 @@ injection-regex = "scheme"
file-types = ["ss", "scm", "sld"]
shebangs = ["scheme", "guile", "chicken"]
comment-token = ";"
block-comment-tokens = { start = "#|", end = "|#" }
indent = { tab-width = 2, unit = " " }
[language.auto-pairs]
@@ -3006,6 +3013,8 @@ file-types = [
"mpd",
"smil",
"gpx",
"fodt",
"fods",
]
block-comment-tokens = { start = "<!--", end = "-->" }
indent = { tab-width = 2, unit = " " }
@@ -3393,10 +3402,11 @@ scope = "source.hdl"
file-types = ["hdl"]
indent = { tab-width = 4, unit = " " }
injection-regex = "hdl"
language-servers = [ "hdls" ]
[[grammar]]
name = "hdl"
source = { git = "https://github.com/quantonganh/tree-sitter-hdl", rev = "7d0418fd71470b0430e6f914cc76c1a9d968491d" }
source = { git = "https://github.com/quantonganh/tree-sitter-hdl", rev="293902330423b2cd36ab1ec4b6b967163a4ed57b" }
[[language]]
name = "vhdl"
@@ -3467,7 +3477,7 @@ indent = { tab-width = 2, unit = " " }
[[grammar]]
name = "hurl"
source = { git = "https://github.com/pfeiferj/tree-sitter-hurl", rev = "cd1a0ada92cc73dd0f4d7eedc162be4ded758591" }
source = { git = "https://github.com/pfeiferj/tree-sitter-hurl", rev = "1124058cd192e80d80914652a5850a5b1887cc10" }
[[language]]
name = "markdoc"
@@ -4768,3 +4778,13 @@ comment-token = "#"
block-comment-tokens = { start = "/*", end = "*/" }
indent = { tab-width = 2, unit = " " }
language-servers = ["docker-language-server"]
[[language]]
name = "gitlab-ci"
scope = "source.gitlab-ci"
injection-regex = "^gitlab-ci$"
file-types = [{ glob = ".gitlab-ci.yml" }]
grammar = "yaml"
indent = { tab-width = 2, unit = " " }
language-servers = ["yaml-language-server", "gitlab-ci-ls"]
comment-token = "#"

View File

@@ -0,0 +1,89 @@
(boolean_scalar) @constant.builtin.boolean
(null_scalar) @constant.builtin
(double_quote_scalar) @string
(single_quote_scalar) @string
(block_scalar) @string
(string_scalar) @string
(escape_sequence) @constant.character.escape
(integer_scalar) @constant.numeric.integer
(float_scalar) @constant.numeric.float
(comment) @comment
(anchor_name) @type
(alias_name) @type
(tag) @type
(yaml_directive) @keyword
(block_mapping_pair
key: (flow_node [(double_quote_scalar) (single_quote_scalar)] @variable.other.member))
(block_mapping_pair
key: (flow_node (plain_scalar (string_scalar) @variable.other.member)))
(flow_mapping
(_ key: (flow_node [(double_quote_scalar) (single_quote_scalar)] @variable.other.member)))
(flow_mapping
(_ key: (flow_node (plain_scalar (string_scalar) @variable.other.member))))
[
","
"-"
":"
">"
"?"
"|"
] @punctuation.delimiter
[
"["
"]"
"{"
"}"
] @punctuation.bracket
["*" "&" "---" "..."] @punctuation.special
; Highlight the toplevel keys differently as keywords
(block_mapping_pair
key: (flow_node (plain_scalar (string_scalar) @keyword (#any-of? @keyword "variables" "stages" "default" "include" "workflow"))) )
; Highlight the builtin stages differently
; <https://docs.gitlab.com/ci/yaml/#stages>
(block_mapping_pair
key: (flow_node
(plain_scalar
(string_scalar) @variable.other.member (#eq? @variable.other.member "stage")))
value: (flow_node
(plain_scalar
(string_scalar) @constant.builtin (#any-of? @constant.builtin ".pre" "build" "test" "deploy" ".post"))))
; e.g.
; ```
; stages:
; - build
; - test
; ```
(block_mapping_pair
key: (flow_node
(plain_scalar
(string_scalar) @keyword (#eq? @keyword "stages")))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar
(string_scalar) @constant.builtin (#any-of? @constant.builtin ".pre" "build" "test" "deploy" ".post")))))))
; Highlight defined variable names as @variable
; Matches on:
; ```
; variables:
; <variable>: ...
; ```
(block_mapping_pair
key: (flow_node
(plain_scalar
(string_scalar) @keyword (#eq? @keyword "variables")))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node) @variable)+)))

View File

@@ -0,0 +1 @@
; inherits: yaml

View File

@@ -0,0 +1,51 @@
((comment) @injection.content
(#set! injection.language "comment"))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "script" "before_script" "after_script" "pre_get_sources_script" "command" "entrypoint")
value: (flow_node
(plain_scalar
(string_scalar) @injection.content)
(#set! injection.language "bash")))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "script" "before_script" "after_script" "pre_get_sources_script" "command" "entrypoint")
value: (block_node
(block_scalar) @injection.content
(#set! injection.language "bash")))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "script" "before_script" "after_script" "pre_get_sources_script" "command" "entrypoint")
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar
(string_scalar) @injection.content))
(#set! injection.language "bash")))))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "script" "before_script" "after_script" "pre_get_sources_script" "command" "entrypoint")
value: (block_node
(block_sequence
(block_sequence_item
(block_node
(block_scalar) @injection.content
(#set! injection.language "bash"))))))
; e.g.
; ```
; job1:
; services:
; entrypoint: ["/usr/local/bin/docker-entrypoint.sh", "-c", 'max_connections=100']
; ```
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "command" "entrypoint")
value: (flow_node
(flow_sequence
(flow_node
[
(double_quote_scalar)
(single_quote_scalar)
] @injection.content)))
(#set! injection.language "bash"))

View File

@@ -0,0 +1 @@
; inherits: yaml

View File

@@ -0,0 +1,17 @@
; select jobs
(block_mapping
(block_mapping_pair
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node) @_key (#eq? @_key "stage"))))) @definition.struct)
; select defined variables under `variables:`
(block_mapping
(block_mapping_pair
key: (flow_node) @_key (#eq? @_key "variables")
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node) @name
value: (_) @definition.constant)))))

View File

@@ -0,0 +1 @@
; inherits: yaml

View File

@@ -4,6 +4,8 @@
"IN"
"OUT"
"PARTS"
"BUILTIN"
"CLOCKED"
] @keyword
(identifier) @variable
@@ -17,12 +19,26 @@
(out_section
output_pin_name: (identifier) @variable.parameter)
(builtin_body
chip_name: (identifier) @function)
(clocked_body
(identifier) @variable.parameter)
(part
chip_name: (identifier) @function)
(connection
part_pin: (identifier) @variable.other.member
chip_pin: (identifier) @variable.parameter)
chip_pin: [
(identifier) @variable.parameter
(bus_identifier
(identifier) @variable.parameter
(number) @constant.numeric)
])
(bus_identifier
(number) @constant.numeric)
;; Comments
(comment) @comment

View File

@@ -1,7 +1,10 @@
[
"[QueryStringParams]"
"[Query]"
"[FormParams]"
"[Form]"
"[MultipartFormData]"
"[Multipart]"
"[Cookies]"
"[Captures]"
"[Asserts]"
@@ -116,6 +119,9 @@
"isBoolean"
"isString"
"isCollection"
"isNumber"
"isIsoDate"
"isEmpty"
] @keyword.operator
(integer) @constant.numeric.integer

View File

@@ -0,0 +1,63 @@
; match/exclude regex with regular string
(node
(identifier) @_section_name
(#any-of? @_section_name "window-rule" "layer-rule")
children: (node_children
(node
(identifier) @_node_name
(#any-of? @_node_name "match" "exclude")
(node_field
(prop
(identifier) @_prop_name
(#any-of? @_prop_name "app-id" "title" "namespace")
(value
(string
(string_fragment) @injection.content
(#set! injection.language "regex")
)
)
)
)
)
)
)
(node
(identifier) @_section
(#eq? @_section "binds")
children: (node_children
(node
(identifier)
children: (node_children
(node
(identifier) @_action_name
(#eq? @_action_name "spawn")
(node_field
(value
(string
(string_fragment) @_executable
(#eq? @_executable "fish")
)
)
)
(node_field
(value
(string
(string_fragment) @_flag
(#eq? @_flag "-c")
)
)
)
(node_field
(value
(string
(string_fragment) @injection.content
(#set! injection.language "fish")
)
)
)
)
)
)
)
)

View File

@@ -0,0 +1,3 @@
(node (identifier) @definition.struct
children: _
)

View File

@@ -0,0 +1,7 @@
[
(comment)
(block_comment)
] @comment.inside
(comment)+ @comment.around
(block_comment) @comment.around

View File

@@ -21,23 +21,22 @@
; Modified for Helix from https://github.com/nvim-treesitter/nvim-treesitter/blob/master/queries/yaml/injections.scm
;; GitHub actions: run
;; Gitlab CI: scripts, before_script, after_script
;; Buildkite: command, commands
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "run" "script" "before_script" "after_script" "command" "commands")
key: (flow_node) @_run (#any-of? @_run "run" "command" "commands")
value: (flow_node
(plain_scalar
(string_scalar) @injection.content)
(#set! injection.language "bash")))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "run" "script" "before_script" "after_script" "command" "commands")
key: (flow_node) @_run (#any-of? @_run "run" "command" "commands")
value: (block_node
(block_scalar) @injection.content
(#set! injection.language "bash")))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "run" "script" "before_script" "after_script" "command" "commands")
key: (flow_node) @_run (#any-of? @_run "run" "command" "commands")
value: (block_node
(block_sequence
(block_sequence_item
@@ -47,7 +46,7 @@
(#set! injection.language "bash")))))
(block_mapping_pair
key: (flow_node) @_run (#any-of? @_run "run" "script" "before_script" "after_script" "command" "commands")
key: (flow_node) @_run (#any-of? @_run "run" "command" "commands")
value: (block_node
(block_sequence
(block_sequence_item

View File

@@ -1,168 +1,5 @@
# Cyan Light
# Adapted from JetBrains' Cyan Light Theme https://plugins.jetbrains.com/plugin/12102-cyan-light-theme
# Author: Abderrahmane Tahri Jouti <tj.abderrahmane@gmail.com>
# Deprecation notice
#
# This theme has moved to jetbrains_cyan_light, make sure to update your configuration accordingly.
# Original Author : Olga Berdnikova
# LICENSE : MIT
# Source: https://github.com/OlyaB/CyanTheme
"attribute" = "blue"
"type" = "shade07"
"type.enum.variant" = "purple"
"constructor" = "shade07"
"constant" = "darker_blue"
"constant.builtin.boolean" = "blue"
"constant.character" = "blue"
"constant.character.escape" = "dark_red"
"constant.numeric" = "blue"
"string" = "green"
"string.regexp" = "blue"
"string.special" = { fg = "dark_red", modifiers = ["underlined"] }
"comment" = "comment_gray"
"variable" = "green_blue"
"variable.builtin" = { fg = "darker_blue" }
"variable.parameter" = "purple"
"variable.other.member" = "purple"
"label" = { fg = "darker_blue", modifiers = ["underlined"] }
"punctuation" = "shade06"
"keyword" = "darker_blue"
"keyword.control.exception" = "darker_blue"
"operator" = "shade06"
"function" = "shade07"
"function.macro" = "yellow"
"function.builtin" = { fg = "shade07", modifiers = ["italic"] }
"function.special" = "dark_red"
"function.method" = "dark_yellow"
"tag" = "darker_blue"
"special" = "shade06"
"namespace" = "darker_blue"
"markup.bold" = { fg = "shade06", modifiers = ["bold"] }
"markup.italic" = { fg = "shade06", modifiers = ["italic"] }
"markup.strikethrough" = { fg = "shade06", modifiers = ["crossed_out"] }
"markup.heading" = { fg = "purple" }
"markup.list" = "darker_blue"
"markup.list.numbered" = "darker_blue"
"markup.list.unnumbered" = "darker_blue"
"markup.link.url" = "shade06"
"markup.link.text" = { fg = "dark_blue", modifiers = ['underlined'] }
"markup.link.label" = "dark_blue"
"markup.quote" = "green"
"markup.raw" = "green"
"markup.raw.inline" = "green"
"markup.raw.block" = "green"
"diff.plus" = "green"
"diff.plus.gutter" = "gutter_green"
"diff.minus" = "red"
"diff.minus.gutter" = "gutter_red"
"diff.delta" = "blue"
"diff.delta.gutter" = "gutter_blue"
# ui specific
"ui.background" = { bg = "shade00" }
"ui.cursor" = { bg = "shade02" }
"ui.cursor.primary" = { bg = "cursor_blue" }
"ui.cursor.match" = { fg = "shade00", bg = "shade04" }
"ui.cursor.primary.select" = { bg = "light_purple" }
"ui.cursor.primary.insert" = { bg = "light_green" }
"ui.selection" = { bg = "lighter_blue" }
"ui.selection.primary" = { bg = "lighter_blue" }
"ui.highlight" = { bg = "faint_blue" }
"ui.cursorline.primary" = { bg = "faint_blue" }
"ui.linenr" = { fg = "shade03" }
"ui.linenr.selected" = { fg = "shade04", bg = "faint_blue", modifiers = [
"bold",
] }
"ui.statusline" = { fg = "shade06", bg = "shade01" }
"ui.statusline.inactive" = { fg = "shade04", bg = "shade00" }
"ui.statusline.normal" = { fg = "shade00", bg = "blue" }
"ui.statusline.insert" = { fg = "shade00", bg = "green" }
"ui.statusline.select" = { fg = "shade00", bg = "purple" }
"ui.popup" = { fg = "shade04", bg = "shade01_lighter" }
"ui.window" = { fg = "shade04", bg = "shade00" }
"ui.help" = { fg = "shade06", bg = "shade00" }
"ui.text" = "shade05"
"ui.text.focus" = { fg = "shade07", bg = "light_blue" }
"ui.text.directory" = "blue"
"ui.virtual" = "shade03"
"ui.virtual.ruler" = { bg = "shade01" }
"ui.virtual.inlay-hint" = { fg = "shade03_darker" }
"ui.virtual.jump-label" = { fg = "shade07", bg = "shade01", modifiers = ["bold" ] }
"ui.menu" = { fg = "shade05", bg = "shade01_lighter" }
"ui.menu.selected" = { fg = "shade07", bg = "light_blue" }
"hint" = "shade04"
"info" = "light_blue"
"warning" = "orange"
"error" = "red"
"diagnostic" = { modifiers = [] }
"diagnostic.hint" = { underline = { color = "shade04", style = "line" } }
"diagnostic.info" = { underline = { color = "light_blue", style = "line" } }
"diagnostic.warning" = { underline = { color = "orange", style = "curl" } }
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
"diagnostic.unnecessary" = { modifiers = ["dim"] }
"diagnostic.deprecated" = { modifiers = ["crossed_out"] }
[palette]
shade00 = "#f2f3f7"
shade01 = "#dadde8"
shade02 = "#c1c6d9"
shade03 = "#a9b0ca"
shade04 = "#525c85"
shade05 = "#434b6c"
shade06 = "#343a54"
shade07 = "#25293c"
shade01_lighter = "#e6e8f0"
shade03_darker = "#9199bb"
shade04_lighter = "#616d9d"
background = "#f2f3f7"
foreground = "#25293c"
comment_gray = "#808080"
gutter_blue = "#C3D6E8"
faint_blue = "#E8Eef1"
lighter_blue = "#d0eaff"
light_blue = "#99ccff"
cursor_blue = "#80bfff"
blue = "#0073E6"
dark_blue = "#185b93"
darker_blue = "#000080"
purple = "#660E7A"
light_purple = "#ED9CFF"
gutter_green = "#C9DEC1"
green = "#00733B"
light_green = "#5DCE87"
green_blue = "#458383"
yellow = "#808000"
dark_yellow = "#7A7A43"
light_orange = "#f9c881"
orange = "#F49810"
gutter_red = "#EBBCBC"
red = "#d90016"
dark_red = "#7F0000"
inherits = "jetbrains_cyan_light"

View File

@@ -0,0 +1,168 @@
# Jetbrains Cyan Light
# Adapted from JetBrains' Cyan Light Theme https://plugins.jetbrains.com/plugin/12102-cyan-light-theme
# Author: Abderrahmane Tahri Jouti <tj.abderrahmane@gmail.com>
# Original Author : Olga Berdnikova
# LICENSE : MIT
# Source: https://github.com/OlyaB/CyanTheme
"attribute" = "blue"
"type" = "shade07"
"type.enum.variant" = "purple"
"constructor" = "shade07"
"constant" = "darker_blue"
"constant.builtin.boolean" = "blue"
"constant.character" = "blue"
"constant.character.escape" = "dark_red"
"constant.numeric" = "blue"
"string" = "green"
"string.regexp" = "blue"
"string.special" = { fg = "dark_red", modifiers = ["underlined"] }
"comment" = "comment_gray"
"variable" = "green_blue"
"variable.builtin" = { fg = "darker_blue" }
"variable.parameter" = "purple"
"variable.other.member" = "purple"
"label" = { fg = "darker_blue", modifiers = ["underlined"] }
"punctuation" = "shade06"
"keyword" = "darker_blue"
"keyword.control.exception" = "darker_blue"
"operator" = "shade06"
"function" = "shade07"
"function.macro" = "yellow"
"function.builtin" = { fg = "shade07", modifiers = ["italic"] }
"function.special" = "dark_red"
"function.method" = "dark_yellow"
"tag" = "darker_blue"
"special" = "shade06"
"namespace" = "darker_blue"
"markup.bold" = { fg = "shade06", modifiers = ["bold"] }
"markup.italic" = { fg = "shade06", modifiers = ["italic"] }
"markup.strikethrough" = { fg = "shade06", modifiers = ["crossed_out"] }
"markup.heading" = { fg = "purple" }
"markup.list" = "darker_blue"
"markup.list.numbered" = "darker_blue"
"markup.list.unnumbered" = "darker_blue"
"markup.link.url" = "shade06"
"markup.link.text" = { fg = "dark_blue", modifiers = ['underlined'] }
"markup.link.label" = "dark_blue"
"markup.quote" = "green"
"markup.raw" = "green"
"markup.raw.inline" = "green"
"markup.raw.block" = "green"
"diff.plus" = "green"
"diff.plus.gutter" = "gutter_green"
"diff.minus" = "red"
"diff.minus.gutter" = "gutter_red"
"diff.delta" = "blue"
"diff.delta.gutter" = "gutter_blue"
# ui specific
"ui.background" = { bg = "shade00" }
"ui.cursor" = { bg = "shade02" }
"ui.cursor.primary" = { bg = "cursor_blue" }
"ui.cursor.match" = { fg = "shade00", bg = "shade04" }
"ui.cursor.primary.select" = { bg = "light_purple" }
"ui.cursor.primary.insert" = { bg = "light_green" }
"ui.selection" = { bg = "lighter_blue" }
"ui.selection.primary" = { bg = "lighter_blue" }
"ui.highlight" = { bg = "faint_blue" }
"ui.cursorline.primary" = { bg = "faint_blue" }
"ui.linenr" = { fg = "shade03" }
"ui.linenr.selected" = { fg = "shade04", bg = "faint_blue", modifiers = [
"bold",
] }
"ui.statusline" = { fg = "shade06", bg = "shade01" }
"ui.statusline.inactive" = { fg = "shade04", bg = "shade00" }
"ui.statusline.normal" = { fg = "shade00", bg = "blue" }
"ui.statusline.insert" = { fg = "shade00", bg = "green" }
"ui.statusline.select" = { fg = "shade00", bg = "purple" }
"ui.popup" = { fg = "shade04", bg = "shade01_lighter" }
"ui.window" = { fg = "shade04", bg = "shade00" }
"ui.help" = { fg = "shade06", bg = "shade00" }
"ui.text" = "shade05"
"ui.text.focus" = { fg = "shade07", bg = "light_blue" }
"ui.text.directory" = "blue"
"ui.virtual" = "shade03"
"ui.virtual.ruler" = { bg = "shade01" }
"ui.virtual.inlay-hint" = { fg = "shade03_darker" }
"ui.virtual.jump-label" = { fg = "shade07", bg = "shade01", modifiers = ["bold" ] }
"ui.menu" = { fg = "shade05", bg = "shade01_lighter" }
"ui.menu.selected" = { fg = "shade07", bg = "light_blue" }
"hint" = "shade04"
"info" = "light_blue"
"warning" = "orange"
"error" = "red"
"diagnostic" = { modifiers = [] }
"diagnostic.hint" = { underline = { color = "shade04", style = "line" } }
"diagnostic.info" = { underline = { color = "light_blue", style = "line" } }
"diagnostic.warning" = { underline = { color = "orange", style = "curl" } }
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
"diagnostic.unnecessary" = { modifiers = ["dim"] }
"diagnostic.deprecated" = { modifiers = ["crossed_out"] }
[palette]
shade00 = "#f2f3f7"
shade01 = "#dadde8"
shade02 = "#c1c6d9"
shade03 = "#a9b0ca"
shade04 = "#525c85"
shade05 = "#434b6c"
shade06 = "#343a54"
shade07 = "#25293c"
shade01_lighter = "#e6e8f0"
shade03_darker = "#9199bb"
shade04_lighter = "#616d9d"
background = "#f2f3f7"
foreground = "#25293c"
comment_gray = "#808080"
gutter_blue = "#C3D6E8"
faint_blue = "#E8Eef1"
lighter_blue = "#d0eaff"
light_blue = "#99ccff"
cursor_blue = "#80bfff"
blue = "#0073E6"
dark_blue = "#185b93"
darker_blue = "#000080"
purple = "#660E7A"
light_purple = "#ED9CFF"
gutter_green = "#C9DEC1"
green = "#00733B"
light_green = "#5DCE87"
green_blue = "#458383"
yellow = "#808000"
dark_yellow = "#7A7A43"
light_orange = "#f9c881"
orange = "#F49810"
gutter_red = "#EBBCBC"
red = "#d90016"
dark_red = "#7F0000"