mirror of https://github.com/helix-editor/helix
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
480 lines
31 KiB
TOML
480 lines
31 KiB
TOML
# aurara
|
|
# a messy mix of aura (dark, soft), noctis, and liberal use of helix's text styling
|
|
# Author : rahil/rathewolf <rahil627@berkeley.edu>
|
|
|
|
# aura ported by:
|
|
# Author: elainabialkowski
|
|
|
|
# aura originally by:
|
|
# Author: Dalton Menezes
|
|
# License: MIT
|
|
|
|
# noctis ported by:
|
|
# Author: 0rphee
|
|
# who used this template: https://github.com/n0s4/helix-theme-template
|
|
|
|
# noctis originally by:
|
|
# Author: Liviu Schera and contributors
|
|
# License: MIT
|
|
|
|
|
|
# design
|
|
# mostly from natural convergences
|
|
# "soft"/"dim"/low-brightness colors
|
|
# this should've been done on the app/terminal level.. however, since i've already used mostly low-brightness colors, perhaps there can be special cases to use brighter colors, to make certain things stand out... anyway, now can make use of both palettes: dim and bright
|
|
# simple color scheme: purple as main text color (plain text, ui, possibly strings and/or comments), a secondary color (popups, punctuation or operators, variable.other?), tertiary color (functions)
|
|
|
|
# the mains things you read should stick out, while the rest shouldn't
|
|
# a common line:
|
|
# modifier type-declaration variable operator type.function("string")
|
|
# most visible: variable operator function type
|
|
# clearly visible: operator, punctuation
|
|
# less visible: type-declaration
|
|
# least visible: modifiers
|
|
|
|
# TODO:
|
|
# should just inherit the original aura theme
|
|
# try purple for comments and something else for strings?
|
|
# maybe add a fallback for every table..?
|
|
# not happy with aura's orange, it's just too dim.. boring! is noctis's orange really that bright..?
|
|
# still not happy about aura's blue-green used for namespace, especially for rust.. desaturating didn't quite do it..
|
|
# can try another color/shade for atoms..? although, it's not too bad..
|
|
# could try other colors for either operators or punctuation..
|
|
# currently trying a dimmer shade of pink for variable.other.member, but there's too many keywords categorized in there..
|
|
# create a white-stone with a tinge of color for variable.other..?
|
|
# find out where the color for file picker is set, and try to dim it
|
|
# i tried searching the other configs in the repo to no avail, just found ui.picker.header
|
|
# oranger-brighter used for functions is slightly too bright, get a darker shade (using orange for now..)
|
|
# find a different color for built-in types, currently using aura's default green-sea
|
|
|
|
# NOTE:
|
|
# blinking doesn't work with italics, another reason to not italicize comments
|
|
# see keys here:
|
|
# https://github.com/helix-editor/helix/blob/master/book/src/themes.md#scopes
|
|
# can fetch syntax highlighting tests from here:
|
|
# https://github.com/sharkdp/bat
|
|
|
|
|
|
## GENERAL ==============================
|
|
|
|
# the diagnostic info in the gutter area
|
|
'warning' = { fg ="orange-bright", modifiers = ["bold"] } # Editor warnings. TEMP/TEST/WARN
|
|
'error' = { fg = "red-error", modifiers = ["bold", "slow_blink"] } # Editor errors, like mis-typing a command. BUG ISSUE
|
|
# but not ERROR..?
|
|
'info' = { fg = "blue-aqua" } # Code diagnostic info in gutter (LSP). TODO/INFO
|
|
# def prefer noctis's blue-aqua over aura's here
|
|
'hint' = { fg = "green-aqua", modifiers = ["bold"] } # Code diagnostics hint in gutter (LSP).
|
|
# ? Difference between info and hint ?
|
|
|
|
# diagnostic info in the main text-editing area
|
|
'diagnostic' = { underline = { style = "line" } } # Code diagnostics in editing area (LSP).
|
|
'diagnostic.error' = { underline = { style = "curl", color = "red-error" }, modifiers = ["bold", "dim", "slow_blink"] }
|
|
"diagnostic.warning" = { underline = { style = "curl", color = "orange" }, modifiers = ["bold", "dim" ] }
|
|
'diagnostic.info' = { underline = { style = "dashed", color = "blue-aqua" }, modifiers = ["bold", "dim" ] }
|
|
'diagnostic.hint' = { underline = { style = "dashed", color = "green-aqua" }, modifiers = ["bold", "dim" ] }
|
|
# TODO: TEST: diagnostics, might need a new set of colors..! can use all neon colors here!! definitely need to test all this blinking.. LOL
|
|
# underline styles: line, curl, dashed, dotted, double_line
|
|
'diagnostic.unnecessary' = { modifiers = ["dim"] } # took this from default theme
|
|
'diagnostic.deprecated' = { modifiers = ["crossed_out"] } # took this from default theme
|
|
|
|
# UI ==============================
|
|
# For styling helix itself.
|
|
|
|
'ui.background' = { fg = "purple-pleasant-dimmer", bg = "bg"} # Default background color., the fg seems to be used for borders..
|
|
'ui.background.separator' = { fg = "gray-stone" } # below the input line in picker
|
|
'ui.window' = { fg = "gray-stone" } # Window border between splits.
|
|
# pruple also works really well here.. maybe more needed when there are no line numbers..
|
|
|
|
'ui.gutter' = { fg = "gold" } # Left gutter for diagnostics and breakpoints.
|
|
# background affects the entire background of the gutter!
|
|
# breakpoints are kinda hard to see, only the outline..?
|
|
# 'ui.butter.selected' = { bg = "selection-ui" }
|
|
# 'ui.debug.breakpoint' = "●" # character for breakpoint? nope, that's not it..
|
|
'ui.debug.active' = { fg = "pink-dimmer" } # debug execution paused, gutter?
|
|
'ui.highlight.frameline' = { bg = "selection-ui" } # debug execution paused, line
|
|
# TODO: could use a tinted color here.. a little confusing as it uses the same background as selected text
|
|
|
|
'ui.text' = { fg = "purple-pleasant-dimmer" } # Default text color. used in text files, pickers, ui, and more!
|
|
'ui.text.focus' = { fg = "pink", bg = "selection-ui", modifiers = ["bold"] } # Selection highlight in buffer-picker or file-picker.
|
|
'ui.text.info' = { fg = "pink-dimmer", bg ="bg" } # Info popup contents (space mode menu).
|
|
# see ui.menu for auto-complete
|
|
# NOTE: pink pops out more, making it better than the comfy purple-pleasant-dimmer here
|
|
'ui.text.inactive' = { fg = "gray-stone-lighter", modifiers = ["dim"] } # i think used in autocomplete suggestion..
|
|
# i might like this better than gray-purple
|
|
|
|
'ui.cursor' = { fg = "light-green-complement", bg = "light-green", modifiers = ["reversed", "bold" ] } # Fallback cursor colour, non-primary cursors when there are multiple (shift-c).
|
|
# should be slightly darker than primary cursor..
|
|
'ui.cursor.primary' = { fg = "pink", bg = "light-green", modifiers = ["reversed", "bold"] } # The primary cursor when there are multiple (shift-c).
|
|
# TODO: NOTE: this blinking at a different timing then the selection's blink is too much!! lol, but i do prefer it to blink..
|
|
# 'ui.cursor.insert' = { fg = "pink", bg = "light-green", modifiers = ["reversed", "bold"] } # The cursor in insert mode (i).
|
|
# 'ui.cursor.select' = { fg = "pink", bg = "light-green", modifiers = ["reversed", "bold"] } # The cursor in select mode (v).
|
|
'ui.cursor.match' = { fg = "cyan", bg = "pink", modifiers = ["bold", "reversed", "slow_blink"] } # The matching parentheses of that under the cursor.
|
|
# NOTE: changed from purple, which was a bit tough to see..; rapid_blink was just too annoying..; light-green was too much, trying cyan..
|
|
|
|
'ui.selection' = { bg = "selection-ui", modifiers = [ "bold", "slow_blink" ] } # All currently selected text.
|
|
# TODO: decide purple-selection vs the neutral selection-ui: purple is easier to see immediately, but the neutral selection shows text more clearly / less muddy, and with the aid of blinking, it's pretty easy to see too
|
|
# 'ui.selection.primary' = { bg = "purple-selection" } # The primary selection when there are multiple.
|
|
# 'ui.cursorline.primary' = { bg = 'purple-selection' } #
|
|
# TODO: would need a very dim color, between selection-ui and background.. it could work of primary selection has a tinge of color to it (purple-selection), but without that, it would make it even harder to see the selection
|
|
|
|
|
|
'ui.linenr' = { fg = "purple-pleasant", modifiers = ["dim"]} # Line numbers.
|
|
'ui.linenr.selected' = { modifiers = [ "bold" ] } # Current line number.
|
|
|
|
'ui.virtual' = { fg = "gray-stone" } # Namespace for additions to the editing area.
|
|
'ui.virtual.ruler' = { bg = "selection-ui"} # Vertical rulers (colored columns in editing area).
|
|
# TODO: TEST: haven't seen these two yet..error
|
|
# 'ui.virtual.whitespace' = { fg = "gray-stone"} # Whitespace markers in editing area: newline..
|
|
# 'ui.virtual.wrap'
|
|
# 'ui.virtual.jump-label'
|
|
'ui.virtual.indent-guide' = { fg = "marker13" } # Indentation guides.
|
|
|
|
'ui.virtual.inlay-hint' = { fg = "purple-pleasant-dimmer" } # TODO: TEST:
|
|
# ui.virtual.inlay-hint.parameter
|
|
# ui.virtual.inlay-hint.type
|
|
|
|
# 'ui.bufferline' = { fg = "purple-pleasant", bg = "bg-ui", modifiers = ["dim"] }
|
|
# 'ui.bufferline.active' = { underline = { style = "line" } }
|
|
# not so pretty.., and it extends past the text
|
|
# 'ui.bufferline.inactive' = { fg = "gray-purple" } # BUG: doesn't work..
|
|
# or berry-desturated
|
|
# using ui.statusline as fallback instead:
|
|
|
|
'ui.statusline' = { fg = "purple-pleasant", bg = "bg-ui", modifiers = ["dim"] } # Status line. and tab bar
|
|
# NOTE: matches line numbers
|
|
# 'ui.statusline.separator' = '|' # not working..? don't think i'd need anyway, seems cleaner without it..
|
|
|
|
'ui.statusline.inactive' = { fg = "gray-stone", bg = "bg-ui", modifiers = [] } # Status line in unfocused windows.
|
|
# seems very dim.., likely inherited, but i don't know how to uninherit it.., i do prefer it to be different from the text used for comments though.. so it's not bad..
|
|
|
|
"ui.statusline.normal" = { fg = "purple-pleasant" }
|
|
"ui.statusline.insert" = { fg = "pink-salmon", modifiers = [] }
|
|
# matches return keyword
|
|
"ui.statusline.select" = { fg = "blue-aqua", modifiers = [] }
|
|
# seems dark, even without dim.. not sure how inheritance works here..
|
|
# slow_blink on insert/select was too annoying..
|
|
# using a colored background was also too annoying
|
|
|
|
'ui.help' = { bg = "bg", fg = "pink-dimmer"} # `:command` descriptions above the command line.
|
|
|
|
'ui.highlight' = { bg = "selection-ui", modifiers = ["slow_blink"] } # selected contents of symbol pickers (spc-s, spc-S) and current line in buffer picker (spc-b).
|
|
|
|
'ui.menu' = { fg = "purple-pleasant", bg = "bg", modifiers = ["dim"] } # Autocomplete menu.
|
|
# a dim color that doesn't pop up makes sense here
|
|
# BUG: the dim modifier conflicts with the matching gold for the first line only
|
|
'ui.menu.selected' = { bg = "selection-ui", fg = "gold", modifiers = ["bold"] } # Selected autocomplete item.
|
|
# not a fan of slow_blink here..
|
|
# gold is fantastic for selected text and fuzzy matching
|
|
# 'ui.menu.scroll'
|
|
|
|
# 'ui.picker' = { fg = "purple" } # ope.. good guess..
|
|
"ui.picker.header" = { modifiers = ["bold"] } # TODO: TEST: i found this in another config, no clue yet..
|
|
|
|
'ui.popup' = { fg = "purple-pleasant-dimmer", bg = "bg" } # Documentation popups (space-k).
|
|
'ui.popup.info' = { fg = "purple", bg = "bg" } # Info popups box (space mode menu). just the borders.
|
|
# gold is very pretty here.., but distracting.. purple creates a solid frame and feels out of the way..
|
|
# modifiers don't work here.. no shiny blinky stuff..; also dim doesn't work, so can't use purple-pleasant dimmed..
|
|
# "ui.menu.scroll" = { }
|
|
|
|
# SYNTAX HIGHLIGHTING ==============================
|
|
# All the keys here are Treesitter scopes.
|
|
|
|
'property' = { fg = "green-aqua" } # Regex group names.
|
|
# TODO: no clue.. never seen this.. just matching regex strings for now..
|
|
'special' = { fg = "gold", modifiers = ["bold"] } # Special symbols e.g `?` in Rust, `...` in Hare, also derive macro..?? BUG: also used for fuzzy search??
|
|
# rust's ? is usually squashed between punctuation ()?;
|
|
# gold is too bright, but fantastic for fuzzy search. pink-hotter works well for punctuation. gold also works well for the derive macro. it's also nice for it to just stick out, so as to indicate a syntax highlighting problem
|
|
'attribute' = { fg = "purple", modifiers = ["italic"] } # Class attributes, html tag attributes.
|
|
# italics makes sense for html tag attributes.. matching tag
|
|
|
|
'type' = { fg = "blue-aqua" } # Variable type, like integer or string, including program defined classes, structs etc..
|
|
# NOTE: sometimes there's class / end, which looks odd not bolded like other control/end statements
|
|
# doesn't seperate declaration, parameters, instantiation (though there is constructor), so it's difficult to italicize
|
|
'type.builtin' = { fg = "green-sea", modifiers = ["italic"] } # Primitive types of the language (string, int, float).
|
|
'type.enum.variant' = { fg = "green-sea" } # A variant of an enum.
|
|
# vs match constant color
|
|
# NOTE: i think was pink in aura theme.. but i def didn't like that for the enum values TODO: maybe white is fine
|
|
|
|
'constructor' = { fg = "blue-aqua" } # Constructor method for a class or struct. And in some cases applies to module names, as in ruby
|
|
# was blue-aqua in noctis, it's pink in vs-code's aura, along with static... TODO: maybe could try a new color here..
|
|
# ruby's class seems to use this.. maybe best to stick to using the same color as type.., but then __init__ uses this too..; also used upon constructor call! Ok(), Some() in rust
|
|
|
|
'constant' = { fg = "green-aqua" } # Constant value
|
|
# originally green in aura... and it seems a pretty good use of this green, as i don't use it for strings anymore..
|
|
# NOTE: if this is too dark, can use cyan or light-green, as there aren't too many of these..
|
|
# 'constant.builtin' = { fg = "blue-aqua" } # Special constants like `true`, `false`, `none`, etc.
|
|
# 'constant.builtin.boolean' = { } # True or False.
|
|
# 'constant.character' = { fg = "blue-aqua"} # Constant of character type.
|
|
# 'constant.character.escape' = { fg = "mid-green", modifiers = ["bold"] } # escape codes like \n.
|
|
# NOTE: matches regexp
|
|
# 'constant.numeric' = { fg = "blue-green", modifiers = ["bold"] } # constant integer or float value.
|
|
# 'constant.numeric.integer' = { } # constant integer value.
|
|
# 'constant.numeric.float' = { fg = "green-aqua" } # constant float value.
|
|
|
|
'string' = { fg = "purple-pleasant-dimmer" } # String literal.
|
|
# changed to use main text color (purple!) TODO: can decrease alpha more if needed
|
|
'string.regexp' = { fg = "green-aqua" } # Regular expression literal.
|
|
# NOTE: matches character escape
|
|
'string.special' = { fg = "purple-pleasant-dimmer", modifiers = ["italic"] } # Strings containing a path, URL, etc.
|
|
# could use something funky 'n dark here..
|
|
# i hate long underlined text!, so def don't want that..
|
|
# TODO: TEST: italics
|
|
# 'string.special.path' = { } # String containing a file path.
|
|
# 'string.special.url' = { } # String containing a web URL.
|
|
'string.special.symbol' = { fg = "berry-desaturated" } # Erlang/Elixir atoms, Ruby symbols, Clojure keywords.
|
|
# secondary text (pink) collides with punctuation :/, so now pink is used for variable.other
|
|
# perhaps it could be similar to the color used for constant/literals.. a kind of green..?
|
|
|
|
'comment' = { fg = "gray-stone-lighter", modifiers = ["dim"] } # This is a comment.
|
|
# TODO: dim and italics should be optional
|
|
# TODO: this is beautiful when it's dim, but with a transparent background, it can be tough to see..
|
|
# even purple-pleasant dimmed doesn't look bad..
|
|
# 'comment.line' = { } # Line comments, like this.
|
|
# 'comment.block' = { } # Block comments, like /* this */ in some languages.
|
|
'comment.block.documentation' = { fg = "gray-stone-lighter", modifiers = ["dim", "italic"] } # Doc comments, e.g '///' in rust.
|
|
# TODO: TEST: maybe okay to use italics here..
|
|
|
|
'variable' = { fg = "white-stone" } # Variable names.
|
|
# likely the most important word in the line, and therefore must be the most easily visible, yet comfortable
|
|
'variable.builtin' = { fg = "blue-aqua" } # Language reserved variables: `this`, `self`, `super`, etc.
|
|
# NOTE: matches class color
|
|
'variable.parameter' = { fg = "white-stone" } # Function parameters.
|
|
# TODO: this would be really useful to differentiate.. white-sea-tinged isn't too bad.. italic is too anooying
|
|
'variable.function' = { fg = "orange" } # ? ruby-like everything is an object..?
|
|
'variable.other' = { fg = "white-stone" } # from aura..
|
|
# fallback
|
|
'variable.other.member' = { fg = "pink-dimmer" } # Fields of composite data types (e.g. structs, unions)., @callback in elixir, serialized data fields (like this config file..)
|
|
# 'variable.other.member.private' # only for ECMAScript-based languages
|
|
# TODO: decide white-stone vs pink vs another color, and remember to turn down punctuation down a notch in hotness; would be nice to create a slightly tinged color, like noctis's white-sea-tinge
|
|
|
|
'label' = { fg = "purple" } # Loop labels in rust.
|
|
|
|
'punctuation' = { fg = "pink-dimmer", modifiers = ["bold"] } # (){}[]:;,.
|
|
# NOTE: the bolded gold from noctic is really, really nice, but it collides with the orange-brighter color; also, bolded white is too much white, should save white just for variables only
|
|
'punctuation.delimiter' = { fg = "pink-hot", modifiers = ["bold"] } # Commas and colons.
|
|
# pink-hotter is slightly too annoying..
|
|
'punctuation.bracket' = { fg = "pink-dimmer", modifiers = ["bold"] } # Parentheses, angle brackets, etc.
|
|
'punctuation.special' = { fg = "pink-dimmer", modifiers = ["bold"] } # string interpolation
|
|
|
|
'keyword' = { fg = "purple" } # Language reserved keywords. var, void, let
|
|
'keyword.control' = { fg = "purple", modifiers = ["bold"] } # Control keywords.
|
|
# NOTE: bold makes it slightly brighter too
|
|
'keyword.control.conditional' = { fg = "purple", modifiers = ["bold"] } # 'if', 'else', 'elif'.
|
|
# TODO: could use a cascading shades of purple here, between purple and purple-darker of operator, darkest on the outside, yet it's also nice to have it consistent..
|
|
'keyword.control.repeat' = { fg = "purple", modifiers = ["bold"] } # 'for', 'while', 'loop'.
|
|
'keyword.control.import' = { fg = "purple", modifiers = ["italic"] } # 'import', 'export', 'use', 'mod'
|
|
# use crate::blah blah conflicts, crate is the same color..
|
|
'keyword.control.return' = { fg = "pink-salmon", modifiers = ["italic"] } # 'return' in most languages.
|
|
# NOTE: tried red-error, but it's so ugly!!.. :/ but could use it's own color.. stole noctis's pink-salmon here.. bold is really nice too, more pink-salmony, but it eventually bugged me..; italics makes it feel like it's *pressed* in
|
|
'keyword.control.exception' = { fg = "pink-salmon", modifiers = ["italic"] } # 'raise' in python.
|
|
'keyword.operator' = { fg = "purple", modifiers = ["bold"] } # 'or', 'and', 'in'.
|
|
# TODO: doesn't look like it's working..??
|
|
'keyword.directive' = { fg = "purple", modifiers = ["italic"] } # Preprocessor directives (#if, #include in C).
|
|
'keyword.function' = { fg = "purple", modifiers = ["bold"] } # The keyword to define a funtion: 'def', 'fun', 'fn'.
|
|
'keyword.storage' = { fg = "purple" } # let and var in rust.. these should be more visible..
|
|
'keyword.storage.modifier' = { fg = "purple-dimmer", modifiers = ["italic"] } # function and type modifiers/accessors: public/private, mut, dyn, ref, &, internal, readonly, const, etc.
|
|
# these should be less visible
|
|
# bold makes sense here for C#, as it's usually the start of a function, but not so much for rust..
|
|
# currently using the same purple as operators.. which isn't too bad though, as it keeps a consistent scheme.. and it doesn't conflict with anything either. it's also good as a fallback for 'end', as that sometimes doesn't highlight properly..
|
|
'keyword.storage.type' = { fg = "green-sea", modifiers = ["italic"] } # class, struct, enum, namespace, sometimes var? (for javascript but not rust)
|
|
# matches type.builtin
|
|
|
|
|
|
'operator' = { fg = "purple", modifiers = ["bold"] } # Logical (&&, ||) and - I assume - Mathematical (+, %) operators
|
|
|
|
# top three are ordered from brightest to darkest
|
|
# also used in markup headings
|
|
'function' = { fg = "orange"}
|
|
# TODO: orange-brighter is too bright.. :/ but much of the beauty of the theme comes from this color... just need to get a notch lower..
|
|
'function.method' = { fg = "orange" } # Class / Struct methods.
|
|
# 'function.method.private' # just ECMAScript-based languages..
|
|
'function.builtin' = { fg = "orange-desaturated" }
|
|
'function.macro' = { fg = "orange", modifiers = ["italic"] } # Like macros in rust.
|
|
# italics works well here.. as does the magical gold of macros, as does orange-pumpkin
|
|
'function.special' = { fg = "orange", modifiers = ["italic"] } # Preprocessor in C.
|
|
|
|
'tag' = { fg = "purple-darker", modifiers = ["italic"] } # As in <body> for html. also @tags in comments?
|
|
# must be darker then the default text, and attribute
|
|
#'tag.builtin' # ?
|
|
|
|
'namespace' = { fg = "blue-green" } # * Namespace keyword in java, C#, etc.
|
|
# namespace::function, namespace::class, package main, *types.Tuple
|
|
# requires a seperate color
|
|
# TODO: this nasty blue-green accurately matches how i feel about namespace syntax..: *barf*.. pink-hotter is interesting... really changes things up!.. but i still prefer something similar to blue for logical reasoning
|
|
# for a long time i was using italics here, but then discovered it was part of its ugliness! now it's actually tolerable
|
|
|
|
# Colors for markup languages, like Markdown or XML.
|
|
# a little different from code since it's so simple, using a simple two color scheme: purple 'n gold
|
|
|
|
# NOTE: it inherits the main text color from ui.text, and punctuation too
|
|
|
|
markup = "purple-pleasant-dimmer" # fallback
|
|
|
|
'markup.bold' = { fg = "orange-bright" } # Bold text.
|
|
# bold text isn't so easy to read.. but purple bold works pretty well alongside purple-pleasant
|
|
# this orange is surprisingly dim! not bad at all, and keeps a consistent two-color theme. though, orange-brighter is far more beautiful, but perhaps too bright..
|
|
'markup.italic' = { modifiers = ["italic"] } # Italicised text.
|
|
"markup.strikethrough" = { modifiers = ["crossed_out"] }
|
|
|
|
'markup.heading' = { fg = "orange-bright", modifiers = ["bold"] } # Markdown headings
|
|
# NOTE: underline didn't bold, and looked wayyy too thin compared to the bold font..
|
|
# underline = { style = "curl", modifiers = ["bold"] }
|
|
'markup.heading.1' = { fg = "orange-bright", modifiers = ["bold"] }
|
|
'markup.heading.2' = { fg = "orange", modifiers = ["bold"] }
|
|
'markup.heading.3' = { fg = "orange-desaturated", modifiers = ["bold"] }
|
|
'markup.heading.4' = { fg = "orange-bright" }
|
|
'markup.heading.5' = { fg = "orange" }
|
|
'markup.heading.6' = { fg = "orange-desaturated" }
|
|
'markup.heading.marker' = { fg = "orange-brighter" } # Hashtag color on Markdown headings.
|
|
|
|
'markup.list' = { fg = "orange-bright", modifiers = ["bold"] }
|
|
# the bullet symbols are like shiny jewelry in the sea :)
|
|
'markup.list.numbered' = { fg = "orange-bright" } # Numbered list.
|
|
# 'markup.list.unnumbered' = { } # Bullet point list.
|
|
|
|
'markup.link' = { fg = "gray-stone" }
|
|
# different color is annoying in comments
|
|
# seems to underline only when highlighted, which is great!!
|
|
'markup.link.url' = { fg = "gray-stone"} # Urls pointed to by links.
|
|
'markup.link.label' = { fg = "gray-stone" } # Non-URL link references.
|
|
'markup.link.text' = { fg = "purple-pleasant-dimmer"} # URL and image descriptions in links.
|
|
|
|
'markup.quote' = { fg = "pink-dimmer", modifiers = ["italic"] } # `> Quotes` in Markdown.
|
|
|
|
# Markup - Interface ==============================
|
|
# "These scopes are used for theming the editor interface."
|
|
|
|
# TODO: ??
|
|
'markup.normal' = { }
|
|
'markup.normal.completion' = { } # For completion doc popup ui.
|
|
'markup.normal.raw' = { } # For hover popup ui.
|
|
|
|
'markup.heading.completion' = { } # Headings for completion doc popup ui.
|
|
'markup.heading.raw' = { } # Headings for hover popup ui.
|
|
|
|
'markup.raw' = { } # Code block in Markdown.
|
|
'markup.raw.block' = { } # Multiline (```) codeblock in Markdown.
|
|
'markup.raw.inline' = { } # `Inline code block` in Markdown.
|
|
'markup.raw.inline.completion' = { } # ?
|
|
'markup.raw.inline.hover' = { } # ?
|
|
|
|
# Diff ==============================
|
|
# Version control changes.
|
|
|
|
'diff.plus' = { fg = "green-aqua" } # Additions.
|
|
'diff.minus' = { fg = "pink-salmon", modifiers = ["slow_blink"] } # Deletions.
|
|
# shows up as a little red dash, so blinking actually works well here!
|
|
'diff.delta' = { fg = "orange" } # Modifications.
|
|
'diff.delta.moved' = {fg = "blue-aqua" } # Renamed or moved files / changes.
|
|
'diff.delta.conflict' = { fg = "orange" }
|
|
# could dim.. but i also quite like how clear it is.. especially without the line numbers. BUG: dim doesn't seem to work..
|
|
# slow_blink is fun, but epilepsy-inducing, lol.. at least they blink at the same time!
|
|
# TODO: TEST: blinking on deletions, is it too distracting..?
|
|
# not sure where you'd see diff.delta.moved..
|
|
|
|
|
|
[palette] # Define your custom colors here.
|
|
# NOTE: there are 16 colors in the palette by default, these will override any that have the same name. TODO: in order to make it most compatible and future-proof, should really use thsoe color names, even if it's not actually that color
|
|
|
|
# noctis
|
|
# dark-green = "#00262a" # backgrounds
|
|
# mid-green = "#073a40" # highlights
|
|
# autocomp-green = "#0d6772" # lighter than mid-green
|
|
# these three were used for backgrounds
|
|
light-green = "#48e9a7" # a nice sea green, bright neon when bolded, like the displays of deep sea instruments, was "green", re-used for text under the cursor
|
|
|
|
pink-salmon = "#df769b" # re-used for return, was "pink", it's perfect! :D use sparingly as i really don't like themes with lots of red in it, only returns and maybe exceptions
|
|
gold = "#ffd800" # a nice, shiny bolded gold used for punctuation, was "yellow", ..maybe was also used for it's variable text..? unfortunately, it's very bright. used for matching fuzzy search, special symbols, markdown symbols
|
|
purple-darker = "#6f60ea" # this purple is slightly darker than aura's, used for cascading keywords, but seems to match vs-code's aura better??
|
|
white-sea-tinged = "#b1cace" # has a tinge of green in it.., pleasant tho
|
|
orange-bright = "#e4b782" # looks fantastic in noctis, fit for the sea theme, like a clown-fish, but too bright :(
|
|
green-sea-darker = "#5b858b" # was mainly used for comments/background text in noctis, was "gray", it's very readable but rather less saturated compared to the other colors.. TODO: a very good, unused reading color, not bad for atoms..
|
|
# red = "#e34e1b" # an ugly red.. only good for errors.. using aura's instead, though they seem the same..
|
|
|
|
blue-green = "#19a2b7" # TODO: quite hideous toxic aqua green... currently using for namespaces, as i don't have anymore colors.. just feels too saturated. it's closest to tokyonight's aqua, but dimmer
|
|
# blue-green-desaturated = "#3B94A3" # hmmm, maybe desaturate isn't the answer.. just dims it.., but it's not a bad idea either..
|
|
# blue-green-blue = "#0098C2" # slightly bluer in hue, possible replacement for type.builtin, then can use green-sea with namespace
|
|
# blue-green-green = "#2C98BF" blue-green, with slightly lower hue, more greener
|
|
# cyan-bright = "#87efff" # a tad too bright..
|
|
|
|
|
|
# aura dark soft/dim
|
|
purple = "#8464c6"
|
|
purple-dimmer = "#7B57C2" # increased saturation??
|
|
purple-selection = "#3d375e7f"
|
|
purple-selection-solid = "#29263c"
|
|
blue-aqua = "#47ace8" # currently used for types, a pretty standard blue for classes..
|
|
green-aqua = "#54c59f" # used for constants/literals, not the prettiest, but it fits the aqua sea feelin' of the overall theme.. maybe can try bogster's green
|
|
orange = "#c7a06f" # used for functions, but feels too boring.. :(
|
|
orange-desaturated = "#C7B693"
|
|
pink = "#c17ac8" # great, comfy pink for pop-up-menu ui text, TODO: shuold be second main text color, but using it for punctuation t the moment..
|
|
# pink-lighter = "#cb90d1" # 1/7th shade lighter (whiter)
|
|
# white-stone-pink = "#BEA7C1" # somewhere between white-stone and pink; meh... pink is just more clearly visible than the colors between..
|
|
# pink-brighter = "#DE95E5"
|
|
pink-dimmer = "#B56EBC" # slightly desaturated, used for fields/methods and elixir's @thing
|
|
# fuschia = "#A955B2" # TODO: an interesting one to use..
|
|
# pink-even-dimmer = "#8C5C90" # used for pop-up menus, similar to pink with dim modifier.. too dim, not even pink anymore! more like magenta.. but very comfy to read!
|
|
pink-hot = "#cc6cd6" # +25% saturation, nice 'n slight! for delimiters via coolers.co gradient
|
|
pink-hotter = "#d85ee3" # +50% saturation, for "special" symbols
|
|
green-sea = "#6cb2c7" # builtin type, a bit funky but very much readable
|
|
red-error = "#c55858" # error, looks great when blinking, like red flashing like underwater!
|
|
white-stone = "#bdbdbd" # variable, has a dim tinge of dirty stone to it
|
|
# white-stone-yellow-tinge = "#BAB195" # just added a little saturation, but it feels less readable :/
|
|
gray-stone = "#6d6d6d" # comment, similar to white, but desaturated/grayed out, now a sort of dirty blonde; i didn't like it at first, but then became amazing once dimmed!!
|
|
# gray-stone-dimmed = "#6d6d6d80" # 80 = 50%, 40 = 25%
|
|
gray-stone-lighter = "#7d7d7d" # used for comments with the dim modifier; 9d9d9d dimmed seems slightly brighter than gray-stone undimmed.. 7d7d7d is out of the way, 858585 forces eyes to read it, vs 8d8d8d?
|
|
# TODO: alpha doesn't seem to affect these, only dim works..
|
|
# bg = "#121016" # black, was accent28, slightly darker
|
|
bg = "#15141b" # was "black", quite dark.. high-contrast
|
|
# TODO: have to figure out how backgrounds work: shouldn't the gui app (terminal or not) handle it?
|
|
# bg = "#211D26" # a darker raisin black, was accent39, seems like a nice alternative
|
|
# bg = "#2d2b38" # raisin black, was accent30. much much lighter, tougher to see on transparent backgrounds
|
|
|
|
purple-pleasant = "#a394f033" # great comfy purp for ui, should be main color, used for text (in .txt files) and strings and ui, was accent17 (with 33 alpha) as TODO: secondary selection and accent18 (with 00 alpha)
|
|
# NOTE: still use this with dim modifer to make a color even dimmer than purple-pleasant-dimmer
|
|
purple-pleasant-dimmer = "#9889E4" # switch to using this as main text.. along with pink-dimmer
|
|
|
|
# aura colors shared between variations
|
|
# text10 = "#adacae" # TODO: try it
|
|
bg-ui = "#1f1a27" # soft dark, used in ui background, status line, tab bar, seems similar to purple-selection, was accent24
|
|
|
|
# somewhere hidden in aura
|
|
selection-ui = "#2e2b38" # no purple tinge, more closer to gray-stone, was accent33
|
|
marker13 = "#2d2d2d" # a barely visible gray
|
|
|
|
# others scraped from aura
|
|
cyan = "#82e2ff" # seems like noctis's cyan.. also sticks out too much.., just used for cursor match..
|
|
# purple14 = "#af8aff7f" # light purple TODO: try it
|
|
# purple-pleasant-opaque = "#a394f000" # purple-pleasant with 00 alpha (opaque?), was accent18
|
|
# NOTE: doesn't seem to make a difference..
|
|
# accent4 = "#9dff65" # bright green
|
|
orange-brighter = "#ffca85" # brighter than noctis's orange, beautiful, was accent31
|
|
# green-aqua-darker = "#3ea7847f" # was accent19
|
|
# gray-purple = "#4d466e" # was accent22, english violet, too dark to read, almost charcoal.. perhaps used for grayed out text like for auto-suggestions? too dark for even inactive tabs..
|
|
# accent25 = "#49c29a" # mint green, seems very close to green-aqua
|
|
# accent26 = "#00d89023" # emerald green, slightly brighter than the above, when without alpha
|
|
# TODO: untested colors below..
|
|
# accent36 = "#a19c77" # debugging background
|
|
# accent37 = "#353424" # breakpoint frame highlight
|
|
# accent35 = "#525156" # activity bar inactive foreground,
|
|
|
|
# new colors
|
|
light-green-complement = "#e9488a" # initially used to create a high-contrast color for match surrounding pairs but it was too fugly to use as a cursor.. pink is better. currently using for secondary cursors as it's darker than the primary cursor's pink
|
|
|
|
# from boo berry
|
|
berry-desaturated = "#886C9C" # originally used for comments, but didn't quite work.. maybe because boo berry has a background color..; didn't quite work for keywords either, as it was too dim and didn't match the rest of the scheme, like dirty blood.. worth keeping! currently using for atoms, which isn't bad!..
|
|
|
|
# from tokyonight
|
|
# orange-pumpkin = "#ff9e64" # orange from tokyonight, too bright but really orange! looks okay with dim modifier..
|
|
# orange-tokyonight = "#e0af68" # yellow from tokyonight, similar to orange from noctis
|
|
|
|
# TODO: "shades of purple" theme has an actual orangey orange, a nice fuschia/deep purple, a good red, and a cyan that isn't too bright
|
|
|
|
# TODO: try checking out noctis variants minimus and uva
|
|
|
|
# try this site for buildings shades of a color..
|
|
# https://www.radix-ui.com/colors/custom
|
|
|
|
# this site seems fun too..
|
|
# coolors.co
|