-
Notifications
You must be signed in to change notification settings - Fork 112
Commands
t9md edited this page Apr 9, 2016
·
35 revisions
In this document, following abbreviations are used for shortness.
Abbrev | Selector | Description |
---|---|---|
!i |
:not(.insert-mode) |
except insert-mode |
i |
.insert-mode |
|
o |
.operator-pending-mode |
|
n |
.normal-mode |
|
v |
.visual-mode |
|
vB |
.visual-mode.blockwise |
|
vL |
.visual-mode.linewise |
|
vC |
.visual-mode.characterwise |
|
iR |
.insert-mode.replace |
|
# |
.with-count |
when count is specified |
Keymap | Command | Description |
---|---|---|
select-latest-change |
Select latest yanked or changed range | |
n gv
|
select-previous-selection |
Select last selected visual area in current buffer |
!i dv x
|
delete |
|
n x
|
delete-right |
|
n X
|
delete-left |
|
!i D
|
delete-to-last-character-of-line |
|
!i g~o,v ~
|
toggle-case |
|
!i ~
|
toggle-case-and-move-right |
|
!i gUo,v U
|
upper-case |
|
!i guo,v u
|
lower-case |
|
!i gc
|
camel-case |
|
snake-case |
CamelCase -> camel_case | |
!i g-
|
dash-case |
|
title-case |
CamelCase -> Camel Case | |
encode-uri-component |
URI encode string | |
decode-uri-component |
Decode URL encoded string | |
transform-string-by-select-list |
Transform string by specified oprator selected from select-list | |
transform-word-by-select-list |
Transform string by specified oprator selected from select-list | |
transform-smart-word-by-select-list |
Transform InnerSmartWord by transform-string-by-select-list
|
|
replace-with-register |
Replace target with specified register value | |
swap-with-register |
Swap register value with target | |
!i >
|
indent |
|
!i <
|
outdent |
|
!i =
|
auto-indent |
|
!i g/
|
toggle-line-comments |
|
surround |
Surround target by specified character like ( , [ , "
|
|
surround-word |
Surround word | |
surround-smart-word |
Surround smart-word | |
map-surround |
Surround each word(/w+/ ) within target |
|
delete-surround |
Delete specified surround character like ( , [ , "
|
|
delete-surround-any-pair |
Delete surround character by auto-detect paired char from cursor enclosed pair | |
delete-surround-any-pair-allow-forwarding |
Delete surround character by auto-detect paired char from cursor enclosed pair and forwarding pair within same line | |
change-surround |
Change surround character, specify both from and to pair char | |
change-surround-any-pair |
Change surround character, from char is auto-detected | |
change-surround-any-pair-allow-forwarding |
Change surround character, from char is auto-detected from enclosed and forwarding area | |
!i y
|
yank |
|
!i Y
|
yank-line |
|
!i J
|
join |
|
!i gJ
|
join-with-keeping-space |
|
join-by-input |
Transform multi-line to single-line by with specified separator character | |
join-by-input-with-keeping-space |
Join lines without padding space between each line | |
split-string |
Split single-line into multi-line by splitting specified separator chars | |
reverse |
Reverse lines(e.g reverse selected three line) | |
n .
|
repeat |
|
!i m
|
mark |
|
!i ⌃a
|
increase |
|
!i ⌃x
|
decrease |
|
!i g⌃a
|
increment-number |
|
!i g⌃x
|
decrement-number |
|
!i P
|
put-before |
|
!i p
|
put-after |
|
put-before-and-select |
Paste before then select | |
put-after-and-select |
Paste after then select | |
!i r
|
replace |
|
n i
|
activate-insert-mode |
|
n gi
|
insert-at-last-insert |
|
vB I
|
insert-at-start-of-selection |
|
vB A
|
insert-at-end-of-selection |
|
n R
|
activate-replace-mode |
|
n a
|
insert-after |
|
n A
|
insert-after-end-of-line |
|
!i I
|
insert-at-beginning-of-line |
|
insert-by-motion |
Move by specified motion then enter insert-mode(i ) |
|
insert-after-by-motion |
Move by specified motion then enter insert-mode(a ) |
|
insert-at-previous-fold-start |
Move to previous fold start then enter insert-mode | |
insert-at-next-fold-start |
Move to next fold start then enter insert-mode | |
n O
|
insert-above-with-newline |
|
n o
|
insert-below-with-newline |
|
!i cv s
|
change |
|
n s
|
substitute |
|
!i S
|
substitute-line |
|
!i C
|
change-to-last-character-of-line |
Keymap | Command | Description |
---|---|---|
!i h!i ←
|
move-left |
|
!i l!i SPC!i →
|
move-right |
|
!i k!i ↑
|
move-up |
|
!i j!i ↓
|
move-down |
|
move-up-to-non-blank |
Move cursor up to non-blank char at same-column | |
move-down-to-non-blank |
Move cursor down to non-blank char at same-column | |
move-up-to-edge |
Move cursor up to edge char at same-column | |
move-down-to-edge |
Move cursor down to edge char at same-column | |
!i w
|
move-to-next-word |
|
!i b
|
move-to-previous-word |
|
!i e
|
move-to-end-of-word |
|
!i W
|
move-to-next-whole-word |
|
!i B
|
move-to-previous-whole-word |
|
!i E
|
move-to-end-of-whole-word |
|
move-to-next-alphanumeric-word |
Move to next alphanumeric(/w+/ ) word |
|
move-to-previous-alphanumeric-word |
Move to previous alphanumeric(/w+/ ) word |
|
move-to-end-of-alphanumeric-word |
Move to end of alphanumeric(/w+/ ) word |
|
move-to-next-smart-word |
Move to next smart word (/[w-]+/ ) word |
|
move-to-previous-smart-word |
Move to previous smart word (/[w-]+/ ) word |
|
move-to-end-of-smart-word |
Move to end of smart word (/[w-]+/ ) word |
|
!i }
|
move-to-next-paragraph |
|
!i {
|
move-to-previous-paragraph |
|
!i 0!i home
|
move-to-beginning-of-line |
|
!i $!i end
|
move-to-last-character-of-line |
|
!i g_
|
move-to-last-nonblank-character-of-line-and-down |
|
!i ^
|
move-to-first-character-of-line |
|
!i -
|
move-to-first-character-of-line-up |
|
!i +!i ⏎
|
move-to-first-character-of-line-down |
|
!i _
|
move-to-first-character-of-line-and-down |
|
!i gg
|
move-to-first-line |
|
!i G
|
move-to-last-line |
|
#!i %
|
move-to-line-by-percent |
|
!i H
|
move-to-top-of-screen |
|
!i M
|
move-to-middle-of-screen |
|
!i L
|
move-to-bottom-of-screen |
|
!i ⌃f
|
scroll-full-screen-down |
|
!i ⌃b
|
scroll-full-screen-up |
|
!i ⌃d
|
scroll-half-screen-down |
|
!i ⌃u
|
scroll-half-screen-up |
|
!i f
|
find |
|
!i F
|
find-backwards |
|
!i t
|
till |
|
!i T
|
till-backwards |
|
!i ;
|
repeat-find |
|
!i ,
|
repeat-find-reverse |
|
!i `
|
move-to-mark |
|
!i '
|
move-to-mark-line |
|
!i /
|
search |
|
!i ?
|
search-backwards |
|
!i *
|
search-current-word |
|
!i #
|
search-current-word-backwards |
|
!i n
|
repeat-search |
|
!i N
|
repeat-search-reverse |
|
move-to-previous-fold-start |
Move to previous fold start | |
move-to-next-fold-start |
Move to next fold start | |
move-to-previous-fold-start-with-same-indent |
Move to previous same-indented fold start | |
move-to-next-fold-start-with-same-indent |
Move to next same-indented fold start | |
move-to-previous-fold-end |
Move to previous fold end | |
move-to-next-fold-end |
Move to next fold end | |
move-to-previous-function |
Move to previous function | |
move-to-next-function |
Move to next function | |
move-to-previous-string |
Move to previous string(searched by string.begin scope) |
|
move-to-next-string |
Move to next string(searched by string.begin scope) |
|
move-to-previous-number |
Move to previous number(searched by constant.numeric scope) |
|
move-to-next-number |
Move to next number(searched by constant.numeric scope) |
|
!i %
|
move-to-pair |
Keymap | Command | Description |
---|---|---|
o,v aw
|
a-word |
|
o,v iw
|
inner-word |
|
o,v aW
|
a-whole-word |
|
o,v iW
|
inner-whole-word |
|
a-smart-word |
A word that consists of alphanumeric chars(/[A-Za-z0-9_]/ ) and hyphen -
|
|
inner-smart-word |
Currently No diff from a-smart-word
|
|
o,v as
|
a-any-pair |
|
o,v is
|
inner-any-pair |
|
a-any-pair-allow-forwarding |
Range surrounded by auto-detected paired chars from enclosed and forwarding area | |
inner-any-pair-allow-forwarding |
Range surrounded by auto-detected paired chars from enclosed and forwarding area | |
o,v aq
|
a-any-quote |
|
o,v iq
|
inner-any-quote |
|
o,v a"
|
a-double-quote |
|
o,v i"
|
inner-double-quote |
|
o,v a'
|
a-single-quote |
|
o,v i'
|
inner-single-quote |
|
o,v a`
|
a-back-tick |
|
o,v i`
|
inner-back-tick |
|
o,v a{o,v a}o,v aB
|
a-curly-bracket |
|
o,v i{o,v i}o,v iB
|
inner-curly-bracket |
|
a-curly-bracket-allow-forwarding |
||
inner-curly-bracket-allow-forwarding |
||
o,v a[o,v a]
|
a-square-bracket |
|
o,v i[o,v i]
|
inner-square-bracket |
|
a-square-bracket-allow-forwarding |
||
inner-square-bracket-allow-forwarding |
||
o,v a(o,v a)o,v ab
|
a-parenthesis |
|
o,v i(o,v i)o,v ib
|
inner-parenthesis |
|
a-parenthesis-allow-forwarding |
||
inner-parenthesis-allow-forwarding |
||
o,v a<o,v a>
|
a-angle-bracket |
|
o,v i<o,v i>
|
inner-angle-bracket |
|
a-angle-bracket-allow-forwarding |
||
inner-angle-bracket-allow-forwarding |
||
o,v at
|
a-tag |
|
o,v it
|
inner-tag |
|
o,v ap
|
a-paragraph |
|
o,v ip
|
inner-paragraph |
|
o,v a/
|
a-comment |
|
o,v i/
|
inner-comment |
|
o,v ai
|
a-indentation |
|
o,v ii
|
inner-indentation |
|
o,v az
|
a-fold |
|
o,v iz
|
inner-fold |
|
o,v af
|
a-function |
|
o,v if
|
inner-function |
|
o,v al
|
a-current-line |
|
o,v il
|
inner-current-line |
|
o,v ae
|
a-entire |
|
o,v ie
|
inner-entire |
|
o,v ac
|
a-latest-change |
|
o,v ic
|
inner-latest-change |
Keymap | Command | Description |
---|---|---|
i ⌃r
|
insert-register |
|
insert-last-inserted |
Insert text inserted in latest insert-mode. Equivalent to i_CTRL-A of pure Vim |
|
i ⌃y
|
copy-from-line-above |
Insert character of same-column of above line. Equivalent to i_CTRL-Y of pure Vim |
copy-from-line-below |
Insert character of same-column of above line. Equivalent to i_CTRL-E of pure Vim |
Keymap | Command | Description |
---|---|---|
v ovB O
|
reverse-selections |
|
vB o
|
blockwise-other-end |
|
n u
|
undo |
|
n ⌃r
|
redo |
|
!i za
|
toggle-fold |
|
iR ⌃hiR BS
|
replace-mode-backspace |
|
maximize-pane |
||
!i ⌃e
|
scroll-down |
|
!i ⌃y
|
scroll-up |
|
!i z⏎
|
scroll-cursor-to-top |
|
!i zt
|
scroll-cursor-to-top-leave |
|
!i z-
|
scroll-cursor-to-bottom |
|
!i zb
|
scroll-cursor-to-bottom-leave |
|
!i z.
|
scroll-cursor-to-middle |
|
!i zz
|
scroll-cursor-to-middle-leave |
|
!i zs
|
scroll-cursor-to-left |
|
!i ze
|
scroll-cursor-to-right |