Skip to content
github-actions[bot] edited this page Sep 3, 2026 · 2 revisions

Themes

The bundled palettes, the keys a theme file sets, and how to write your own.

The same page ships with greyline and always matches your installed version:

greyline help themes
Themes — colour palettes, selected with `greyline config set theme <name>`.

Built-in (35) — greyline's own `modus`/`blue`, and ports of the base16
schemes at https://github.com/tinted-theming/schemes:
  blue, catppuccin-frappe, catppuccin-latte, catppuccin-macchiato, catppuccin-mocha,
  dracula, everforest-dark-hard, everforest-dark-medium, everforest-dark-soft,
  everforest-light-hard, everforest-light-medium, everforest-light-soft, github,
  github-dark, gruvbox-dark-hard, gruvbox-dark-medium, gruvbox-dark-soft,
  gruvbox-light-hard, gruvbox-light-medium, gruvbox-light-soft, kanagawa, modus,
  monokai, nord, one-light, onedark, rose-pine, rose-pine-dawn, rose-pine-moon,
  solarized-dark, solarized-light, tokyo-night-dark, tokyo-night-light,
  tokyo-night-moon, tokyo-night-storm

Older names, kept working forever:
  catppuccin = catppuccin-mocha, dark = modus, gruvbox = gruvbox-dark-hard, rosepine =
  rose-pine, tokyonight = tokyo-night-dark

Write your own: put a TOML palette at
  ~/.config/greyline/themes/<name>.toml
using this as a starting point:
  greyline/themes/modus.toml

A user file whose name matches a built-in shadows it. Keys map semantic names to
"#rrggbb" or "#rrggbbaa"; anything you omit falls back to the built-in.

Keys:
  border, column, day_wash, dot, dot_outline, gmt, grid, grid_label, home, home_stroke,
  idl, land, night, ocean, text, text_stroke
Optional:
  label_bg, logo, night_alpha

To change one colour without writing a theme file, use the [colors] table:
  greyline config set colors.home '#fabd2f'

Any other base16 scheme

greyline bundles the popular families; tinted-theming/schemes has around 340. The script that generated the bundled palettes converts any of them, and needs nothing but the standard library:

git clone --depth 1 https://github.com/tinted-theming/schemes /tmp/schemes
python tools/base16_to_theme.py /tmp/schemes/base16/ayu-dark.yaml \
    --out ~/.config/greyline/themes
greyline config set theme ayu-dark

It maps base16's slots to greyline's map roles (the mapping is documented at the top of the script) and follows the scheme's own variant: light for polarity, so light schemes come out light: the terminator, label plates and grid flip with them.

Clone this wiki locally