Files
jjf/CHANGELOG.md
T
swaits 3b63d67737 chore(release): 0.1.0
- Add LICENSE (MIT, copyright 2026 Stephen Waits)
- Add README.md reflecting the current TUI: two-column preview pane
  with jj show --summary, live command preview row, default-to-show
  behavior, full keybinding table, shell integration matrix, internals
  overview, attribution to oppi.li's original bash+fzf concept
- Add CHANGELOG.md (keep-a-changelog format) with 0.1.0 release notes
- Add .github/workflows/ci.yml — fmt + clippy + check on every push/PR;
  build matrix on stable + 1.85 (MSRV)
- Update Cargo.toml: refined description, repository/homepage/docs
  URLs, keywords + categories, rust-version=1.85, exclude .github and
  ux.txt from the published tarball
- Update .gitignore to also exclude ux.txt (scratch UX mockup)

Verified clean:
  cargo fmt --all -- --check
  cargo clippy --all-targets -- -D warnings
  cargo publish --dry-run --allow-dirty  (16 files, 20.6 KiB compressed)
2026-04-29 19:49:11 -06:00

1.9 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.1.0 — 2026-04-29

Initial release.

Added

  • Fuzzy picker over jj log for any jj subcommand that accepts -r.
  • Smart prefix matching: typing the bold-highlighted portion of a change ID jumps to that revision instantly. Falls back to nucleo fuzzy matching against description text.
  • Multi-select via Tab; selections joined into -r 'A|B|C' revset union.
  • Two-column layout (when terminal ≥ 80 cols): picker on left, live jj show --summary preview of the cursor row on right, cached per revision.
  • Live command preview row showing the exact jj … invocation that Enter will run.
  • Preflight check via jj <sub> --help: subcommands that don't accept revisions (status, log, etc.) are rejected upfront with a friendly message.
  • --ignore-working-copy on the internal jj log call so the picker doesn't race with prompt/editor auto-snapshot integrations.
  • Shell integration via jjf init <bash|zsh|fish|nu>:
    • rewrites shell history so up-arrow recalls the resolved jj … command rather than the jjf … invocation,
    • drops the jjf … entry on cancel/error so cancelled invocations don't pollute history,
    • defaults jjf (no args) to jjf show,
    • passes meta-commands and bare flags through to the binary directly.
  • Vim-style and emacs-style navigation: ↑↓, Ctrl-N/P, Ctrl-J/K, PageUp/PageDown, Home/End, Ctrl-A/E.
  • Light-terminal detection via COLORFGBG: cursor-row highlight uses reverse video on light themes (where the dark gray bg is invisible).
  • Synchronized output (DEC mode 2026) around each redraw to eliminate tearing on Kitty / WezTerm / foot / recent iTerm.