pub enum InsertLineEdit {
CursorLineStart,
CursorLineEnd,
CursorCharLeft,
CursorCharRight,
DeleteWordBackward,
DeleteToLineStart,
KillToLineEnd,
IndentLine,
DedentLine,
}Expand description
App-side typed effect produced by a CommandKind::Action
dispatch (DESIGN.md §5.2.1, see also docs/dev/notes/8i-approach.md).
Insert-mode line-editing operations — the general readline/vim chords
available in every buffer (part of the built-in grammar keymap, not a
mode). Distinct from Normal-mode motions/operators because Insert cursor
semantics differ (the caret sits between bytes and may rest past the last
char), so <C-e> lands after the last byte where $ would land on it.
Variants§
CursorLineStart
<C-a>: caret to the start of the line (byte 0).
CursorLineEnd
<C-e>: caret to the end of the line (past the last byte).
CursorCharLeft
<C-b>: caret one byte left (stops at line start).
CursorCharRight
<C-f>: caret one byte right (stops past the last byte).
DeleteWordBackward
<C-w>: delete the word before the caret.
DeleteToLineStart
<C-u>: delete from the line start to the caret.
KillToLineEnd
<C-k>: delete from the caret to the line end.
IndentLine
<C-t>: indent the current line by one shiftwidth.
DedentLine
<C-d>: dedent the current line by one shiftwidth.
Trait Implementations§
Source§impl Clone for InsertLineEdit
impl Clone for InsertLineEdit
Source§fn clone(&self) -> InsertLineEdit
fn clone(&self) -> InsertLineEdit
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 InsertLineEdit
Source§impl Debug for InsertLineEdit
impl Debug for InsertLineEdit
Source§impl<'de> Deserialize<'de> for InsertLineEdit
impl<'de> Deserialize<'de> for InsertLineEdit
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for InsertLineEdit
Source§impl PartialEq for InsertLineEdit
impl PartialEq for InsertLineEdit
Source§impl Serialize for InsertLineEdit
impl Serialize for InsertLineEdit
impl StructuralPartialEq for InsertLineEdit
Auto Trait Implementations§
impl Freeze for InsertLineEdit
impl RefUnwindSafe for InsertLineEdit
impl Send for InsertLineEdit
impl Sync for InsertLineEdit
impl Unpin for InsertLineEdit
impl UnsafeUnpin for InsertLineEdit
impl UnwindSafe for InsertLineEdit
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§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.