-
Notifications
You must be signed in to change notification settings - Fork 112
Commands
t9md edited this page Aug 4, 2017
·
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 |
% |
.has-persistent-selection |
when persistent-selection is exists |
Keymap | Command | Description |
---|---|---|
n gc
|
select-latest-change |
Select latest yanked or changed range |
n gv
|
select-previous-selection |
|
%!i ⌃⌘g
|
select-persistent-selection |
Select persistent-selection and clear all persistent-selection, it's like convert to real-selection |
!i g⌘d v.is-narrowed ⌘d
|
select-occurrence |
Add selection onto each matching word within target range |
v ⏎
|
create-persistent-selection |
|
toggle-persistent-selection |
||
!i go
|
toggle-preset-occurrence |
|
!i gO
|
toggle-preset-subword-occurrence |
|
!i g.
|
add-preset-occurrence-from-last-occurrence-pattern |
|
!i d o.delete-pending d
|
delete |
|
!i x n x
|
delete-right |
|
n X
|
delete-left |
|
n D vB D
|
delete-to-last-character-of-line |
|
!i D
|
delete-line |
|
!i y
|
yank |
|
!i Y
|
yank-line |
|
yank-to-last-character-of-line |
||
!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-with-auto-indent |
||
put-after-with-auto-indent |
||
add-blank-line-below |
||
add-blank-line-above |
||
n i
|
activate-insert-mode |
|
n R
|
activate-replace-mode |
|
n a
|
insert-after |
|
!i gI
|
insert-at-beginning-of-line |
|
n A
|
insert-after-end-of-line |
|
n I
|
insert-at-first-character-of-line |
|
n gi
|
insert-at-last-insert |
|
n O
|
insert-above-with-newline |
|
n o
|
insert-below-with-newline |
|
%n,v I
|
insert-at-start-of-target |
|
%n,v A
|
insert-at-end-of-target |
|
insert-at-start-of-occurrence |
||
insert-at-end-of-occurrence |
||
insert-at-start-of-subword-occurrence |
||
insert-at-end-of-subword-occurrence |
||
insert-at-start-of-smart-word |
||
insert-at-end-of-smart-word |
||
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 | |
!i c o.change-pending c
|
change |
|
v.is-narrowed ⌃⌘c
|
change-occurrence |
Change all matching word within target range |
!i s n s
|
substitute |
|
!i S
|
substitute-line |
|
vC C
|
change-line |
|
!i C
|
change-to-last-character-of-line |
|
!i g~ o,v ~
|
toggle-case |
Hello World -> hELLO wORLD
|
!i ~
|
toggle-case-and-move-right |
Hello World -> hELLO wORLD
|
!i gU o,v U
|
upper-case |
Hello World -> HELLO WORLD
|
!i gu o,v u
|
lower-case |
Hello World -> hello world
|
!i r
|
replace |
|
n r
|
replace-character |
|
split-by-character |
||
!i gC
|
camel-case |
hello-world -> helloWorld
|
snake-case |
HelloWorld -> hello_world
|
|
pascal-case |
hello_world -> HelloWorld
|
|
!i g-
|
dash-case |
HelloWorld -> hello-world |
title-case |
HelloWorld -> Hello World
|
|
encode-uri-component |
Hello World -> Hello%20World
|
|
decode-uri-component |
Hello%20World -> Hello World
|
|
!i g|
|
trim-string |
hello -> hello
|
!i gSPC
|
compact-spaces |
a b c -> a b c
|
remove-leading-white-spaces |
a b c -> a b c
|
|
convert-to-soft-tab |
||
convert-to-hard-tab |
||
.platform-darwin !i ⌃s
|
transform-string-by-select-list |
Interactively choose string transformation operator from select-list |
transform-word-by-select-list |
Interactively choose string transformation operator 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 |
|
!i gq o.reflow-pending q
|
reflow |
|
!i gw o.reflow-with-stay-pending w
|
reflow-with-stay |
|
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 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 | |
split-string-with-keeping-splitter |
Split single-line into multi-line by splitting specified separator chars | |
!i g,
|
split-arguments |
|
split-arguments-with-remove-separator |
||
split-arguments-of-inner-any-pair |
||
!i gr
|
reverse |
|
reverse-inner-any-pair |
||
rotate |
||
rotate-backwards |
||
rotate-arguments-of-inner-pair |
||
rotate-arguments-backwards-of-inner-pair |
||
!i gs
|
sort |
Sort alphabetically |
sort-case-insensitively |
Sort alphabetically with case insensitively | |
sort-by-number |
Sort numerically |
Keymap | Command | Description |
---|---|---|
!i h !i ←
|
move-left |
|
!i l !i SPC !i →
|
move-right |
|
!i k !i ↑
|
move-up |
|
move-up-wrap |
||
!i j !i ↓
|
move-down |
|
move-down-wrap |
||
!i gk
|
move-up-screen |
|
!i gj
|
move-down-screen |
|
!i [
|
move-up-to-edge |
Move cursor up to edge char at same-column |
!i ]
|
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 ge
|
move-to-previous-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 |
|
!i gE
|
move-to-previous-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 |
|
move-to-next-subword |
||
move-to-previous-subword |
||
move-to-end-of-subword |
||
!i )
|
move-to-next-sentence |
|
!i (
|
move-to-previous-sentence |
|
move-to-next-sentence-skip-blank-row |
||
move-to-previous-sentence-skip-blank-row |
||
!i }
|
move-to-next-paragraph |
|
!i {
|
move-to-previous-paragraph |
|
!i 0 !i numpad0 !i home
|
move-to-beginning-of-line |
|
!i |
|
move-to-column |
|
!i $ !i end o A
|
move-to-last-character-of-line |
|
!i g_
|
move-to-last-nonblank-character-of-line-and-down |
|
!i ^ o 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 `
|
move-to-mark |
|
!i '
|
move-to-mark-line |
|
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) |
|
.has-occurrence!i tab
|
move-to-next-occurrence |
|
.has-occurrence!i tab
|
move-to-previous-occurrence |
|
!i %
|
move-to-pair |
|
!i /
|
search |
|
!i ?
|
search-backwards |
|
!i *
|
search-current-word |
|
!i #
|
search-current-word-backwards |
Keymap | Command | Description |
---|---|---|
o,v aw
|
a-word |
|
o,v iw
|
inner-word |
|
o,v aW
|
a-whole-word |
|
o C o,v iW
|
inner-whole-word |
|
a-smart-word |
||
o c
|
inner-smart-word |
|
o,v ad
|
a-subword |
|
o d o,v id
|
inner-subword |
|
o,v as
|
a-any-pair |
|
o,v is
|
inner-any-pair |
|
a-any-pair-allow-forwarding |
||
inner-any-pair-allow-forwarding |
||
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 p o.has-occurrence p o.has-occurrence P o,v ip
|
inner-paragraph |
|
o,v ai
|
a-indentation |
|
o,v ii
|
inner-indentation |
|
o,v a/
|
a-comment |
|
o,v i/
|
inner-comment |
|
a-comment-or-paragraph |
||
inner-comment-or-paragraph |
||
o z o.has-occurrence z o,v az
|
a-fold |
|
o,v iz
|
inner-fold |
|
o.has-occurrence f o.has-occurrence F o,v af
|
a-function |
|
o,v if
|
inner-function |
|
o,v a,
|
a-arguments |
|
o , o,v i,
|
inner-arguments |
|
o,v al
|
a-current-line |
|
o.has-occurrence l o,v il
|
inner-current-line |
|
o,v ae
|
a-entire |
|
o,v ie o,v ⌘a
|
inner-entire |
|
o,v ac
|
a-latest-change |
|
o,v ic
|
inner-latest-change |
|
!i gn
|
search-match-forward |
|
!i gN
|
search-match-backward |
|
o,v gv
|
previous-selection |
|
o.has-occurrence r o,v ar
|
a-persistent-selection |
|
o,v ir
|
inner-persistent-selection |
|
o,v av
|
a-visible-area |
|
o.has-occurrence v o,v iv
|
inner-visible-area |
Keymap | Command | Description |
---|---|---|
!i m
|
mark |
|
v o vB O
|
reverse-selections |
|
vB o
|
blockwise-other-end |
|
n u
|
undo |
|
n ⌃r
|
redo |
|
!i!o zc
|
fold-current-row |
|
!i!o zo
|
unfold-current-row |
|
!i!o za
|
toggle-fold |
|
!i!o zC
|
fold-current-row-recursively |
|
!i!o zO
|
unfold-current-row-recursively |
|
!i!o zA
|
toggle-fold-recursively |
|
!i!o zR
|
unfold-all |
|
!i!o zM
|
fold-all |
|
!i!o zr
|
unfold-next-indent-level |
|
!i!o zm
|
fold-next-indent-level |
|
iR ⌃h iR BS
|
replace-mode-backspace |
|
!i ⌃e
|
scroll-down |
|
!i ⌃y
|
scroll-up |
|
!i!o z⏎
|
scroll-cursor-to-top |
|
!i!o zt
|
scroll-cursor-to-top-leave |
|
!i!o z-
|
scroll-cursor-to-bottom |
|
!i!o zb
|
scroll-cursor-to-bottom-leave |
|
!i!o z.
|
scroll-cursor-to-middle |
|
!i!o zz
|
scroll-cursor-to-middle-leave |
|
!i!o zs
|
scroll-cursor-to-left |
|
!i!o ze
|
scroll-cursor-to-right |
|
i ⌃o
|
activate-normal-mode-once |
|
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 |
|
!i gt
|
next-tab |
|
!i gT
|
previous-tab |