]]: jump by section (downward), next house roof ποΈ
[[: jump by section (upward), previous house roof ποΈ
w/W: jump by start of words, next snake head π
b/B: jump backward by words, previous snake head π
e/E: jump to end of words, next peacock tail π¦
ge/gE: jump backward to end of words (reverse e), previous peacock tail π¦
=motion: filter (equalprog) / indent text, filter text π§Ή
gi: jump to last insert position, last time writing place π
gv: re-select last visual selection ποΈ
gw: format lines to text width, format lines to text width (cursor stay) π
gq: format lines to text width, format lines to text width (cursor reset) π
0: start of line, start of the track with reserve π£οΈ
^: first non-blank character of line, start of the track π£οΈ
_: first non-blank character of line, in motions linewise, whole line
$: end of line, finish line π
G: End (prefix with number), basement β¬
i: start insert mode at cursor, put a stamp before βοΈ
a: append after the cursor, put a stamp after βοΈ
I: insert at the beginning of the line, put a stamp on left document side (after padding) [| ]A: append at the end of the line, put a stamp on right document side (after padding) [ ]|
o: open (append) blank line below current line, add a new empty line below current line π
O: open blank line above current line, add a new line above current line π
e a: append at end of word, add char after peacock tail π¦
r: replace a single character (does not use insert mode), toggle a single character π
J: join line below to the current one, remove bed legs ποΈ
cc: change (replace) an entire line, replace bed mattress ποΈ
cw: change (replace) to the end of word, cut peacock until tail π¦
c$: change (replace) to the end of line, cut until finish line π
ss*: delete character at cursor and substitute text, originally used s, remove stamp and put a new one βοΈ
S: delete line at cursor (except leading whitespace) and substitute text (same as cc), cut whole line and place a new one π
yy: yank (copy) a line
2yy: yank 2 lines
yw: yank word, yank until peacock tail π¦
y$: yank to end of line, yank until finish line π
p: put (paste) the clipboard after cursor, put a stamp after βοΈ
p: put (paste) before cursor, put a stamp before βοΈ
dd: delete (cut) a line, all charactres including new line
dw: delete (cut) the current word, delete until peacock tail π¦
x: delete (cut) current character, remove a stamp βοΈ
:w: write (save) the file, but donβt exit, πΎ
:wq: write (save) and quit, πΎ and πͺ
:q: quit (fails if anything has changed), quit, but check all stuff πͺ
:q!: quit and throw away changes, quit and throw away all stuff πͺ
~: case toggle (also useful gU...), grow a beard π§
2. File/window hotkeys:
%: find matching bracket (or other items, you can also combine va%), find matching bracket π§²
f: search forward for character, search ? forward π
F: search backward for character, search ? backward π
t: search forward for space before character, search _? forward π
T: search backward for space after character (reverse of t), search ?_ backward π
/pattern: search for pattern, search forward (left-right each line) π
?pattern: search backward for pattern, search backward (right-left each line) π
n: repeat search in same direction, search again π
N: repeat search in opposite direction, search again π
:e filename: Edit a file in a new buffer, create a new file π
:bnext (or :bn): go to next buffer, next page β π
:bprev (of :bp): go to previous buffer, previous page β π
:bd: delete a buffer (close a file), cut a page βοΈ π
:sp filename: Open a file in a new buffer and split window, cut a page in half βοΈ π
:Ex: Open file explorer, open file explorer π
ctrl+wv: Split windows vertically, cut a page in half vertically βοΈ π
ctrl+ws: Split windows, cut a page in half βοΈ π
ctrl+ww: switch between windows, switch between pages π π π
ctrl+wq: Quit a window, cut a part of page or whole page βοΈ π
c-w+hjkl
π
Move to window in direction, move to page in direction π π π
π
C-w o: Close other windows, cut other pages βοΈ π