feat(config): add bonsai animation configuration fields

Introduces eleven `bonsai_*` configuration fields (pot style, life,
multiplier, leaf glyphs, five colors, step / finish-pause timings)
along with their documentation in the example config.ini. The fields
are unused at this point; subsequent commits wire them into the
animation widget and renderer.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
CM Geldenhuys 2026-05-04 20:01:38 +02:00
commit 8773ba5cc4
2 changed files with 47 additions and 0 deletions

View file

@ -94,6 +94,42 @@ bigclock_seconds = false
# Setting to false will make it transparent
blank_box = true
# Bonsai animation pot style
# 0 -> No pot
# 1 -> Large pot (31 columns wide)
# 2 -> Small pot (15 columns wide)
bonsai_base_type = 1
# Pause (in milliseconds) after a tree finishes growing before the next one regrows
bonsai_finish_pause_ms = 4000
# Bonsai bright leaf color (used for dying-branch leaves)
bonsai_leaf_bright = 0x0000FF00
# Bonsai dark leaf color (used for dead-branch leaves)
bonsai_leaf_dark = 0x00006400
# Bonsai leaf characters (UTF-8). One codepoint is picked at random per leaf
bonsai_leaves = &
# Bonsai tree life budget (1..200). Larger trees need taller terminals; this is auto-clamped to fit.
bonsai_life = 32
# Bonsai growth multiplier (1..20). Higher values create denser, more-branched trees.
bonsai_multiplier = 5
# Milliseconds per growth step. cbonsai's default is 30 (0.03 s)
bonsai_step_ms = 30
# Bonsai pot rim/text color
bonsai_text_color = 0x00808080
# Bonsai bright wood color (used for ~50% of trunk/shoot cells)
bonsai_wood_bright = 0x00FFFF00
# Bonsai dark wood color (used for the other ~50% of trunk/shoot cells)
bonsai_wood_dark = 0x00808000
# Border foreground color id
border_fg = 0x00FFFFFF

View file

@ -22,6 +22,17 @@ bigclock: Bigclock = .none,
bigclock_12hr: bool = false,
bigclock_seconds: bool = false,
blank_box: bool = true,
bonsai_base_type: u8 = 1,
bonsai_finish_pause_ms: u32 = 4000,
bonsai_leaf_bright: u32 = 0x0000FF00,
bonsai_leaf_dark: u32 = 0x00006400,
bonsai_leaves: []const u8 = "&",
bonsai_life: u16 = 32,
bonsai_multiplier: u8 = 5,
bonsai_step_ms: u16 = 30,
bonsai_text_color: u32 = 0x00808080,
bonsai_wood_bright: u32 = 0x00FFFF00,
bonsai_wood_dark: u32 = 0x00808000,
border_fg: u32 = 0x00FFFFFF,
box_position_h: f32 = 0.5,
box_position_v: f32 = 0.4,