This repository was archived by the owner on Nov 6, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
List of implemented & planned commands
Kai Anter edited this page Apr 9, 2021
·
1 revision
Command | Description | Status |
---|---|---|
Movement | ||
h | move cursor left | ✅ |
j | move cursor down | ✅ |
k | move cursor up | ✅ |
l | move cursor right | ✅ |
H | move to top of screen | ✅ |
M | move to middle of screen | ✅ |
L | move to bottom of screen | ✅ |
w | jump forwards to the start of a word | ✅ |
W | jump forwards to the start of a word (words can contain punctuation) | ✅ |
e | jump forwards to the end of a word | ✅ |
E | jump forwards to the end of a word (words can contain punctuation) | ✅ |
b | jump backwards to the start of a word | ✅ |
B | jump backwards to the start of a word (words can contain punctuation) | ✅ |
0 | jump to the start of the line | ✅ |
^ | jump to the first non-blank character of the line | planned |
$ | jump to the end of the line | ✅ |
g_ | jump to the last non-blank character of the line | planned |
gg | go to the first line of the document | ✅ |
G | go to the last line of the document | ✅ |
5G | go to line 5 | ✅ |
fx | jump to next occurrence of character x | planned |
tx | jump to before next occurrence of character x | planned |
} | jump to next paragraph (or function/block, when editing code) | planned |
{ | jump to previous paragraph (or function/block, when editing code) | planned |
% | find closing block | planned (maybe for begin/end too) |
Ctrl + b | move back one full screen | conflicting |
Ctrl + f | move forward one full screen | conflicting |
Ctrl + d | move forward 1/2 a screen | conflicting |
Ctrl + u | move back 1/2 a screen | conflicting |
Searching | ||
* | search forward word at cursor | ✅ |
n | move cursor forward after search | ✅ |
N | move cursor backwards after search | ✅ |
Inserting | ||
i | insert before the cursor | ✅ |
I | insert at the beginning of the line | ✅ |
a | insert (append) after the cursor | ✅ |
A | insert (append) at the end of the line | ✅ |
o | append (open) a new line below the current line | ✅ |
O | append (open) a new line above the current line | ✅ |
Esc | exit insert mode | ✅ |
Editing | ||
r | replace a single character | planned |
J | join line below to the current one | ✅ |
cc | change (replace) entire line | ✅ |
cw | change (replace) to the end of the word | ✅ |
c$ | change (replace) to the end of the lin e | ✅ |
s | delete character and substitute text | ✅ |
S | delete line and substitute text (same as cc) | ✅ |
xp | transpose two letters (delete and paste) | ✅ |
u | undo | ✅ |
Ctrl + r | redo | conflicting |
> | Indent | ✅ |
< | Unindent | ✅ |
~ | Switch case | planned |
gu | Changed case to lowercase | planned |
gU | Change case to uppercase | planned |
. | repeat last command | needs testing |
Copy/Cut/Paste | ||
yy | yank (copy) a line | ✅ |
Y | yank (copy) a line | ✅ |
2yy | yank (copy) 2 lines | ✅ |
yw | yank (copy) the characters of the word from the cursor position to the start of the next word | ✅ |
Y$ | yank (copy) to end of line | ✅ |
P | put (paste) the clipboard after cursor | ✅ |
P | put (paste) before cursor | ✅ |
dd | delete (cut) a line | ✅ |
2dd | delete (cut) 2 lines | ✅ |
Dw | delete (cut) the characters of the word from the cursor position to the start of the next word | ✅ |
D | delete (cut) to the end of the line | ✅ |
d$ | delete (cut) to the end of the line | ✅ |
x | delete (cut) character left of the cursor | ✅ |
X | delete (cut) character left of the cursor | ✅ |
Visual Mode | ||
v | start visual mode, mark lines, then do a command (like y-yank) | maybe |
V | start linewise visual mode | maybe |
Ctrl + v | start visual block mode | maybe |
conflicting means that the shortcut conflicts with some Delphi builtin command, still didn't think of a solution, maybe override when on normal mode.