Skip to content

Commit 4126233

Browse files
chore: update CHANGELOG.md
1 parent 1404e0e commit 4126233

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,63 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.4.8] - 2025-12-07
9+
10+
### Added
11+
12+
- **Command palette** - Press `:` to open a fuzzy-searchable command palette ([#32](https://github.com/Epistates/treemd/issues/32))
13+
- Type to filter commands with fuzzy matching
14+
- Navigate with `j`/`k` or arrow keys, execute with `Enter`
15+
- Commands include: Save width, Toggle outline, Toggle help, Toggle raw source, Jump to top/bottom, Quit
16+
- Each command has aliases (e.g., `w`/`write`/`save` for save width)
17+
18+
- **Save outline width with confirmation** - Press `S` to save current outline width to config with modal confirmation ([#32](https://github.com/Epistates/treemd/issues/32))
19+
- Shows confirmation dialog before saving
20+
- Respects power users: manual config values are session-only until explicitly saved
21+
- New users with default config get auto-save behavior
22+
23+
- **Document search with n/N navigation** - Full in-document search with match highlighting ([#30](https://github.com/Epistates/treemd/issues/30))
24+
- Press `/` in content pane to search within the document
25+
- Press `n` for next match, `N` for previous match
26+
- Matches highlighted in content view
27+
- Status bar shows match count and current position
28+
29+
### Fixed
30+
31+
- **Anchor links in interactive mode** - Following anchor links to headings in current file now works correctly ([#29](https://github.com/Epistates/treemd/issues/29))
32+
- Changed from `select_by_text()` to `jump_to_anchor()` for proper anchor handling
33+
- Anchor links like `#installation` now jump to correct heading
34+
35+
- **Wikilinks with path separators** - Wikilinks containing `/` now work correctly ([#28](https://github.com/Epistates/treemd/issues/28))
36+
- Removed overly restrictive check that blocked all paths with `/`
37+
- Still blocks `..` for security (prevents directory traversal)
38+
- `[[docs/guide]]` now resolves to `docs/guide.md`
39+
40+
- **Checkbox toggle scroll jump** - Toggling checkboxes no longer causes page to jump to top ([#31](https://github.com/Epistates/treemd/issues/31))
41+
- Saves and restores scroll position and element index on file reload
42+
- Interactive mode state preserved after checkbox toggle
43+
44+
- **Config value protection** - Outline width cycling no longer overwrites custom config values ([#32](https://github.com/Epistates/treemd/issues/32))
45+
- Tracks whether config has custom outline width at startup
46+
- Power users with custom values: cycling is session-only
47+
- New users with standard values: auto-save for convenience
48+
49+
### Technical
50+
51+
- **Command palette system** (`src/tui/app.rs`)
52+
- `CommandAction` enum for available actions
53+
- `PaletteCommand` struct with fuzzy matching and scoring
54+
- `PALETTE_COMMANDS` constant with all commands and aliases
55+
- Filter/navigation/execution methods for palette state
56+
57+
- **Save confirmation modal** (`src/tui/ui/popups.rs`)
58+
- `render_save_width_confirm()` for confirmation dialog
59+
- `render_command_palette()` for command palette UI
60+
61+
- **Config tracking** (`src/tui/app.rs`)
62+
- `config_has_custom_outline_width` flag to detect power user configs
63+
- Standard widths: 20%, 30%, 40% - anything else is custom
64+
865
## [0.4.7] - 2025-12-05
966

1067
### Fixed

0 commit comments

Comments
 (0)