pub enum BufferDisplayCategory {
LspStatus,
LspLog,
Messages,
HelpTopic,
HelpDescribe,
HelpApropos,
HelpList,
Hover,
Signature,
PickerResult,
}Expand description
Per-feature display preference. Each command that produces a
buffer carries its category; the App resolves the category to
a BufferDisplay via default_display (today) or a
user-supplied override (follow-up).
Granularity rationale: per-command is too narrow (six
:describe-* variants would need six knobs); per-BufferKind
is too coarse (every help-flavoured surface is Help, but
hover and :lsp-log have wildly different display intents).
Per-category groups commands that share intent, which is
what users actually configure.
Multiple-choice surfaces (:diagnostics, :references,
:symbol, :Files, :buffers) are picker-shaped by
design – the user picks one of N candidates – and don’t
have a category here. Their picker UI is a fixed surface;
where the selected result lands is governed by
Self::PickerResult. The categories below all describe
dedicated single-buffer outputs.
Variants§
LspStatus
:lsp-status – one-shot read of the supervisor state.
LspLog
:lsp-log / :lsp-trace-log – live-tailed log views
the user wants to keep around. (:lsp-server-log is a
picker; it routes through Self::PickerResult once the
user picks a server, then the chosen log opens under
LspLog.)
Messages
:messages – chronological transcript of every echo
area message (analogue of emacs’s *Messages*).
Live-tailed via the MessagesRing; opens in the
active pane by default.
HelpTopic
:help <topic> – free-form help docs.
HelpDescribe
:describe-command/-buffer/-key/-option/-mode/-event –
introspection-driven help.
HelpApropos
:apropos <pattern> – search command names + docs.
HelpList
:ls, :keymap, :marks, :registers, :options –
state-listing help views.
Hover
K – inline hover / quick-info popup. Auto-dismisses on
cursor motion.
Signature
Signature help – argument-list popup that follows the cursor as the user types args.
PickerResult
Where the selected buffer / location lands after the
user accepts a picker entry. Used by :diagnostics /
:references / :symbol / :Files / :buffers /
:lsp-server-log – their picker UI is fixed; this knob
controls the post-accept buffer placement.
Trait Implementations§
Source§impl Clone for BufferDisplayCategory
impl Clone for BufferDisplayCategory
Source§fn clone(&self) -> BufferDisplayCategory
fn clone(&self) -> BufferDisplayCategory
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for BufferDisplayCategory
Source§impl Debug for BufferDisplayCategory
impl Debug for BufferDisplayCategory
impl Eq for BufferDisplayCategory
Source§impl Hash for BufferDisplayCategory
impl Hash for BufferDisplayCategory
Source§impl PartialEq for BufferDisplayCategory
impl PartialEq for BufferDisplayCategory
impl StructuralPartialEq for BufferDisplayCategory
Auto Trait Implementations§
impl Freeze for BufferDisplayCategory
impl RefUnwindSafe for BufferDisplayCategory
impl Send for BufferDisplayCategory
impl Sync for BufferDisplayCategory
impl Unpin for BufferDisplayCategory
impl UnsafeUnpin for BufferDisplayCategory
impl UnwindSafe for BufferDisplayCategory
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.