Skip to main content

PopupPlacement

Enum PopupPlacement 

Source
pub enum PopupPlacement {
    CursorAnchored,
    Centered,
    MinibufferBand,
}
Expand description

Where the popup overlay anchors on screen.

Cursor-anchored popups (hover, signature help, diagnostic-at- cursor) sit adjacent to the symbol that triggered them so the user’s eye doesn’t have to leave the cursor to read them. Centred popups are command-launched and unrelated to where the cursor happens to be (:lsp-status, :describe-*, :apropos, :help, :keymap, :options, :ls, :lsp-log, …) so anchoring next to the cursor would produce a visually arbitrary placement. Centring puts them where the eye lands by default.

Variants§

§

CursorAnchored

Anchor adjacent to the document cursor (above / below depending on screen room).

§

Centered

Centre over the buffer area.

§

MinibufferBand

Full width of the active pane, anchored to its bottom edge. Which-key’s placement.

Bottom-anchored full-width is what emacs which-key and which-key.nvim both do, and per the UX-convention rule that muscle memory is the default worth keeping. It is also the only placement where the column count is predictable, which is what lets the grid be laid out ahead of the renderer.

Height is content + border, hard-capped at half the pane so the hint can never swallow the buffer it is describing.

Slice: WK.5.

Trait Implementations§

Source§

impl Clone for PopupPlacement

Source§

fn clone(&self) -> PopupPlacement

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for PopupPlacement

Source§

impl Debug for PopupPlacement

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for PopupPlacement

Source§

fn default() -> PopupPlacement

Returns the “default value” for a type. Read more
Source§

impl Eq for PopupPlacement

Source§

impl PartialEq for PopupPlacement

Source§

fn eq(&self, other: &PopupPlacement) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for PopupPlacement

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.