MyNixOS website logo

Each theme is written to $XDG_CONFIG_HOME/helix/themes/theme-name.toml. Where the name of each attribute is the theme-name (in the example "base16").

See https://docs.helix-editor.com/themes.html for the full list of options.

Declarations
Type
attribute set of (TOML value)
Default
{ }
Example
{
  base16 = let
    transparent = "none";
    gray = "#665c54";
    dark-gray = "#3c3836";
    white = "#fbf1c7";
    black = "#282828";
    red = "#fb4934";
    green = "#b8bb26";
    yellow = "#fabd2f";
    orange = "#fe8019";
    blue = "#83a598";
    magenta = "#d3869b";
    cyan = "#8ec07c";
  in {
    "ui.menu" = transparent;
    "ui.menu.selected" = { modifiers = [ "reversed" ]; };
    "ui.linenr" = { fg = gray; bg = dark-gray; };
    "ui.popup" = { modifiers = [ "reversed" ]; };
    "ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; };
    "ui.selection" = { fg = black; bg = blue; };
    "ui.selection.primary" = { modifiers = [ "reversed" ]; };
    "comment" = { fg = gray; };
    "ui.statusline" = { fg = white; bg = dark-gray; };
    "ui.statusline.inactive" = { fg = dark-gray; bg = white; };
    "ui.help" = { fg = dark-gray; bg = white; };
    "ui.cursor" = { modifiers = [ "reversed" ]; };
    "variable" = red;
    "variable.builtin" = orange;
    "constant.numeric" = orange;
    "constant" = orange;
    "attributes" = yellow;
    "type" = yellow;
    "ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; };
    "string" = green;
    "variable.other.member" = red;
    "constant.character.escape" = cyan;
    "function" = blue;
    "constructor" = blue;
    "special" = blue;
    "keyword" = magenta;
    "label" = magenta;
    "namespace" = blue;
    "diff.plus" = green;
    "diff.delta" = yellow;
    "diff.minus" = red;
    "diagnostic" = { modifiers = [ "underlined" ]; };
    "ui.gutter" = { bg = black; };
    "info" = blue;
    "hint" = dark-gray;
    "debug" = dark-gray;
    "warning" = yellow;
    "error" = red;
  };
}