Skip to content

Instantly share code, notes, and snippets.

@circleous
Created December 8, 2025 08:30
Show Gist options
  • Select an option

  • Save circleous/fc1530dd9ca0bba0f285f71aacb8cc9a to your computer and use it in GitHub Desktop.

Select an option

Save circleous/fc1530dd9ca0bba0f285f71aacb8cc9a to your computer and use it in GitHub Desktop.
MatteBlack Helix Editor Colorscheme (https://matteblacktheme.com/)
# Matte Black theme for Helix
# Port of matteblack.nvim - A sophisticated, low-contrast dark theme
# Syntax highlighting
# -------------------
"attribute" = "amber"
"type" = "yellow"
"type.enum.variant" = "teal"
"type.builtin" = { fg = "orange", modifiers = ["italic"] }
"type.definition" = "yellow"
"type.qualifier" = "orange"
"type.interface" = { fg = "yellow", modifiers = ["italic"] }
"type.parameter" = { fg = "yellow", modifiers = ["italic"] }
"constructor" = "yellow"
"constant" = "amber"
"constant.builtin" = "amber"
"constant.character" = "gold"
"constant.character.escape" = "gold"
"constant.macro" = "yellow"
"string" = "text"
"string.documentation" = "text"
"string.regexp" = "amber"
"string.escape" = "gold"
"string.special" = "gold"
"string.special.symbol" = "gold"
"string.special.path" = "gold"
"string.special.url" = { fg = "orange", modifiers = ["italic", "underlined"] }
"character" = "gold"
"character.special" = "gold"
"number" = "gold"
"number.float" = "gold"
"boolean" = "teal"
"comment" = { fg = "#6B7280", modifiers = ["italic"] }
"comment.documentation" = { fg = "#6B7280", modifiers = ["italic"] }
"comment.error" = { fg = "#EF4444", modifiers = ["italic"] }
"comment.warning" = { fg = "#F59E0B", modifiers = ["italic"] }
"comment.todo" = { fg = "#FBBF24", modifiers = ["italic"] }
"comment.note" = { fg = "#6B7280", modifiers = ["italic"] }
"comment.hint" = { fg = "#6B7280", modifiers = ["italic"] }
"comment.hack" = { fg = "#F59E0B", modifiers = ["italic"] }
"comment.fixme" = { fg = "#EF4444", modifiers = ["bold"] }
"comment.xxx" = { fg = "#A855F7", modifiers = ["bold"] }
"variable" = "amber"
"variable.builtin" = "blue"
"variable.parameter" = { fg = "gray2", modifiers = ["italic"] }
"variable.member" = "text"
"variable.other.member" = "orange"
"variable.global" = "amber"
"variable.special" = { fg = "blue", modifiers = ["italic"] }
"field" = "orange"
"property" = "orange"
"label" = "green" # used for lifetimes
"punctuation" = "gray3"
"punctuation.delimiter" = "gray3"
"punctuation.bracket" = "gray3"
"punctuation.special" = "blue"
"punctuation.special.symbol" = "blue"
"keyword" = "green"
"keyword.function" = "green"
"keyword.operator" = "gray2"
"keyword.return" = "green"
"keyword.import" = "green"
"keyword.conditional" = { fg = "green", modifiers = ["italic"] }
"keyword.repeat" = "green"
"keyword.exception" = "green"
"keyword.directive" = "blue"
"keyword.directive.define" = "yellow"
"keyword.modifier" = "green"
"operator" = "gray2"
"function" = "crimson"
"function.builtin" = "amber"
"function.call" = "orange"
"function.macro" = "yellow"
"function.method" = "orange"
"function.method.call" = "orange"
"function.decorator" = "amber"
"tag" = "green"
"tag.attribute" = { fg = "amber", modifiers = ["italic"] }
"tag.delimiter" = "gray2"
"namespace" = { fg = "ochre", modifiers = ["italic"] }
"module" = { fg = "ochre", modifiers = ["italic"] }
"decorator" = "amber"
"special" = "blue" # fuzzy highlight
"special.char" = "gold"
"preproc" = "yellow"
"include" = "blue"
"define" = "yellow"
"conditional" = "green"
"repeat" = "green"
"exception" = "green"
"markup.heading.1" = "amber"
"markup.heading.2" = "amber"
"markup.heading.3" = "amber"
"markup.heading.4" = "amber"
"markup.heading.5" = "amber"
"markup.heading.6" = "amber"
"markup.list" = "orange"
"markup.list.unchecked" = "orange"
"markup.list.checked" = "teal"
"markup.bold" = { fg = "text", modifiers = ["bold"] }
"markup.italic" = { fg = "text", modifiers = ["italic"] }
"markup.link.url" = { fg = "orange", modifiers = ["italic", "underlined"] }
"markup.link.text" = "orange"
"markup.link.label" = "orange"
"markup.raw" = "text"
"markup.quote" = { fg = "gray3", modifiers = ["italic"] }
"diff.plus" = "teal"
"diff.minus" = "crimson"
"diff.delta" = "orange"
# User Interface
# --------------
"ui.background" = { fg = "text", bg = "base" }
"ui.background.separator" = "bg2"
"ui.linenr" = { fg = "bg2" }
"ui.linenr.selected" = { fg = "orange" }
"ui.statusline" = { fg = "text", bg = "bg3" }
"ui.statusline.inactive" = { fg = "gray3", bg = "bg2" }
"ui.statusline.normal" = { fg = "base", bg = "orange", modifiers = ["bold"] }
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
"ui.statusline.select" = { fg = "base", bg = "blue", modifiers = ["bold"] }
"ui.popup" = { fg = "text", bg = "bg3" }
"ui.popup.info" = { fg = "text", bg = "bg3" }
"ui.window" = { fg = "bg2" }
"ui.help" = { fg = "gray2", bg = "bg3" }
"ui.bufferline" = { fg = "gray3", bg = "bg2" }
"ui.bufferline.active" = { fg = "text", bg = "base", underline = { color = "orange", style = "line" } }
"ui.bufferline.background" = { bg = "bg0" }
"ui.text" = "text"
"ui.text.focus" = { fg = "text", bg = "bg2", modifiers = ["bold"] }
"ui.text.inactive" = { fg = "gray3" }
"ui.text.directory" = { fg = "blue" }
"ui.virtual" = "bg2"
"ui.virtual.ruler" = { bg = "bg3" }
"ui.virtual.indent-guide" = "bg2"
"ui.virtual.inlay-hint" = { fg = "gray3", bg = "bg3" }
"ui.virtual.jump-label" = { fg = "orange", modifiers = ["bold"] }
"ui.virtual.wrap" = "bg2"
"ui.selection" = { bg = "#404040" }
"ui.selection.primary" = { bg = "#505050" }
"ui.cursor" = { fg = "#121212", bg = "#F59E0B" }
"ui.cursor.primary" = { fg = "#121212", bg = "#F59E0B" }
"ui.cursor.match" = { fg = "#F59E0B", modifiers = ["bold"] }
"ui.cursor.primary.normal" = { fg = "#121212", bg = "#F59E0B" }
"ui.cursor.primary.insert" = { fg = "#121212", bg = "#059669" }
"ui.cursor.primary.select" = { fg = "#121212", bg = "#3B82F6" }
"ui.cursor.normal" = { fg = "#121212", bg = "#737373" }
"ui.cursor.insert" = { fg = "#121212", bg = "#059669" }
"ui.cursor.select" = { fg = "#121212", bg = "#3B82F6" }
"ui.cursorline.primary" = { bg = "bg3" }
"ui.highlight" = { bg = "bg2", modifiers = ["bold"] }
"ui.menu" = { fg = "gray2", bg = "bg3" }
"ui.menu.selected" = { fg = "text", bg = "bg2", modifiers = ["bold"] }
"ui.menu.scroll" = { fg = "gray3", bg = "bg2" }
"ui.debug.breakpoint" = "crimson"
"ui.debug.active" = "green"
"ui.gutter" = "bg1"
"ui.gutter.selected" = "bg3"
"ui.search" = { fg = "base", bg = "orange" }
"ui.search.focused" = { fg = "base", bg = "gold" }
"ui.cursorcolumn.primary" = { bg = "bg3" }
"ui.spinner" = "orange"
"ui.bar" = "bg2"
"ui.tree" = "gray3"
"ui.filetype" = { fg = "gray3", modifiers = ["bold"] }
"ui.picker" = { fg = "text", bg = "bg3" }
"ui.picker.column" = "gray3"
"ui.picker.row.cursor" = { bg = "bg2", modifiers = ["bold"] }
"diagnostic.error" = { underline = { color = "crimson", style = "curl" } }
"diagnostic.warning" = { underline = { color = "amber", style = "curl" } }
"diagnostic.info" = { underline = { color = "gold", style = "curl" } }
"diagnostic.hint" = { underline = { color = "blue", style = "curl" } }
"diagnostic.unnecessary" = { modifiers = ["dim"] }
"diagnostic.deprecated" = { modifiers = ["crossed_out"] }
error = "crimson"
warning = "amber"
info = "gold"
hint = "blue"
success = "teal"
rainbow = ["red", "peach", "yellow", "green", "sapphire", "lavender"]
# Language-specific enhancements
# These provide additional highlighting for specific language constructs
# JavaScript/TypeScript
"keyword.js" = "green"
"keyword.ts" = "green"
"function.js" = "crimson"
"function.ts" = "crimson"
# Python
"function.builtin.python" = "amber"
"variable.builtin.python" = { fg = "blue", modifiers = ["italic"] }
"keyword.python" = "green"
# Rust
"keyword.rust" = "green"
"function.rust" = "crimson"
"macro.rust" = "yellow"
# Go
"keyword.go" = "green"
"function.go" = "crimson"
# Lua
"function.builtin.lua" = "amber"
"variable.builtin.lua" = { fg = "blue", modifiers = ["italic"] }
# Special character sequences
"character.printf" = "gold"
[palette]
# Base shades - mapped from nvim to Helix naming
bg0 = "#0D0D0D" # deepest black
base = "#121212" # main background
mantle = "#212121" # secondary background
crust = "#262626" # tertiary background
surface0 = "#333333" # surface elements
surface1 = "#212121" # hover/selection
surface2 = "#262626" # borders
# Text hierarchy
text = "#EAEAEA" # main foreground (fg1)
subtext1 = "#FFFFFF" # bright text (fg0)
subtext0 = "#BEBEBE" # dimmed text (fg2)
overlay2 = "#8A8A8D" # comments (fg3/comment)
overlay1 = "#5C6370" # subtle elements (gray)
overlay0 = "#333333" # very subtle
# Accent colors - matching the original nvim theme
rosewater = "#f5e0dc"
flamingo = "#f2cdcd"
pink = "#f5c2e7"
mauve = "#cba6f7"
red = "#B91C1C"
crimson = "#DC2626"
maroon = "#eba0ac"
peach = "#fab387"
orange = "#F59E0B"
amber = "#D97706"
yellow = "#FBBF24"
gold = "#EFBF04"
ochre = "#BF9903"
green = "#059669"
teal = "#10B981"
sky = "#89dceb"
sapphire = "#74c7ec"
blue = "#3B82F6"
purple = "#8D20B2"
cyan = "#1EA7A0"
lavender = "#b4befe"
magenta = "#B027DE"
# Additional grays for specific uses
gray = "#5C6370"
gray1 = "#A3A3A3"
gray2 = "#737373"
gray3 = "#8A8A8D"
gray4 = "#333333"
# Special colors for UI elements
cursorline = "#212121"
secondary_cursor = "#b5a6a8"
secondary_cursor_select = "#878ec0"
secondary_cursor_normal = "#b5a6a8"
secondary_cursor_insert = "#7ea87f"
# Terminal colors (mapped from nvim terminal colors)
# These are used for the integrated terminal in Helix
"terminal.black" = "bg2"
"terminal.red" = "crimson"
"terminal.green" = "#129B70"
"terminal.yellow" = "orange"
"terminal.blue" = "#325DCA"
"terminal.magenta" = "purple"
"terminal.cyan" = "cyan"
"terminal.white" = "gray2"
"terminal.bright_black" = "gray3"
"terminal.bright_red" = "#E62222"
"terminal.bright_green" = "#22C55E"
"terminal.bright_yellow" = "#F1CB42"
"terminal.bright_blue" = "#3C71F6"
"terminal.bright_magenta" = "magenta"
"terminal.bright_cyan" = "#24D0C7"
"terminal.bright_white" = "subtext1"
"terminal.background" = "base"
"terminal.foreground" = "text"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment