Skip to content
This repository was archived by the owner on Nov 6, 2022. It is now read-only.

List of implemented & planned commands

Kai Anter edited this page Apr 9, 2021 · 1 revision

Supported commands and motions

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.

Clone this wiki locally