mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-12-29 16:52:31 +08:00
76 lines
2.3 KiB
Markdown
76 lines
2.3 KiB
Markdown
vi-mode
|
|
=======
|
|
This plugin increase `vi-like` zsh functionality.
|
|
|
|
Use `ESC` or `CTRL-[` to enter `Normal mode`.
|
|
|
|
|
|
History
|
|
-------
|
|
|
|
- `ctrl-p` : Previous command in history
|
|
- `ctrl-n` : Next command in history
|
|
- `/` : Search backward in history
|
|
- `n` : Repeat the last `/`
|
|
|
|
|
|
Mode indicators
|
|
---------------
|
|
|
|
*Normal mode* is indicated with red `<<<` mark at the right prompt, when it
|
|
wasn't defined by theme.
|
|
|
|
|
|
Vim edition
|
|
-----------
|
|
|
|
- `v` : Edit current command line in Vim
|
|
|
|
|
|
Movement
|
|
--------
|
|
|
|
- `$` : To the end of the line
|
|
- `^` : To the first non-blank character of the line
|
|
- `0` : To the first character of the line
|
|
- `w` : [count] words forward
|
|
- `W` : [count] WORDS forward
|
|
- `e` : Forward to the end of word [count] inclusive
|
|
- `E` : Forward to the end of WORD [count] inclusive
|
|
- `b` : [count] words backward
|
|
- `B` : [count] WORDS backward
|
|
- `t{char}` : Till before [count]'th occurrence of {char} to the right
|
|
- `T{char}` : Till before [count]'th occurrence of {char} to the left
|
|
- `f{char}` : To [count]'th occurrence of {char} to the right
|
|
- `F{char}` : To [count]'th occurrence of {char} to the left
|
|
- `;` : Repeat latest f, t, F or T [count] times
|
|
- `,` : Repeat latest f, t, F or T in opposite direction
|
|
|
|
|
|
Insertion
|
|
---------
|
|
|
|
- `i` : Insert text before the cursor
|
|
- `I` : Insert text before the first character in the line
|
|
- `a` : Append text after the cursor
|
|
- `A` : Append text at the end of the line
|
|
- `o` : Insert new command line below the current one
|
|
- `O` : Insert new command line above the current one
|
|
|
|
|
|
Delete and Insert
|
|
-----------------
|
|
|
|
- `ctrl-h` : While in *Insert mode*: delete character before the cursor
|
|
- `ctrl-w` : While in *Insert mode*: delete word before the cursor
|
|
- `d{motion}` : Delete text that {motion} moves over
|
|
- `dd` : Delete line
|
|
- `D` : Delete characters under the cursor until the end of the line
|
|
- `c{motion}` : Delete {motion} text and start insert
|
|
- `cc` : Delete line and start insert
|
|
- `C` : Delete to the end of the line and start insert
|
|
- `r{char}` : Replace the character under the cursor with {char}
|
|
- `R` : Enter replace mode: Each character replaces existing one
|
|
- `x` : Delete [count] characters under and after the cursor
|
|
- `X` : Delete [count] characters before the cursor
|