pub enum PickerAction {
SwitchToBuffer,
OpenLspLog,
OpenLspTraceLog,
OpenAiLog,
JumpToLspLocation,
AcceptLspCompletion,
AcceptLspCodeAction,
OpenFile,
AcceptShowMessageAction,
AcceptLspCodeLens,
AcceptColorPresentation,
}Expand description
What <CR> does to the selected candidate. Variants stay
dumb data; the App’s App::accept_picker
dispatcher pattern-matches and calls the right method.
Variants§
SwitchToBuffer
Selected candidate’s text is "#<id>"; activate that
buffer in the current pane.
OpenLspLog
Selected candidate’s text is "<server_id>\t<workspace>";
open *lsp:<server_id>* (the per-server log) in the
current pane via App::open_help_in_pane.
OpenLspTraceLog
Same encoding as OpenLspLog; opens
*lsp:<server_id>:trace* – the trace ring view –
without flipping the trace toggle. Pair with :lsp-trace <server> to actually start tracing.
OpenAiLog
Selected candidate carries RoutingPayload::AiSession;
open *ai:<provider>:<index>* (the per-session AI log) in
the current pane via the host’s
ensure_named_synthetic_document + AiLogMode. Emitted by
the :ai-log picker.
JumpToLspLocation
Selected candidate’s text is
"<path>\t<line>\t<col>" (LSP 0-based line + utf-8
byte column); jump to that location via the same
jump_to_file_line path the help-link click uses.
Used by multi-result gd / gD / gy / gI, by
gr references, and by :diagnostics.
AcceptLspCompletion
Selected candidate’s text is "#<idx>" – a numeric
index into the host’s pending_completion_items
snapshot. The accept handler reads the item by index
and splices it into the buffer at the captured replace
range. Used by :complete (Phase 4.2.g).
AcceptLspCodeAction
Selected candidate’s text is "#<idx>" – a numeric
index into the host’s pending_code_action_items
snapshot. Accept resolves the action (when needed)
then applies its WorkspaceEdit / executeCommand.
Used by :code-actions (Phase 4.3).
OpenFile
Accept the focused row’s
RoutingPayload::OpenFile – pass the path to
App::do_edit(Some(path), false). File picker
(:files) and recent-files picker share this action.
AcceptShowMessageAction
Accept one MessageActionItem from a server-initiated
window/showMessageRequest. Routing payload is
RoutingPayload::AcceptShowMessageAction; dismiss
(Esc) replies null via the SMR-specific arm in
do_picker_dismiss.
AcceptLspCodeLens
4.5.d: accept one code lens from the
:lsp-code-lens picker. Routing payload is
RoutingPayload::LspCodeLens; the host’s accept
dispatch resolves the lens (when needed) and routes
its command through workspace/executeCommand on
the originating server.
AcceptColorPresentation
4.5.e: accept one color presentation from the
:lsp-color-presentation picker. Routing payload is
RoutingPayload::ColorPresentation; the host
splices the chosen alternative into the buffer.
Trait Implementations§
Source§impl Clone for PickerAction
impl Clone for PickerAction
Source§fn clone(&self) -> PickerAction
fn clone(&self) -> PickerAction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more