pub struct ActionIds {Show 197 fields
pub match_bracket: CommandId,
pub toggle_case_at_cursor: CommandId,
pub open_line_below: CommandId,
pub open_line_above: CommandId,
pub lsp_hover_request: CommandId,
pub search_next: CommandId,
pub search_previous: CommandId,
pub error_next: CommandId,
pub error_prev: CommandId,
pub error_first: CommandId,
pub error_last: CommandId,
pub error_next_file: CommandId,
pub error_prev_file: CommandId,
pub jump_history_back: CommandId,
pub pane_history_back: CommandId,
pub pane_history_forward: CommandId,
pub jump_history_forward: CommandId,
pub walk_mark_history_back: CommandId,
pub walk_mark_history_forward: CommandId,
pub tag_stack_pop: CommandId,
pub open_fold_at_cursor: CommandId,
pub close_fold_at_cursor: CommandId,
pub toggle_fold_at_cursor: CommandId,
pub open_all_folds: CommandId,
pub close_all_folds: CommandId,
pub cycle_fold_at_cursor: CommandId,
pub cycle_folds_global: CommandId,
pub goto_parent_fold: CommandId,
pub delete_fold_at_cursor: CommandId,
pub open_folds_recursively: CommandId,
pub close_folds_recursively: CommandId,
pub delete_folds_recursively: CommandId,
pub goto_next_fold: CommandId,
pub goto_prev_fold: CommandId,
pub toggle_fold_enable: CommandId,
pub undo: CommandId,
pub redo: CommandId,
pub repeat_last_change: CommandId,
pub page_down: CommandId,
pub half_page_down: CommandId,
pub half_page_up: CommandId,
pub page_up: CommandId,
pub scroll_line_up: CommandId,
pub scroll_line_down: CommandId,
pub redraw_screen: CommandId,
pub open_command_picker: CommandId,
pub open_history_picker: CommandId,
pub open_search_history_picker: CommandId,
pub enter_command_line: CommandId,
pub command_line_submit: CommandId,
pub command_line_cancel: CommandId,
pub command_line_history_prev: CommandId,
pub command_line_history_next: CommandId,
pub command_line_complete: CommandId,
pub command_line_complete_prev: CommandId,
pub command_line_describe_under_cursor: CommandId,
pub command_line_toggle_expand: CommandId,
pub search_line_submit: CommandId,
pub search_line_cancel: CommandId,
pub search_line_backspace: CommandId,
pub search_line_history_prev: CommandId,
pub search_line_history_next: CommandId,
pub search_line_toggle_expand: CommandId,
pub prompt_line_submit: CommandId,
pub prompt_line_cancel: CommandId,
pub oil_navigate_up: CommandId,
pub reselect_last_visual: CommandId,
pub paste_after: CommandId,
pub paste_before: CommandId,
pub lsp_definition_request: CommandId,
pub lsp_declaration_request: CommandId,
pub lsp_type_definition_request: CommandId,
pub lsp_implementation_request: CommandId,
pub lsp_references_request: CommandId,
pub lsp_follow_link_at_cursor: CommandId,
pub enter_append: CommandId,
pub enter_insert_first_non_blank: CommandId,
pub enter_append_end_of_line: CommandId,
pub display_line_down: CommandId,
pub display_line_up: CommandId,
pub display_line_start: CommandId,
pub display_line_end: CommandId,
pub create_fold_from_visual: CommandId,
pub delete_char_backward: CommandId,
pub insert_cursor_line_start: CommandId,
pub insert_cursor_line_end: CommandId,
pub insert_cursor_char_left: CommandId,
pub insert_cursor_char_right: CommandId,
pub insert_delete_word_backward: CommandId,
pub insert_delete_to_line_start: CommandId,
pub insert_kill_to_line_end: CommandId,
pub insert_indent_line: CommandId,
pub insert_dedent_line: CommandId,
pub completion_trigger: CommandId,
pub snippet_expand: CommandId,
pub lsp_diagnostic_popup: CommandId,
pub exit_visual: CommandId,
pub swap_visual_ends: CommandId,
pub replace_undo_last: CommandId,
pub enter_mode_insert: CommandId,
pub enter_mode_normal: CommandId,
pub enter_mode_replace: CommandId,
pub enter_visual_charwise: CommandId,
pub enter_visual_linewise: CommandId,
pub enter_visual_blockwise: CommandId,
pub enter_select_charwise: CommandId,
pub enter_select_linewise: CommandId,
pub enter_select_blockwise: CommandId,
pub enter_search_forward: CommandId,
pub enter_search_backward: CommandId,
pub search_word_under_cursor_forward: CommandId,
pub search_word_under_cursor_backward: CommandId,
pub jump_viewport_top: CommandId,
pub jump_viewport_middle: CommandId,
pub jump_viewport_bottom: CommandId,
pub scroll_cursor_to_top: CommandId,
pub scroll_cursor_to_center: CommandId,
pub scroll_cursor_to_bottom: CommandId,
pub h_scroll_right: CommandId,
pub h_scroll_left: CommandId,
pub h_scroll_half_right: CommandId,
pub h_scroll_half_left: CommandId,
pub h_scroll_cursor_left_edge: CommandId,
pub h_scroll_cursor_right_edge: CommandId,
pub join_lines_with_space: CommandId,
pub join_lines_bare: CommandId,
pub find_repeat_forward: CommandId,
pub find_repeat_reverse: CommandId,
pub insert_newline: CommandId,
pub insert_tab: CommandId,
pub overwrite_char: CommandId,
pub set_mark: CommandId,
pub jump_to_mark_line: CommandId,
pub jump_to_mark_exact: CommandId,
pub select_register: CommandId,
pub start_macro_record: CommandId,
pub play_macro: CommandId,
pub absorb_operator_delete: CommandId,
pub absorb_operator_change: CommandId,
pub absorb_operator_yank: CommandId,
pub absorb_operator_indent_right: CommandId,
pub absorb_operator_indent_left: CommandId,
pub absorb_operator_reindent: CommandId,
pub absorb_operator_reflow: CommandId,
pub absorb_operator_upper: CommandId,
pub absorb_operator_lower: CommandId,
pub absorb_operator_toggle_case: CommandId,
pub absorb_operator_search: CommandId,
pub split_pane_horizontal: CommandId,
pub split_pane_vertical: CommandId,
pub close_pane: CommandId,
pub only_pane: CommandId,
pub toggle_zoom_pane: CommandId,
pub navigate_pane_left: CommandId,
pub navigate_pane_down: CommandId,
pub navigate_pane_up: CommandId,
pub navigate_pane_right: CommandId,
pub next_pane: CommandId,
pub prev_pane: CommandId,
pub equalize_panes: CommandId,
pub grow_pane_height: CommandId,
pub shrink_pane_height: CommandId,
pub grow_pane_width: CommandId,
pub shrink_pane_width: CommandId,
pub picker_accept_in_split: CommandId,
pub picker_accept_in_vsplit: CommandId,
pub picker_accept_in_tab: CommandId,
pub next_tab: CommandId,
pub prev_tab: CommandId,
pub new_tab: CommandId,
pub close_tab: CommandId,
pub only_tab: CommandId,
pub quit: CommandId,
pub cancel: CommandId,
pub move_tab: CommandId,
pub move_pane_to_new_tab: CommandId,
pub completion_next: CommandId,
pub completion_prev: CommandId,
pub completion_accept: CommandId,
pub completion_cancel: CommandId,
pub completion_cancel_and_exit_insert: CommandId,
pub completion_toggle_docs: CommandId,
pub completion_docs_scroll_down: CommandId,
pub completion_docs_scroll_up: CommandId,
pub completion_accept_then_insert: CommandId,
pub insert_register: CommandId,
pub open_yank_picker: CommandId,
pub open_arg_picker: CommandId,
pub completion_filter_to_source: CommandId,
pub completion_filter_clear: CommandId,
pub snippet_next_placeholder: CommandId,
pub snippet_prev_placeholder: CommandId,
pub snippet_leave: CommandId,
pub search_refresh: CommandId,
pub compilation_recompile: CommandId,
pub compilation_jump: CommandId,
pub multibuffer_jump_to_source: CommandId,
}Expand description
Strongly-typed handles to every App-side action registered
in the global CommandRegistry. Mirrors the shape of
lattice_grammar::builtins::Builtins: each field is the
CommandId produced by CommandRegistry::register_action
at startup. The App stores this struct; per-mode keymap
modules consume it to build typed CommandInvocations for
chord bindings.
Fields§
§match_bracket: CommandId§toggle_case_at_cursor: CommandId§open_line_below: CommandId§open_line_above: CommandId§lsp_hover_request: CommandId§search_next: CommandId§search_previous: CommandId§error_next: CommandIdCM.2 (2026-07-22): Builtin ]qq — next error entry.
error_prev: CommandIdCM.2 (2026-07-22): Builtin [qq — previous error entry.
error_first: CommandIdCM.7 (2026-07-22): Builtin [Q — first error entry.
error_last: CommandIdCM.7 (2026-07-22): Builtin ]Q — last error entry.
error_next_file: CommandIdCM.7 (2026-07-22): Builtin ]qf — first entry of the next file.
error_prev_file: CommandIdCM.7 (2026-07-22): Builtin [qf — first entry of the previous file.
jump_history_back: CommandId§pane_history_back: CommandIdPBH.3: <C-6> / <C-7> – walk the active pane’s buffer trail.
pane_history_forward: CommandId§jump_history_forward: CommandId§walk_mark_history_back: CommandId§walk_mark_history_forward: CommandId§tag_stack_pop: CommandId§open_fold_at_cursor: CommandId§close_fold_at_cursor: CommandId§toggle_fold_at_cursor: CommandId§open_all_folds: CommandId§close_all_folds: CommandId§cycle_fold_at_cursor: CommandId§cycle_folds_global: CommandId§goto_parent_fold: CommandId§delete_fold_at_cursor: CommandId§open_folds_recursively: CommandId§close_folds_recursively: CommandId§delete_folds_recursively: CommandId§goto_next_fold: CommandId§goto_prev_fold: CommandId§toggle_fold_enable: CommandId§undo: CommandId§redo: CommandId§repeat_last_change: CommandId§page_down: CommandId§half_page_down: CommandIdVM.3j-2: vim’s <C-d> / <C-u> — SCROLL commands, not motions.
half_page_up: CommandId§page_up: CommandId§scroll_line_up: CommandId§scroll_line_down: CommandId§redraw_screen: CommandId§open_command_picker: CommandId§open_history_picker: CommandIdMB.3: q: — open the command-line history picker.
open_search_history_picker: CommandIdMB.5: q/ / q? — open the search-line history picker.
enter_command_line: CommandId§command_line_submit: CommandIdMB.1: command-line-mode chords (submit / cancel / history /
completion / describe). Registered so the mode’s table-form
keymap resolves them; each maps to an AppEffect.
command_line_cancel: CommandId§command_line_history_prev: CommandId§command_line_history_next: CommandId§command_line_complete: CommandId§command_line_complete_prev: CommandId§command_line_describe_under_cursor: CommandId§command_line_toggle_expand: CommandId§search_line_submit: CommandIdMB.5a: action:search-line-submit — <CR> on the /·? line.
search_line_cancel: CommandIdMB.5a: action:search-line-cancel — <Esc> / <C-c> on the /·? line.
search_line_backspace: CommandIdaction:search-line-backspace — <BS> on the /·? line.
Deletes a char; on an ALREADY-EMPTY pattern it cancels the
search instead (vim’s behaviour, which MB.5a dropped when
Action::SearchBackspace became a no-op).
search_line_history_prev: CommandIdMB.5b: action:search-line-history-prev — <C-p> / <Up> on the /·? line.
search_line_history_next: CommandIdMB.5b: action:search-line-history-next — <C-n> / <Down> on the /·? line.
search_line_toggle_expand: CommandIdMB.5c: action:search-line-toggle-expand — <C-x><C-e> on the /·? line.
prompt_line_submit: CommandIdaction:prompt-line-submit — <CR> on a generic
Effect::OpenPrompt prompt.
prompt_line_cancel: CommandIdaction:prompt-line-cancel — <Esc> / <C-c> on a generic
Effect::OpenPrompt prompt.
reselect_last_visual: CommandId§paste_after: CommandId§paste_before: CommandId§lsp_definition_request: CommandId§lsp_declaration_request: CommandId§lsp_type_definition_request: CommandId§lsp_implementation_request: CommandId§lsp_references_request: CommandId§lsp_follow_link_at_cursor: CommandId§enter_append: CommandId§enter_insert_first_non_blank: CommandId§enter_append_end_of_line: CommandId§display_line_down: CommandId§display_line_up: CommandId§display_line_start: CommandId§display_line_end: CommandId§create_fold_from_visual: CommandId§delete_char_backward: CommandId§insert_cursor_line_start: CommandIdInsert-mode line editing (readline/vim). One CommandId per chord;
all resolve to AppEffect::InsertLineEdit(kind).
insert_cursor_line_end: CommandId§insert_cursor_char_left: CommandId§insert_cursor_char_right: CommandId§insert_delete_word_backward: CommandId§insert_delete_to_line_start: CommandId§insert_kill_to_line_end: CommandId§insert_indent_line: CommandId§insert_dedent_line: CommandId§completion_trigger: CommandId§snippet_expand: CommandId§lsp_diagnostic_popup: CommandIdL4b: gl in lsp-diagnostics-mode. Command-name registration
only — the handler body is lsp-diagnostics-mode’s mode-owned
ActionHandlerRegistry closure (emits ShowDiagnosticsPopup);
the apply below is a dead Effect::None, like snippet_expand.
exit_visual: CommandId§swap_visual_ends: CommandId§replace_undo_last: CommandId§enter_mode_insert: CommandId§enter_mode_normal: CommandId§enter_mode_replace: CommandId§enter_visual_charwise: CommandId§enter_visual_linewise: CommandId§enter_visual_blockwise: CommandId§enter_select_charwise: CommandIdSN.3d Select-mode entry chords gh / gH / g<C-h>.
enter_select_linewise: CommandId§enter_select_blockwise: CommandId§enter_search_forward: CommandId§enter_search_backward: CommandId§search_word_under_cursor_forward: CommandId§search_word_under_cursor_backward: CommandId§jump_viewport_top: CommandId§jump_viewport_middle: CommandId§jump_viewport_bottom: CommandId§scroll_cursor_to_top: CommandId§scroll_cursor_to_center: CommandId§scroll_cursor_to_bottom: CommandId§h_scroll_right: CommandId§h_scroll_left: CommandId§h_scroll_half_right: CommandId§h_scroll_half_left: CommandId§h_scroll_cursor_left_edge: CommandId§h_scroll_cursor_right_edge: CommandId§join_lines_with_space: CommandId§join_lines_bare: CommandId§find_repeat_forward: CommandId§find_repeat_reverse: CommandId§insert_newline: CommandId§insert_tab: CommandId§overwrite_char: CommandId§set_mark: CommandId§jump_to_mark_line: CommandId§jump_to_mark_exact: CommandId§select_register: CommandId§start_macro_record: CommandId§play_macro: CommandId§absorb_operator_delete: CommandIdSlice 8.i.4.c: operator-prefix arms (d, c, y, >,
<, gU, gu, g~). Each chord binds a typed
CommandInvocation whose ActionSpec returns
AppEffect::AbsorbOperatorPrefix(op_id). The App
handler latches pending_count -> op_count and
pushes the operator’s chord prefix into
App::partial_chord. Replaces the legacy
Action::SetPending(Pending::AfterOperator(_)) flow.
absorb_operator_change: CommandId§absorb_operator_yank: CommandId§absorb_operator_indent_right: CommandId§absorb_operator_indent_left: CommandId§absorb_operator_reindent: CommandIdIN.7: vim’s = operator-pending prefix.
absorb_operator_reflow: CommandIdRF.2: vim’s gq and gw — one action, both chords.
absorb_operator_upper: CommandId§absorb_operator_lower: CommandId§absorb_operator_toggle_case: CommandId§absorb_operator_search: CommandId§split_pane_horizontal: CommandId§split_pane_vertical: CommandId§close_pane: CommandId§only_pane: CommandId<C-w>o / :only / emacs C-x 1 – close every pane except
the active one. S3b (2026-06-22).
toggle_zoom_pane: CommandIdZP.2: <C-w>z – toggle zoom on the active pane.
next_pane: CommandId§prev_pane: CommandId§equalize_panes: CommandIdIssue #28 (2026-05-22): split-ratio adjustment IDs.
grow_pane_height: CommandId§shrink_pane_height: CommandId§grow_pane_width: CommandId§shrink_pane_width: CommandId§picker_accept_in_split: CommandIdIssue #32 (2026-05-22): picker open-target override
CommandIds. <C-s> / <C-v> / <C-t> on picker
overlays bind to these.
picker_accept_in_vsplit: CommandId§picker_accept_in_tab: CommandId§next_tab: CommandIdIssue #29 (2026-05-22): tab management IDs.
prev_tab: CommandId§new_tab: CommandId§close_tab: CommandId§only_tab: CommandIdSlice 3 (2026-05-22): tabonly + tabmove. tabmove’s
numeric target is carried by the dispatched
Action::MoveTab(u32) payload; the CommandId here just
names the action for keymap binding + plugin lookup.
quit: CommandIdCM.3d (2026-07-22): graceful editor shutdown via
AppEffect::Quit. Reachable via :q and user bindings; the
hardcoded <C-c> → quit hatch was removed in CM.3d, and CG.1
gave that chord to Self::cancel.
cancel: CommandIdCG.1 (2026-08-07): foreground cancellation. Bound to <C-c> at
the Builtin layer in every mode, and to <C-g> by
emacs-keys-mode.
move_tab: CommandId§move_pane_to_new_tab: CommandIdT4 (2026-05-25): <C-w>T — move the active pane to a
fresh tab. Dispatched as Action::MovePaneToNewTab
(handler in Editor::do_move_pane_to_new_tab).
completion_next: CommandIdSlice 8.i.4.e: completion-popup overlay actions
(registered into a minor-mode layer pushed when the
popup opens; popped on close). Each ID is the typed
CommandInvocation peer of the legacy
Action::Completion* variants.
completion_prev: CommandId§completion_accept: CommandId§completion_cancel: CommandId§completion_cancel_and_exit_insert: CommandId§completion_toggle_docs: CommandId§completion_docs_scroll_down: CommandId§completion_docs_scroll_up: CommandId§completion_accept_then_insert: CommandId§insert_register: CommandIdYR.5: <C-r>{reg} — vim’s insert-register.
open_yank_picker: CommandIdYR.5: <C-r><C-r> — the yank picker.
open_arg_picker: CommandIdYR.6: <C-x><C-o> — the picker for the argument under the cursor.
completion_filter_to_source: CommandIdCSM.K2: restrict the popup to a single completion source.
Args::String(source_id), e.g. "gen:buffer-words". Bound
to popup-mode filter chords (<C-b>, <C-o>, <C-f>,
<C-t>, …).
completion_filter_clear: CommandIdCSM.K2: clear the active source filter (<C-Space>).
snippet_next_placeholder: CommandIdSlice 8.i.4.e: active-snippet overlay actions (registered into a minor-mode layer pushed when a snippet activates; popped on exit).
snippet_prev_placeholder: CommandId§snippet_leave: CommandId§search_refresh: CommandIdM.6.1 (2026-06-01): gr chord under
MinorMode(project-search-mode). Re-run the
scan with the view’s current query.
compilation_recompile: CommandIdCM.3a (2026-07-22): gr chord under
MajorMode(compilation-mode). Recompile — re-run the last
compilation command (AppEffect::CompileRun { cmdline: None }).
compilation_jump: CommandIdCM.3b (2026-07-22): <CR> chord under
MajorMode(compilation-mode). Jump to the source location on
the cursor line. Mode-owned: compilation-mode’s per-buffer
ActionHandlerRegistry closure parses the line + emits
AppEffect::CompileJumpToLocation; the registered ActionSpec
body is a dead Effect::None (the handler always intercepts).
multibuffer_jump_to_source: CommandIdMultibuffer-mode (2026-07-22): <CR> chord under
MajorMode(multibuffer-mode). Jump to the source file/row
of the excerpt under cursor. Generic — works for ANY
multibuffer view regardless of provider (search, problems,
narrow, etc.). Mode-owned: multibuffer-mode’s per-buffer
ActionHandlerRegistry closure resolves the source + path;
the registered ActionSpec body is a dead Effect::None.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ActionIds
impl RefUnwindSafe for ActionIds
impl Send for ActionIds
impl Sync for ActionIds
impl Unpin for ActionIds
impl UnsafeUnpin for ActionIds
impl UnwindSafe for ActionIds
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more