Built-in diff editor shortcuts are completely undiscoverable
Description
This is UX feedback issue:
I tried running jj split and it took me literally 10 minutes to figure out how to do it successfully.
I did not succeed until I found the screenshot at https://www.pauladamsmith.com/blog/2025/01/cheatsheet-for-jjs-builtin-diff-editor.html showing that "Confirm changes" is c. I would never have guessed that. Things I tried include:
wandwq(similar tovim).qjust quit and made the operation fail.⌘S(uncommon for commandline tools, but who knows?)- Ctrl-S (similar to other platforms
- Ctrl-O (similar to
nano) s("save")
Steps to Reproduce the Problem
- Run
jj split
Expected Behavior
The UI tells me how to accept my selection. For example, nano shows shortcuts at the bottom of the UI that are super clear.
I would expect the following pages to tell me what to do, but they contained no useful info to help me actually successfully select a subset of changes:
- https://jj-vcs.github.io/jj/latest/cli-reference/#jj-split
- https://jj-vcs.github.io/jj/latest/config/#editing-diffs
Actual Behavior
- I see what appears to be a menu, but I can't find a way to interact with it.
- I don't see any way to confirm changes.
In addition, I'm still not sure exactly what the built-in editor is. Some things on the internet imply it's meld, but apparently not?
Specifications
- Platform: macOS Sequoia 15.3.1
- Version: 0.26.0
Oh. Apparently the menu is meant to be clicked with the mouse.
Even after 20 years of using commandlines, it is completely foreign for me to encounter a commandline tool that requires clicking in order to do/discover something useful. I never use clicking features of commandline tools, as 1) I do not trust them to function well across environments, and 2) I generally have no need to do so.
I think it would be much more beginner-friendly to show something that can help users discover what to do without guessing they have to click.
This is https://github.com/jj-vcs/jj/discussions/2951 and https://github.com/arxanas/scm-record/issues/25. It might make sense to keep an open issue in our repo as well, I'm not sure.
Apparently, there's a PR in the works: https://github.com/arxanas/scm-record/pull/91.
Related: #4502
#4502 seems similar enough that I'll close this as a duplicate (because the other one has move thumbs up). Feel free to reopen if I missed some important way in which they are different.