pub fn dispatch_visual(
handle: &KeymapHandle,
chord: &KeyChord,
kind: VisualKind,
partial_chord: &[KeyChord],
active_minor_modes: &[ModeId],
) -> ActionExpand description
Dispatch a Visual-mode key event through the keymap registry.
- CONTROL-bearing key ->
Action::None. (Legacy short- circuitedCONTROLand onlyCONTROL.) - Mid-sequence (a text-object prefix
i/aalready inpartial_chord): resolve[partial_chord..., chord]against the Visual catalog. This is the SAME partial-chord machinery Normal mode uses –viwisvthen the two-key chord[i, w],vafis[a, f], etc. There is NO per-object code: every text object in [crate::keymap_normal::text_object_rows] works automatically, exactly as the user asked (“we shouldn’t have to do any custom handling of any text objects”). - Fresh keystroke. Blockwise overlay:
Char('I')/Char('A')go toEnterBlockVisualInsert/EnterBlockVisualAppendbefore lookup. Charwise / linewise fall through. - Single-chord lookup.
Bound->Invoke(folding any wildcard capture);Partial->AbsorbPartialChord(a barei/astarts a text object – absorb it so the next key resolves the pair);Unbound->Action::None.
partial_chord is the host’s running multi-key prefix (the same
Editor::partial_chord the Normal path threads); it is empty on a
fresh chord and holds the absorbed [i] / [a] mid-text-object.