# theme/set Return a new theme map with a value deep-set at a variadic path. The original map is never mutated — rebind the result. ## Syntax
[theme/set $t :ui :accent "#ffffff"]
set t [theme/set $t :syntax :keyword "#ff0000"]
## Parameters - `theme` — a theme map (from `theme/load` or a previous edit). - `path...` — section, key, … path segments (strings coerced to keywords). - `value` — the new value (last argument). Missing (or non-map) intermediate levels become empty maps — assoc-in semantics — so new sections can be created without pre-populating them. ## Examples
set t [theme/load :dracula]
set t [theme/set $t :ui :accent "#f8f8f2"]         # tweak a color
set t [theme/set $t :markdown :code-fg "#00ff00"]  # new section + key
[theme/save $t]                                    # write it back
## Returns The updated map. ## See Also `theme/get`, `theme/unset`, `theme/save`, `theme/load`