Release Notes
🆕 Features
Lua Scripting Enhancements
- Lua Context Module (#465): Added context module to Lua scripting API, exposing methods for accessing selected item metadata and checked items:
context.change_id()- Get the change ID of selected revision or filecontext.commit_id()- Get the commit ID of selected revision, file, or commitcontext.file()- Get the file path of selected filecontext.operation_id()- Get the operation ID of selected operationcontext.checked_files()- Get array of checked file pathscontext.checked_change_ids()- Get array of change IDs from checked itemscontext.checked_commit_ids()- Get array of commit IDs from checked items
- Shell Execution in Lua (#471): Exposed
exec_shell()function to Lua scripts, enabling interactive commands like opening files in external editors directly from jjui. This enables custom commands such as:[custom_commands.open_file] key = ["O"] lua = ''' local file = context.file() if not file then flash("No file selected") return end exec_shell("vim " .. file) '''
✨ Improvements
- Abandon Workflow: Removed confirmation dialog; users can now use Space to add/remove revisions from the abandon list
🐛 Bug Fixes
- Preview Pane Scrolling (#472): Fixed broken Ctrl-U/Ctrl-D scrolling in the preview pane that was introduced by earlier input routing changes. Preview commands are now properly grouped and always handled.
- Parser: Fixed handling of divergent change ID format
- Bookmarks: Fixed tracking of new bookmarks (currently tracks all remotes)
🔧 Compatibility
- Jujutsu 0.36.0 Support (#407): Updated commands to work with breaking changes in Jujutsu 0.36.0:
- Changed
--destinationflag to--onto - Changed
--editflag to--editor - Removed deprecated
--allow-newflag fromgit pushcommands - Updated keybinding from
dtoofor--ontoflag in related modes
- Changed
📝 Documentation
- README Updates (#470):
- Added missing op log revert item to help menu
- Fixed redo documentation
- Updated custom command examples
What's Changed
- jj-update: fix commands to work with breaking changes in jj-0.36.0 by @baggiiiie in #407
- refactor(abandon): remove confirmation dialog by @idursun in #462
- fix(bookmarks): track new bookmarks by @idursun in #463
- feat(lua): add context module by @idursun in #465
- lua: expose exec_shell to lua script by @baggiiiie in #471
- README improvements and help menu missing item by @baggiiiie in #470
- ui,preview: fix preview pane ctrl-u/d scrolling by @baggiiiie in #472
Full Changelog: v0.9.9...v0.9.10