A quick maintenance update with a handful of usability improvements and scripting additions.
- jjui now uses the real terminal cursor instead of a virtual one. Cursor rendering is now correct when focus moves between views and when returning from external commands.
- Theme rendering has been improved so that themes now paint the backgrounds of view areas more consistently. Lua scripting also now exposes set_theme(name), which changes the active theme at runtime. This builds on the earlier light/dark runtime theme switching work, but it is not wired to the UI by default, so you need to call it from your own action.
- jjui now sets the JJUI environment variable before invoking jj. This makes it easier to use jj conditional config specifically for commands run from inside jjui, for example:
[[--scope]]
--when.environments = ["JJUI"]
[--scope.ui]
diff-formatter = "delta"
- Preview commands now set DFT_WIDTH, so difftastic output wraps to the preview pane width automatically.
- Revision navigation now resolves longer or non-loaded change IDs and commit IDs through jj when they cannot be matched directly in the loaded revision list. This makes Lua navigation actions work more reliably with user-provided revision IDs.
- The : prompt now parses quoted jj arguments correctly, so commands like new -m "message text" work as expected.
- ctrl+n and ctrl+p are now available as list navigation aliases in more places, including revset completion/history, the target picker, and the fuzzy file finder.
What's Changed
- fix(exec): parse jj prompt input with shellwords (#655) by @SAY-5 in https://github.com/idursun/jjui/pull/675
New Contributors
- @SAY-5 made their first contribution in https://github.com/idursun/jjui/pull/675
Full Changelog: https://github.com/idursun/jjui/compare/v0.10.5...v0.10.6