Skip to main content

dispatch_transient

Function dispatch_transient 

Source
pub fn dispatch_transient(
    ids: &MagitActionIds,
    ctx: &TransientContext,
    workdir: &Path,
) -> TransientSpec
Expand description

Build the repo-level dispatch transient (C-c g).

Key assignments follow Emacs magit’s own magit-dispatch where a corresponding lattice capability exists (s status, c commit, d diff, l log, b branch, z stash, r rebase, f fetch, F pull, P push) — muscle memory carries across editors for a menu this central, and every one of these keys means the same thing in magit. Magit entries with no lattice implementation behind them (bisect, submodule, patch) are deliberately ABSENT rather than present-and-inert: a menu row that does nothing when pressed is worse than a row that isn’t there.

MG.23h: ctx is where the menu was opened from. Two things vary on it, both mirroring a predicate magit puts on its own dispatch — the s row’s meaning ([status_row]) and the section-acting rows ([applying_changes_items]).