[0.5.9] - 2026-03-04
Added
-
Dynamic help text - Help popup now displays actual configured keybindings instead of hardcoded key strings (#47)
- User-customized keybindings are reflected in the help menu at render time
- Structured
HelpLineenum replaces raw string-based help entries
-
Noopaction for keybinding customization - Users can unbind keys by mapping them toNoopin their config (#46)Noopentries are automatically filtered from the help popup
-
Regression tests for keybinding system - Added tests for user config override,
Noopunbinding, clone preservation, and help entry filtering
Fixed
-
Keybinding config merging - User-defined keybindings now correctly override defaults (#46)
- Previously, defaults were inserted first in the dispatch
Vecand matched before user overrides - New approach replaces matching default bindings in-place, preserving user precedence
- Previously, defaults were inserted first in the dispatch
-
CloneforKeybindingsdiscarded user config -clone()always returned default keybindings; now properly clones binding state -
Wrong action in help for "Exit interactive mode" - Help text used
Quit(which exits the app) instead ofExitModefor table navigation exit -
Duplicate
tkeybinding - BothToggleTodoFilterandToggleThemePickerwere bound totin Normal mode;ToggleTodoFiltermoved toT(Shift+t) -
Phantom
Skey in status bar - "S or :w to save" referenced an unbound key; updated to ":w to save" -
Editor in interactive mode -
OpenInEditornow jumps to the interactive element's source line instead of the selected heading (#45) -
File picker missing from help menu - Added file picker entry to help text
-
Potential
usizeunderflow in help text - Key column width calculation now usessaturating_sub
tl;dr:
- Fix keybindings config merging by @enzalito in #46
- Update help_text to display actual keybinds by @enzalito in #47
New Contributors
Full Changelog: v0.5.8...v0.5.9