keryx theme add¶
Register a new theme in the catalog.
Usage¶
Flags¶
| Flag | Description | Default | Required |
|---|---|---|---|
--type |
The theme's kind: article, reel or portrait |
yes | |
--from |
Clone an existing theme as the starting point | ||
--set |
key=value, repeatable, dotted paths allowed |
Without --type the command refuses: --type is required for add.
What --set accepts¶
Dotted paths into the theme, with values coerced to bool, int or float when they parse as one and kept as strings otherwise:
keryx theme add editorial --type reel \
--set 'palette.charcoal=#1A1D21' \
--set 'palette.cream=#F4F1EA' \
--set 'card.mode=overlay' \
--set 'music.gain=0.16' \
--set 'voice.stability=0.6'
An argument that is not key=value is rejected with invalid set (want key=value).
keyword and type are the catalog coordinates, not fields — --set keyword=x is
ignored.
Which file it writes to¶
If the working directory is inside a project that has a .keryx.yaml, the theme is
written there. Otherwise it goes to ~/.keryx/themes.yaml and is available to every
project on the machine. Existing comments and key order in the target file are
preserved.
Use theme pin to copy a user theme into a project, and
theme promote to copy the other way.
The first theme of a type becomes its default¶
Keryx seeds no themes at all, so on a fresh install the catalog is empty and generation
fails with no theme configured for this type. The first theme you add for a type is
made that type's default automatically, and the command says so:
$ keryx theme add editorial --type reel --set 'palette.cream=#F4F1EA'
added reel theme "editorial"
set as the default reel theme (it was the first)
Later additions do not change the default; use theme use.
See also¶
theme list·theme show·theme edit·theme rm- Themes — what each field means.