231 explicitly authored keystroke entries. Each entry includes its section context, binding kind, and any authored interface, mode, prefix, state, command, or editor scope.
- $
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-process-buffer
- Show the current repository's process buffer. It retains recent synchronous and asynchronous jj commands, including failures and long-running remote operations.
- *
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-workspace
- Open the workspace transient.
- +
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - Command
majutsu-diff-more-context
- Increase the context for diff hunks by COUNT lines.
- -
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeVanilla
- Command
majutsu-diff-less-context
- Decrease the context for diff hunks by COUNT lines.
- --
- KindTransient argument
- InterfaceAbsorb transient
- Limit absorb to specific filesets.
- ContextManipulating › Absorbing
- --
- KindTransient argument
- InterfaceRestore transient
- Limit restore to selected files or filesets.
- ContextManipulating › Restoring
- --
- KindTransient argument
- InterfaceSplit transient
- Limit split to selected files or filesets.
- ContextManipulating › Splitting
- --
- KindTransient argument
- InterfaceSquash transient
- Limit squash to specific filesets.
- ContextManipulating › Squashing
- --
- KindTransient argument
- InterfaceDiff transient
- Limit diff to selected files/filesets. Completion shows full repository-relative paths changed by the active --revisions or --from / --to selection. Without an explicit selection it uses revisions in the active log region, then the revision at point, and finally @. Fileset expressions remain free-form and can still be entered directly.
- --
- KindTransient argument
- InterfaceLog options transient
- Add fileset/path filters to limit the log to matching files.
- -A
- KindTransient argument
- InterfaceFetch transient
- Fetch from all remotes.
- ContextGit Integration › Fetching
- -a
- KindTransient argument
- InterfacePush transient
- Push all bookmarks and tags.
- ContextGit Integration › Pushing
- -A
- KindTransient argument
- InterfaceNew transient
- Insert after constraint.
- -A / -B
- KindTransient argument
- InterfaceDuplicate transient
- Insert after or before constraints.
- ContextManipulating › Duplicating
- -A / -B
- KindTransient argument
- InterfaceRebase transient
- Insert after or before the selected destination revisions.
- ContextManipulating › Rebasing
- -A / -B
- KindTransient argument
- InterfaceRevert transient
- Insert reverse changes after or before selected revisions.
- ContextManipulating › Reverting
- -A / -B
- KindTransient argument
- InterfaceSplit transient
- Insert after or before constraints.
- ContextManipulating › Splitting
- -A / -B
- KindTransient argument
- InterfaceSquash transient
- Insert after or before constraints.
- ContextManipulating › Squashing
- -b
- KindTransient argument
- InterfaceFetch transient
- Fetch a specific branch; may be repeated.
- ContextGit Integration › Fetching
- -b
- KindTransient argument
- InterfaceGerrit upload transient
- Target remote branch (--remote-branch).
- -b
- KindTransient argument
- InterfacePush transient
- Push specific bookmark(s).
- ContextGit Integration › Pushing
- -B
- KindTransient argument
- InterfaceNew transient
- Insert before constraint.
- -b
- KindTransient argument
- InterfaceRebase transient
- Rebase a whole branch relative to the destination (--branch).
- ContextManipulating › Rebasing
- -b / -w
- KindTransient argument
- InterfaceDiff transient
- Ignore whitespace amount / ignore all whitespace.
- -c
- KindTransient argument
- InterfacePush transient
- Push a specific change.
- ContextGit Integration › Pushing
- -c
- KindTransient argument
- InterfaceRestore transient
- Undo changes introduced by a revision (--changes-in).
- ContextManipulating › Restoring
- -c
- KindTransient argument
- InterfaceDiff transient
- Set context line count.
- -c / -u / -U / -f
- KindTransient argument
- InterfaceMetaedit transient
- Toggle update-change-id, update-author, update-author-timestamp, or force-rewrite.
- ContextManipulating › Metaediting
- -d
- KindTransient argument
- InterfaceRestore transient
- Restore descendants as well.
- ContextManipulating › Restoring
- -e
- KindTransient argument
- InterfaceNew transient
- No edit (don't switch to the new change).
- -f
- KindTransient argument
- InterfaceAbsorb transient
- Source revision (--from, default @).
- ContextManipulating › Absorbing
- -f
- KindTransient argument
- InterfaceRestore transient
- Restore from a specific revision (--from).
- ContextManipulating › Restoring
- -f
- KindTransient argument
- InterfaceSquash transient
- Source revisions (--from).
- ContextManipulating › Squashing
- -g
- KindTransient argument
- InterfaceDiff transient
- Toggle Git-style diff output.
- -G
- KindTransient argument
- InterfaceLog options transient
- Toggle the ASCII graph.
- -I
- KindTransient argument
- InterfaceMetaedit transient
- Ignore immutable revisions.
- ContextManipulating › Metaediting
- -I
- KindTransient argument
- InterfaceSign and Unsign transients
- Ignore immutable revisions.
- -I
- KindTransient argument
- InterfaceSimplify Parents transient
- Ignore immutable revisions.
- -k
- KindTransient argument
- InterfaceSign and Unsign transients
- Override the configured signing key for jj sign. Majutsu completes secret signing keys for the gpg and gpgsm backends, and the configured key plus ~/.ssh/*.pub for the ssh backend. Arbitrary values remain available for backend-specific key formats. A commit-signing backend must be configured in jj.
- -k
- KindTransient argument
- InterfaceSquash transient
- Keep commits that become empty after squashing.
- ContextManipulating › Squashing
- -m
- KindTransient argument
- InterfaceNew transient
- Set a message.
- -m
- KindTransient argument
- InterfaceSplit transient
- Set a message for the first part.
- ContextManipulating › Splitting
- -m / -a / -t
- KindTransient argument
- InterfaceMetaedit transient
- Set message, author, and author timestamp.
- ContextManipulating › Metaediting
- -n
- KindTransient argument
- InterfaceGerrit upload transient
- Preview without pushing (--dry-run).
- -n
- KindTransient argument
- InterfaceLog options transient
- Limit the number of revisions shown.
- -o
- KindTransient argument
- InterfacePush transient
- Pass a Git push option; may be repeated.
- ContextGit Integration › Pushing
- -o
- KindTransient argument
- InterfaceDuplicate transient
- Destination (--onto).
- ContextManipulating › Duplicating
- -o
- KindTransient argument
- InterfaceRebase transient
- Rebase onto destination parent(s) (--onto).
- ContextManipulating › Rebasing
- -o
- KindTransient argument
- InterfaceRevert transient
- Apply reverse changes on top of revisions (--onto).
- ContextManipulating › Reverting
- -o
- KindTransient argument
- InterfaceSplit transient
- Specify the destination (--onto).
- ContextManipulating › Splitting
- -o
- KindTransient argument
- InterfaceSquash transient
- Onto destination.
- ContextManipulating › Squashing
- -p
- KindTransient argument
- InterfaceRebase transient
- Remove redundant parent edges while rebasing (--simplify-parents).
- ContextManipulating › Rebasing
- -p
- KindTransient argument
- InterfaceSplit transient
- Parallel split mode.
- ContextManipulating › Splitting
- -R
- KindTransient argument
- InterfaceFetch transient
- Fetch from a specific remote; may be repeated.
- ContextGit Integration › Fetching
- -r
- KindTransient argument
- InterfaceGerrit upload transient
- Upload specific revision(s).
- -R
- KindTransient argument
- InterfaceGerrit upload transient
- Gerrit remote (--remote).
- -r
- KindTransient argument
- InterfacePush transient
- Push specific revision(s).
- ContextGit Integration › Pushing
- -r
- KindTransient argument
- InterfaceNew transient
- Parent revisions.
- -r
- KindTransient argument
- InterfaceDuplicate transient
- Source revisions to duplicate.
- ContextManipulating › Duplicating
- -r
- KindTransient argument
- InterfaceRebase transient
- Rebase only the selected revisions while preserving dependencies among them (--revision).
- ContextManipulating › Rebasing
- -r
- KindTransient argument
- InterfaceRevert transient
- Source revisions to revert (--revision, repeatable).
- ContextManipulating › Reverting
- -r
- KindTransient argument
- InterfaceSimplify Parents transient
- Simplify specified revision(s) only (--revision).
- -r
- KindTransient argument
- InterfaceSplit transient
- Specify the revision to split.
- ContextManipulating › Splitting
- -r
- KindTransient argument
- InterfaceLog options transient
- Set a revset filter with Majutsu's standard revset expression reader (e.g., all(), mine(), or A | B). The current filter is prefilled for editing; submit an empty value to clear it.
- -s
- KindTransient argument
- InterfaceRebase transient
- Rebase a revision and its descendants (--source).
- ContextManipulating › Rebasing
- -s
- KindTransient argument
- InterfaceSimplify Parents transient
- Simplify specified revision(s) together with descendant trees (--source).
- -S
- KindTransient argument
- InterfaceDiff transient
- Toggle stat output.
- -s
- KindTransient argument
- InterfaceDiff transient
- Toggle summary output.
- -T
- KindTransient argument
- InterfaceFetch transient
- Fetch specific tag(s) or tag patterns; may be repeated.
- ContextGit Integration › Fetching
- -t
- KindTransient argument
- InterfaceFetch transient
- Fetch only tracked bookmarks and tags.
- ContextGit Integration › Fetching
- -t
- KindTransient argument
- InterfacePush transient
- Push tracked bookmarks and tags only.
- ContextGit Integration › Pushing
- -T
- KindTransient argument
- InterfacePush transient
- Push specific tag(s) or tag patterns.
- ContextGit Integration › Pushing
- -t
- KindTransient argument
- InterfaceAbsorb transient
- Destination revset filters (--into, repeatable, default mutable()).
- ContextManipulating › Absorbing
- -t
- KindTransient argument
- InterfaceRestore transient
- Restore to a specific revision (--to).
- ContextManipulating › Restoring
- -t
- KindTransient argument
- InterfaceSquash transient
- Destination revision (--into).
- ContextManipulating › Squashing
- -t
- KindTransient argument
- InterfaceWorkspace transient
- Toggle trashing workspace directories after forgetting them.
- -u
- KindTransient argument
- InterfaceSquash transient
- Use the destination revision's description and discard source descriptions (--use-destination-message).
- ContextManipulating › Squashing
- -v
- KindTransient argument
- InterfaceLog options transient
- Toggle reverse order.
- -W
- KindTransient argument
- InterfaceDiff transient
- Toggle color-words diff output.
- -y
- KindTransient argument
- InterfacePush transient
- Show what would be pushed without pushing (--dry-run).
- ContextGit Integration › Pushing
- 0
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeVanilla
- Command
majutsu-diff-default-context
- Reset the context for diff hunks to the default height.
- 1..9
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeVanilla
- PrefixC-c ^
- Command
majutsu-conflict-keep-side
- Keep side N (the "after" side in JJ diff blocks).
- =
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeEvil
- Command
majutsu-diff-less-context
- Decrease the context for diff hunks by COUNT lines.
- >
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-sparse
- Open the sparse working copy transient (set, add, remove, list, edit).
- ? E
- KindCommand binding
- InterfaceMajutsu dispatcher / buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-ediff
- Open the Ediff transient.
- ? G
- KindCommand binding
- InterfaceMajutsu buffer / dispatcher
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-git-transient
- Open the Git transient. Jujutsu can interact directly with Git remotes.
- ? j
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-sign
- Open the Sign transient. Revisions in the active region are selected initially, followed by the revision at point, then @ as fallbacks.
- ? J
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-unsign
- Open the Unsign transient with the same visual revision selection.
- ? m
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-metaedit
- Open the Metaedit transient. Revisions in the active region are selected initially, followed by the revision at point, then @ as fallbacks.
- ContextManipulating › Metaediting
- ? P
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-simplify-parents
- Open the Simplify Parents transient.
- ? t
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-tag
- Open the tag transient.
- ContextTags › Tag Transient
- ? v
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-evolog
- Open the evolution log from the Majutsu dispatcher. Contextual v remains available in operation diff buffers.
- ? w f
- KindCommand binding
- InterfaceCopy dispatcher
- Command
majutsu-row-copy-field
- Copy the rendered field value at point.
- ? w F
- KindCommand binding
- InterfaceCopy dispatcher
- Command
majutsu-row-copy-entry-field
- Choose any canonical field stored on the current entry, including hidden metadata that is not visible in the current layout. Completion keeps the field name as the candidate and displays a one-line value preview as its annotation.
- ? w m
- KindCommand binding
- InterfaceCopy dispatcher
- Command
majutsu-row-copy-module
- Copy the rendered visible module at point (heading, tail, or body), without graph-prefix or tail-spacer decoration.
- ? w s
- KindCommand binding
- InterfaceCopy dispatcher
- Command
majutsu-copy-section-value
- Copy the current section value. An active region uses ordinary region copy.
- ? y
- KindCommand binding
- InterfaceMajutsu dispatcher
- Command
majutsu-duplicate
- Open the Duplicate transient. Allows selecting source revisions and destination.
- ContextManipulating › Duplicating
- [[ / gk
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-prev
- Jump to the previous conflict.
- ]] / gj
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-next
- Jump to the next conflict.
- _
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-revert
- Open the Revert transient to apply reverse changes in one or more new revisions.
- ContextManipulating › Reverting
- `
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-process-buffer
- Show the current repository's process buffer. It retains recent synchronous and asynchronous jj commands, including failures and long-running remote operations.
- a
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-advance
- Advance bookmarks using jj's configured default selection and target revset.
- A
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-advance-to
- Advance bookmarks using jj's default selection to an explicit target revset.
- a
- KindCommand binding
- InterfaceRemote Management transient
- Command
majutsu-git-remote-add-transient
- Add a new Git remote as jj git remote add [OPTIONS] REMOTE URL. Majutsu prompts for a new remote name, rejects names that already exist, prompts for the URL/path positional, and exposes --fetch-tags and --push-url.
- ContextGit Integration › Remotes
- a
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-absorb
- Open the Absorb transient.
- ContextManipulating › Absorbing
- A
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - Command
majutsu-new-with-after
- Create a new change after the revision at point.
- a
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-add
- Add a new workspace.
- a / r
- KindCommand binding
- InterfaceSparse transient
- Commands
majutsu-sparse-add,majutsu-sparse-remove
- Add or remove patterns incrementally.
- b
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-bookmark
- Open the bookmark transient.
- b
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeVanilla
- PrefixC-c ^
- Command
majutsu-conflict-keep-base
- Keep the conflict base (snapshot / rebase destination section).
- b
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeVanilla
- Command
majutsu-annotate-addition
- Enter annotate from a blob buffer. From an ordinary file buffer, use M-x majutsu-annotate-addition. When invoked again on an annotated chunk, jump to its parent revision (when available) and re-annotate there.
- b
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - Command
majutsu-annotate-addition
- Start annotate for the current blob.
- B
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - ScopeVanilla
- Command
majutsu-new-with-before
- Create a new change before the revision at point.
- c
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-create
- Create a new bookmark at point.
- c
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - Command
majutsu-annotate-cycle-style
- Cycle heading/highlight/line styles (see majutsu-annotate-styles).
- c
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-clone-transient
- Clone a Git repository into a jj repo. Source may be a URL or path; --branch can be repeated.
- C
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-commit
- Run jj commit through with-editor. This edits the working-copy description, finalizes that change, and lets jj create the next empty working-copy change on top.
- ContextManipulating › Committing
- c
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-describe
- Edit the description of the revision at point. Supports --ignore-immutable for immutable revisions.
- C-/ / C-?
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Commands
majutsu-undo,majutsu-redo
- Undo or redo.
- ContextManipulating › Undo and Redo
- C-<return>
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeEvil
- Command
majutsu-diff-visit-workspace-file
- Visit the workspace file without conflicting with Evil's C-j section navigation.
- C-c C-c
- KindCommand binding
- InterfaceEditable blob buffer
- Mode
majutsu-blob-edit-mode - Command
majutsu-blob-edit-finish
- Apply changes through non-interactive jj diffedit and exit edit mode. Majutsu copies current buffer text into the diffedit right side and finishes automatically, without opening the right-side temp file buffer.
- C-c C-c
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
with-editor-finish
- Finish the current edit session successfully. jj then uses the description found in the file.
- C-c C-d
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-show-diff
- Show the diff for the described change. If the buffer contains a JJ: Change ID: line, then use that revision; otherwise fall back to @.
- C-c C-k
- KindCommand binding
- InterfaceEditable blob buffer
- Mode
majutsu-blob-edit-mode - Command
majutsu-blob-edit-abort
- Abort blob edits, restore the original content, and restore the original cursor position.
- C-c C-k
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
with-editor-cancel
- Cancel the current edit session with a non-zero editor status, causing jj to abort the operation. Majutsu saves the current text to its in-session description history before canceling.
- C-c m
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - Command
majutsu-blob-visit-magit
- Open the current blob in Magit's blob viewer.
- C-c M-n
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-search-message-forward
- Search forward through the description ring for a substring match.
- C-c M-p
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-search-message-backward
- Search backward through the description ring for a substring match.
- C-c M-s
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-save-message
- Save the current buffer contents to the description ring.
- C-j / C-<return>
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeVanilla
- Command
majutsu-diff-visit-workspace-file
- Visit the workspace file, regardless of diff type.
- C-j / g j / C-k / g k
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeEvil
- Commands
majutsu-annotate-next-chunk,majutsu-annotate-previous-chunk
- Move to the next or previous chunk.
- C-x C-q
- KindCommand binding
- InterfaceEditable blob buffer
- Mode
majutsu-blob-edit-mode - Command
majutsu-blob-edit-exit
- Leave editable mode. If modified, it prompts to save or abort; if unchanged, it exits immediately.
- d
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-delete
- Delete a bookmark locally and record the deletion for propagation on a later push; this command does not contact a remote itself.
- d
- KindCommand binding
- InterfaceRemote Management transient
- Command
majutsu-git-remote-remove
- Remove an existing remote. In the remote list buffer, the remote at point is used as the default.
- ContextGit Integration › Remotes
- d
- KindCommand binding
- InterfaceTag transient
- Command
majutsu-tag-delete
- Delete tag(s) by name or pattern.
- ContextTags › Tag Transient
- d
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-diff
- Open the Diff transient.
- E
- KindCommand binding
- InterfaceMajutsu dispatcher / buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-ediff
- Open the Ediff transient.
- e
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-dwim
- Compare based on context (hunk, file, commit, or whole buffer).
- E
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-edit
- Run jj diffedit with Emacs as ui.diff-editor. If no file is at point, Majutsu prompts for a changed file, then launches a two-sided Ediff session for that single file (left/right temp files). Edit the right-side temp file and quit Ediff to return control to jj diffedit. When majutsu-diffedit-finish-on-save is non-nil, saving a diffedit temp file can finish the with-editor session automatically.
- e
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-export
- Run jj git export.
- e
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-edit-changeset
- Move the working copy (@) to the revision at point. Supports --ignore-immutable for immutable revisions.
- e
- KindCommand binding
- InterfaceSparse transient
- Command
majutsu-sparse-edit
- Edit patterns via jj sparse edit.
- e / C-x C-q
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - Command
majutsu-blob-edit-start
- Enter editable blob mode (wdired-style).
- f
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-forget
- Forget a bookmark locally without affecting remotes.
- f
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-fetch-transient
- Open the Fetch transient to pull changes from a remote.
- ContextGit Integration › Fetching
- f
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-forget
- Forget a workspace. With -t enabled, also move its local directory to the system trash after jj workspace forget succeeds; this trash step accepts local roots only, while plain forget can still forget a remotely located workspace. Before moving a directory, Majutsu verifies that the path still identifies the directory the user confirmed and does not own the shared .jj/repo store. It checks all selected workspaces and reports all paths requiring manual cleanup together.
- f / t
- KindTransient argument
- InterfaceDiff transient
- Select the --from and --to revisions.
- g
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - ScopeVanilla
- Command
revert-buffer
- Revert or reload the current blob content.
- G
- KindCommand binding
- InterfaceMajutsu buffer / dispatcher
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-git-transient
- Open the Git transient. Jujutsu can interact directly with Git remotes.
- g J / g K
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeEvil
- Commands
majutsu-annotate-next-chunk-same-commit,majutsu-annotate-previous-chunk-same-commit
- Move to the next or previous chunk from the same commit.
- g r
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - ScopeEvil
- Command
revert-buffer
- Revert or reload the current blob content.
- gb
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-keep-base
- Keep the base.
- ge
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-refine
- Refine the conflict.
- gr 1..9
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-keep-side
- Keep side N (the "after" side).
- gR 1..9
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeEvil
- StateNormal
- Command
majutsu-conflict-keep-side
- Keep side N's "before" variant.
- i
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - ScopeEvil
- StateNormal
- Command
majutsu-evil-blob-insert-dwim
- Enter editable blob mode and stay in normal state.
- i
- KindCommand binding
- InterfaceEditable blob buffer
- Mode
majutsu-blob-edit-mode - ScopeEvil
- StateNormal
- Command
evil-insert-state
- Enter insert state.
- i
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-init-transient
- Initialize a new Git-backed jj repository.
- I
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - ScopeEvil
- Command
majutsu-new-with-before
- Create a new change before the revision at point.
- k
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - ScopeVanilla
- Command
majutsu-abandon
- Remove the revision at point from visible history and rebase its descendants onto its parent(s). With an active region selection, Majutsu abandons all selected revisions. The operation remains recoverable through jj's operation history until that history is pruned.
- ContextManipulating › Abandoning
- l
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-list
- List all bookmarks.
- l
- KindCommand binding
- InterfaceRemote Management transient
- Command
majutsu-git-remote-list
- List remotes.
- ContextGit Integration › Remotes
- l
- KindCommand binding
- InterfaceSparse transient
- Command
majutsu-sparse-list
- List current sparse patterns in *Majutsu Sparse*.
- l
- KindCommand binding
- InterfaceTag transient
- Command
majutsu-tag-list
- List tags in a dedicated buffer.
- ContextTags › Tag Transient
- l
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-list
- List all workspaces.
- l
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-log-transient
- Open the log options transient.
- L
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Command
majutsu-log-transient
- Open the log options transient.
- m
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-move
- Move a bookmark.
- M
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-move-allow-backwards
- Move bookmark(s) with --allow-backwards.
- m
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-resolve
- Resolve conflicted files. In a jj-commit section, it lists conflicted files for that revision; otherwise it uses working copy @. Uses jj resolve with 3-way Ediff (merge tool: $left, $base, $right) for up-to-2-sided conflicts, and falls back to jj diffedit for conflicts with more than 2 sides. In this flow, quitting Ediff without editing leaves jj's output unchanged, so the conflict stays unresolved. If you edited and quit, Majutsu asks whether to save the resolved result; choosing no discards edits and keeps conflicts. When only part of a conflict is resolved, remaining regions are written with git-style conflict markers so jj keeps unresolved regions unresolved. Conflict-file completion preserves exact repository paths and annotates each candidate with its conflict side count.
- M
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-resolve-with-conflict
- Open the resolve target buffer (working-copy file or revision blob), enable majutsu-conflict-mode, and jump to the first conflict.
- m
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-import
- Run jj git import.
- m
- KindCommand binding
- InterfaceTag transient
- Command
majutsu-tag-move
- Move existing tag(s) to another revision (internally --allow-move).
- ContextTags › Tag Transient
- m in the Ediff transient
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-resolve
- Use the automatic resolve strategy.
- M in the Ediff transient
- KindCommand binding
- InterfaceEdiff transient
- Command
majutsu-ediff-resolve-with-conflict
- Force the conflict workflow. This opens the working-copy file (or a revision blob buffer for non-working-copy revisions), enables majutsu-conflict-mode, and jumps to the first conflict.
- M-1..M-9
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeVanilla
- PrefixC-c ^
- Command
majutsu-conflict-keep-side
- Keep side N's "before" variant.
- M-n
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-next-message
- Cycle forward through the description ring, after saving the current description to the ring. With a numeric prefix ARG, go forward ARG entries.
- M-p
- KindCommand binding
- InterfaceJJ description buffer
- Mode
majutsu-jjdescription-mode - Command
majutsu-jjdescription-prev-message
- Cycle backward through the description ring, after saving the current description to the ring. With a numeric prefix ARG, go back ARG entries.
- M-w
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - Command
majutsu-annotate-copy-hash
- Copy the chunk change-id.
- n
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-rename
- Rename a workspace.
- n / p
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeVanilla
- PrefixC-c ^
- Commands
majutsu-conflict-next,majutsu-conflict-prev
- Jump to the next or previous conflict.
- n / p
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeVanilla
- Commands
majutsu-annotate-next-chunk,majutsu-annotate-previous-chunk
- Move to the next or previous chunk.
- N / P
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeVanilla
- Commands
majutsu-annotate-next-chunk-same-commit,majutsu-annotate-previous-chunk-same-commit
- Move to the next or previous chunk from the same commit.
- o
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-root
- Show the Git directory path (jj git root).
- o
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-new
- Open the New transient to specify options.
- O
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - Command
majutsu-new-dwim
- Create a new change on top of the revision at point (DWIM).
- p
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-advance-patterns
- Advance specific bookmark name(s)/pattern(s) using jj's configured default target revset.
- p
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-push-transient
- Open the Push transient. You can push bookmarks, tags, revisions, or changes.
- ContextGit Integration › Pushing
- p / n
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - Commands
majutsu-blob-previous,majutsu-blob-next
- Jump to the previous or next revision that touched this file, while preserving cursor position as much as possible.
- r
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-rename
- Rename a bookmark.
- R
- KindCommand binding
- InterfaceConflict buffer
- Mode
majutsu-conflict-mode - ScopeVanilla
- PrefixC-c ^
- Command
majutsu-conflict-refine
- Refine conflict regions with word-level highlighting.
- r
- KindTransient argument
- InterfaceGerrit upload transient
- Toggle the revision at point into or out of the upload selection. If no revision is selected, Majutsu leaves revision selection to jj gerrit upload, which uploads @ when it has a description and @- otherwise.
- r
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-git-remote-transient
- Open the Remote Management transient.
- ContextGit Integration › Remotes
- r
- KindCommand binding
- InterfaceRemote Management transient
- Command
majutsu-git-remote-rename
- Rename a remote.
- ContextGit Integration › Remotes
- r
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-rebase
- Open the Rebase transient. This is one of Majutsu's most powerful features, allowing you to visually select sources and destinations.
- ContextManipulating › Rebasing
- R
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-restore
- Open the Restore transient for undoing changes.
- ContextManipulating › Restoring
- R
- KindCommand binding
- InterfaceSparse transient
- Command
majutsu-sparse-reset
- Reset to all files (jj sparse reset).
- r
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-root
- Show and copy the current workspace root.
- r
- KindTransient argument
- InterfaceDiff transient
- Select revisions to diff (--revisions). Can specify multiple revisions or a revset like B::D.
- r / -r / c
- KindTransient argument
- InterfaceMetaedit transient
- Toggle revisions at point or in the active region, read a revset, or clear the visual revision selections. Multiple revisions are supported.
- ContextManipulating › Metaediting
- r / -r / c
- KindTransient argument
- InterfaceSign and Unsign transients
- Toggle revisions at point or in the active region, read a revset, or clear the visual revision selections.
- RET
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeVanilla
- Command
majutsu-annotate-show-commit
- Show the chunk's revision diff.
- RET
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - Command
majutsu-diff-visit-file
- Visit the appropriate version of the file at point. For working copy diffs, added/context lines visit the workspace file while removed lines visit the parent-side blob. For committed changes, it visits the blob at the corresponding side.
- s
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-set
- Set or move an existing bookmark to the current revision.
- S
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-split
- Open the Split transient. This allows you to split a revision into multiple parts.
- ContextManipulating › Splitting
- s
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-squash
- Open the Squash transient. You can select multiple source revisions (--from) to squash into a destination (--into).
- ContextManipulating › Squashing
- s
- KindCommand binding
- InterfaceTag transient
- Command
majutsu-tag-set
- Set tag(s). Uses completion and allows new names.
- ContextTags › Tag Transient
- s / S
- KindCommand binding
- InterfaceSparse transient
- Commands
majutsu-sparse-set,majutsu-sparse-set-clear
- Set patterns by appending, or replace the entire set after clearing it first.
- S-SPC
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - Command
majutsu-annotate-show-or-scroll-down
- Scroll the diff window down if it is already open.
- SPC
- KindCommand binding
- InterfaceAnnotate buffer
- Mode
majutsu-annotate-read-only-mode - ScopeVanilla
- Command
majutsu-annotate-show-or-scroll-up
- Scroll the diff window up if it is already open.
- t
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-track
- Track a remote bookmark to create a local one.
- t
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeVanilla
- Command
majutsu-diff-toggle-refine-hunk
- Toggle word-level refinement.
- T
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeVanilla
- Command
majutsu-diff-toggle-fontify-hunk
- Toggle syntax highlighting within diff hunks. With a prefix argument, cycle between highlighting the current hunk on selection and highlighting all hunks immediately.
- u
- KindCommand binding
- InterfaceBookmark transient
- Command
majutsu-bookmark-untrack
- Untrack a remote bookmark.
- u
- KindCommand binding
- InterfaceGit transient
- Command
majutsu-gerrit-upload-transient
- Open the Gerrit upload transient.
- u
- KindCommand binding
- InterfaceRemote Management transient
- Command
majutsu-git-remote-set-url-transient
- Set remote URLs. With no option, Majutsu prompts for the fetch URL/path positional; use --fetch and/or --push to set them explicitly. In the remote list buffer, the remote at point is used as the default.
- ContextGit Integration › Remotes
- u
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-update-stale
- Update a stale workspace.
- u / C-r
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeEvil
- Commands
majutsu-undo,majutsu-redo
- Undo or redo.
- ContextManipulating › Undo and Redo
- V
- KindCommand binding
- InterfaceBlob buffer
- Mode
majutsu-blob-mode - ScopeVanilla
- Command
majutsu-blob-visit-file
- Jump to the workspace version of the same file.
- v
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-evolog
- Open the evolution log for the revision at point.
- V
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-revert
- Open the Revert transient to apply reverse changes in one or more new revisions.
- ContextManipulating › Reverting
- v
- KindCommand binding
- InterfaceWorkspace transient
- Command
majutsu-workspace-visit
- Visit a workspace by changing default-directory and refreshing Majutsu buffers.
- W
- KindTransient argument
- InterfaceFetch transient
- Save stable fetch options as defaults for this jj repository. Majutsu remembers --remote, --tracked, and --all-remotes, but not one-off --branch or --tag selections.
- ContextGit Integration › Fetching
- W
- KindTransient argument
- InterfaceGerrit upload transient
- Save stable upload options as defaults for this jj repository. Majutsu remembers --remote, --remote-branch, --notify, and --ignore-attention-set, but not revisions, dry-run, metadata, state, or submit-related flags.
- W
- KindTransient argument
- InterfacePush transient
- Save stable push options as defaults for this jj repository. Majutsu remembers sync policy such as --remote, --all, --tracked, --deleted, --allow-empty-description, and --allow-private, but does not remember one-off targets like --bookmark, --tag, --change, --revision, --named, --option, or --dry-run.
- ContextGit Integration › Pushing
- W
- KindTransient argument
- InterfaceDiff transient
- Save the current diff arguments as defaults for this jj repository.
- W
- KindTransient argument
- InterfaceLog options transient
- Save the current log arguments as defaults for this jj repository.
- X
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - Command
majutsu-op-transient
- Open the operation dispatcher with log, diff, restore, revert, undo, and redo actions.
- x
- KindCommand binding
- InterfaceLog buffer
- Mode
majutsu-log-mode - ScopeEvil
- Command
majutsu-abandon
- Remove the revision at point from visible history and rebase its descendants onto its parent(s). With an active region selection, Majutsu abandons all selected revisions. The operation remains recoverable through jj's operation history until that history is pruned.
- ContextManipulating › Abandoning
- Z / %
- KindCommand binding
- InterfaceMajutsu buffer
- Mode
majutsu-mode - ScopeVanilla
- Command
majutsu-workspace
- Open the workspace transient.
- ~
- KindCommand binding
- InterfaceDiff buffer
- Mode
majutsu-diff-mode - ScopeEvil
- Command
majutsu-diff-default-context
- Reset the context for diff hunks to the default height.