Ĉiea
- :h[elp] ŝlosilvorto - malfermi helpopaĝon por ŝlosilvorto
- :sav[eas] dosiero - konservi dosieron kiel ...
- :clo[se] - fermi nunan fenestron
- :ter[minal] - malfermi fenestron terminalan
- K - malfermi paĝon man por vorto sub la montrilo
Movado de la Montrilo
- h - movi montrilon maldekstren
- j - movi montrilon malsupren
- k - movi montrilon supren
- l - movi montrilon dekstren
- gj - movi montrilon malsupren (multlinia teksto)
- gk - movi montrilon supren (multlinia teksto)
- H - movi montrilon al la supro de la ekrano
- M - movi montrilon al la mezo de la ekrano
- L - movi montrilon al la bazo de la ekrano
- w - salti antaŭen al la komenco de vorto
- W - salti antaŭen al la komenco de vorto (vortoj povas enhavi interpunkciojn)
- e - salti antaŭen al la fino de vorto
- E - salti antaŭen al la fino de vorto (vortoj povas enhavi interpunkciojn)
- b - salti malantaŭen al la komenco de vorto
- B - salti malantaŭen al la komenco de vorto (vortoj povas enhavi interpunkciojn)
- ge - salti malantaŭen al la fino de vorto
- gE - salti malantaŭen al la fino de vorto (vortoj povas enhavi interpunkciojn)
-
% - movi al para signo (defaŭlte subtenitaj paroj: '()', '{}', '[]' - uzu
:h matchpairs
en vim por pli da informo) - 0 - salti al la komenco de la linio
- ^ - salti al la unua neblanka signo de la linio
- $ - salti al la fino de la linio
- g_ - salti al la fina neblanka signo de la linio
- gg - iri al la unua linio de la dosiero
- G - iri al la fina linio de la dosiero
- 5gg or 5G - iri al linio 5
- gd - movi montrilon al loka deklaro
- gD - movi montrilon al ĉiea deklaro
- fx - salti al la sekva okazo de la signo x
- tx - salti antaŭ la sekvan okazon de la signo x
- Fx - salti al la lasta okazo de la signo x
- Tx - salti post la lastan okazon de la signo x
- ; - refari la lastan movadon f, t, F, aŭ T
- , - refari la lastan movadon f, t, F, aŭ T, male
- } - salti al la sekva paragrafo (aŭ funkcio/bloko, redaktante kodon)
- { - salti al la lasta paragrafo (aŭ funkcio/bloko, redaktante kodon)
- zz - centrigi montrilon en la ekrano
- zt - position cursor on top of the screen
- zb - position cursor on bottom of the screen
- Ctrl + e - movi ekranon suben unu linion (sen movigi montrilon)
- Ctrl + y - movi ekranon supren unu linion (sen movigi montrilon)
- Ctrl + b - movi malantaŭen unu tutan ekranon
- Ctrl + f - movi antaŭen unu tutan ekranon
- Ctrl + d - movi antaŭen duonon de ekrano
- Ctrl + u - movi malantaŭen duonon de ekrano
Inserta modo - inserti/aldoni tekston
- i - inserti antaŭ la montrilo
- I - inserti ĉe la komenco de la linio
- a - inserti (aldoni) post la montrilo
- A - inserti (aldoni) ĉe la fino de la linio
- o - aldoni novan linion sub la nuna linio
- O - alsoni novan linion super la nuna linio
- ea - inserti (aldoni) ĉe la fino de la vorto
- Ctrl + h - forigi la signo antaŭ la signo dum la inserta modo
- Ctrl + w - forigi la vorto antaŭ la montrilo dum la inserta modo
- Ctrl + j - komenci novan linion dum la inserta modo
- Ctrl + t - krei krommarĝenon ĉe la komenco de la linio (movi dekstren) dum la inserta modo
- Ctrl + d - forigi krommarĝenon ĉe la komenco de la linio (movi maldekstren) dum la inserta modo
- Ctrl + n - inserti (aŭtomate kompletigi) la sekvan kongruon antaŭ la montrilo dum la inserta modo
- Ctrl + p - inserti (aŭtomate kompletigi) la lastan kongruon antaŭ la montrilo dum la inserta modo
- Ctrl + rx - inserti la enhavon de la reĝistro x
- Ctrl + ox - provizore eniri normalan modon por fari unu normalmodan postulon x
- Esc or Ctrl + c - eliri insertan modon
Redaktado
- r - anstataŭigi unu signon
- R - anstataŭigi pli ol unu signon, ĝis vi klakas ESC
- J - kunigi suban linion al la nuna kun unu spaco inter ili
- gJ - kunigi suban linion al la nuna sen intera spaco
- gwip - aranĝi nunan paragrafon
- g~ - maligi majusklecon ĝis movado
- gu - ŝanĝi tekston en minusklon ĝis movado
- gU - ŝanĝi tekston en majusklon ĝis movado
- cc - ŝanĝi tutan linion
- c$ or C - ŝanĝi ĝis la fino de la linio
- ciw - ŝanĝi tutan vorton
- cw or ce - ŝanĝi ĝis la fino de la vorto
- s - forigi signon kaj anstataŭigi tekston
- S - forigi linion kaj anstataŭigi tekston (same al cc)
- xp - anstataŭigi du signojn (forigi kaj alglui)
- u - malfari
- U - malfari la laste ŝanĝitan linion
- Ctrl + r - refari
- . - ripeti la lastan postulon
Marki tekston (vida modo)
- v - komenci vidan modon, marki liniojn, kaj fari postulon (kiel y-yank)
- V - komenci polinan vidan modon
- o - movi montrilon al la alia flanko de la markita areo
- Ctrl + v - komenci blokan vidan modon
- O - movi montrilon al la alia angulo de la bloko
- aw - marki vorton
- ab - bloko per ()
- aB - bloko per {}
- at - bloko per etikedoj <>
- ib - ena bloko per ()
- iB - ena bloko per {}
- it - ena bloko per etikedoj <>
- Esc or Ctrl + c - eliri vida modo
Vidaj postuloj
- > - ŝovi tekston dekstren
- < - ŝovi tekston maldekstren
- y - kopii markitan tekston
- d - forigi markitan tekston
- ~ - maligi majusklecon
- u - ŝanĝi markitan tekston en minusklon
- U - ŝanĝi markitan tekston en majusklon
Reĝistroj
- :reg[isters] - montri enhavojn de la reĝistroj
- "xy - kopii en registron x
- "xp - alglui enhavon de reĝistro x
- "+y - kopii en sisteman tondujan reĝistron
- "+p - alglui el la sisteman tondujan reĝistron
0 - lasta kopio
" - sennoma reĝistro, lasta forigo aŭ kopio
% - nuna dosiernomo
# - alternativa dosiernomo
* - enhavo de la tondujo (X11 ĉefa)
+ - enhavo d la tondujo (X11 tondujo)
/ - lasta serĉesprimo
: - lasta postullinio
. - laste enmetita teksto
- - lasta malgranda (malpli ol linio) forigo
= - reĝistro esprimo
_ - reĝistro nigra truo
Markoj kaj lokoj
- :marks - listo de markoj
- ma - meti markon A en nuna loko
- `a - salti al loko de marko A
- y`a - kopii teksto ĝis loko de marko A
- `0 - iru al la loko kie oni laste eliris Vim
- `" - iru al la loko kie oni estis kiam laste redakti ĉi tiun dosieron
- `. - iru al la loko de la lasta ŝanĝo en ĉi tiu dosiero
- `` - iru al la loko antaŭ ol la lasta salto
- :ju[mps] - saltlisto
- Ctrl + i - iru al pli lasta loko en la saltlisto
- Ctrl + o - iru al malpli lasta loko en la saltlisto
- :changes - ŝanĝlisto
- g, - iru al pli lasta loko en la ŝanĝlisto
- g; - iru al la malpli lasta loko en la saltlisto
- Ctrl + ] - salti al la etikedo sub la montrilo
Macrooj
- qa - registri macroon a
- q - ĉesi registri macroon
- @a - aktivigi macroon a
- @@ - reaktivigi laste aktivigitan macroon
Tranĉi kaj alglui
- yy - kopii linion
- 2yy - kopii du liniojn
- yw - kopii la signojn de la vorto de la montrilloko ĝis la komenco de la sekva vorto
- yiw - kopii la vorton sub la montrilo
- yaw - kopii la vorton sub la montrilo kaj la spacon antaŭ ĝi aŭ post ĝi
- y$ or Y - kopii ĝis la fino de la linio
- p - alglui la tondujon post la montrilo
- P - alglui antaŭ la montrilo
- gp - alglui post la montrilo kaj meti la montrilon post la nova teksto
- gP - alglui antaŭ la montrilo kaj meti la montrilon post la nova teksto
- dd - forigi (tranĉi) linion
- 2dd - forigi (tranĉi) du liniojn
- dw - forigi (tranĉi) la signojn de la vorto de la montrilloko ĝis la komenco de la sekva vorto
- diw - forigi (tranĉi) la vorton sub la montrilo
- daw - forigi (tranĉi) la vorton sub la montrilo kaj la spacon antaŭ ĝi aŭ post ĝi
- :3,5d - delete lines starting from 3 to 5
e.g.
:.,$d - From the current line to the end of the file
:.,1d - From the current line to the beginning of the file
:10,1d - From the 10th line to the beginning of the file
- :g/{pattern}/d - delete all lines containing pattern
- :g!/{pattern}/d - delete all lines not containing pattern
- d$ or D - forigi (tranĉi) ĝis la fino de la linio
- x - forigi (tranĉi) signon
Krei krommarĝenojn
- >> - krei krommarĝenon (ŝovi dekstren) por linio unu ŝovlongon
- << - forigi krommarĝenon (ŝovi maldekstren) por linio unu ŝovlongon
- >% - krei krommarĝenojn sur bloko kun () aŭ {} (montrilo sur krampo)
- <% - de-indent a block with () or {} (cursor on brace)
- >ib - krei krommarĝenojn sur ena bloko kun ()
- >at - krei krommarĝenojn sur bloko kun etikedoj <>
- 3== - rekrei krommarĝenojn por 3 linioj
- =% - rekrei krommarĝenojn sur bloko kun () aŭ {} (montrilo sur krampo)
- =iB - rekrei krommarĝenon sur ena bloko kun {}
- gg=G - rekrei krommarĝenon sur tuta bufro
- ]p - alglui kaj ĝustigi krommarĝenojn por nuna linio
Elirado
- :w - konservi dosieron, sed ne eliri
- :w !sudo tee % - konservi la nunan dosieron per sudo
- :wq or :x or ZZ - konservi kaj eliri
- :q - eliri (malsukcese se estas nekonservitaj ŝanĝoj)
- :q! or ZQ - eliri kaj forigi nekonservitajn ŝanĝojn
- :wqa - konservi kaj eliri ĉiujn fenestrojnwrite
Serĉi kaj anstataŭigi
- /pattern - serĉi per esprimo
- ?pattern - serĉi malantaŭen por esprimo
- \vpattern - 'magiega' esprimp: signojn kiuj ne estas literoj aŭ ciferoj oni legas kiel specialiajn RegEspajn signojn (nebezonante kodŝanĝan signon)
- n - ripeti serĉon en la sama direkto
- N - ripeti serĉon en la mala direkto
- :%s/old/new/g - anstataŭigi ĉiujn malnovajn per novaj tra la dosiero
- :%s/old/new/gc - anstataŭigi ĉiujn malnovajn per novaj tra la dosiero, kun jesigoj
- :noh[lsearch] - forigi emfazon de serĉtrafoj
Serĉi tra pluraj dosieroj
- :vim[grep] /pattern/ {`{file}`} - serĉi per esprimo tra pluraj dosieroj
- :cn[ext] - salti al la sekva serĉtrafo
- :cp[revious] - salti al la lasta serĉtrafo
- :cope[n] - malfermi fenestron enhavantan la liston de serĉtrafoj
- :ccl[ose] - fermi la fenestro rapidripar'
Langetoj
- :tabnew or :tabnew {page.words.file} - malfermi dosieron en nova langeto
- Ctrl + wT - movi nunan dividan fenestron al ĝia propra langeto
- gt or :tabn[ext] - movi al la sekva langeto
- gT or :tabp[revious] - movi al la lasta langeto
- #gt - movi al langeto numero #
- :tabm[ove] # - movi nunan langeton al la #a pozicio (0-indeksa)
- :tabc[lose] - fermi nunan langeton kaj ĉiujn el ĝiaj fenestroj
- :tabo[nly] - fermi ĉiujn langetojn krom la nuna
-
:tabdo command - fari la
postulo
en ĉiuj langetoj (ekz.:tabdo q
fermas ĉiujn malfermajn langetojn)
Trakti plurajn dosierojn
- :e[dit] dosiero - redakti dosieron en nova bufro
- :bn[ext] - iri al la sekva bufro
- :bp[revious] - iri al la lasta bufro
- :bd[elete] - forigi bufron (fermi dosieron)
- :b[uffer]# - iri al bufro per indekso #
- :b[uffer] file - iri al bufro per dosiero
- :ls or :buffers - listi ĉiujn malfermajn bufrojn
- :sp[lit] dosiero - malfermi dosieron en nova bufro kaj dividi fenestron
- :vs[plit] dosiero - malfermi dosieron en nova bufro kaj vertikale dividi fenestron
- :vert[ical] ba[ll] - redakti ĉiujn bufrojn en vertikalaj fenestroj
- :tab ba[ll] - redakti ĉiujn bufrojn en langetoj
- Ctrl + ws - dividi fenestron
- Ctrl + wv - vertikale dividi fenestron
- Ctrl + ww - anstataŭigi fenestrojn
- Ctrl + wq - eliri fenestron
- Ctrl + wx - anstataŭigi nunan fenestron per la sekvan
- Ctrl + w= - egaligi la alton kaj larĝon de ĉiuj fenestroj
- Ctrl + wh - movi montrilon al la maldekstra fenestro (vertikala divido)
- Ctrl + wl - movi montrilon al la dekstra fenestro (vertikala divido)
- Ctrl + wj - movi montrilon al la suba fenestro (horizontala divido)
- Ctrl + wk - movi montrilon al la supera fenestro (horizontala divido)
- Ctrl + wH - farigi nunan fenestron plenalta ĉe la plej maldekstra vertikala fenestro
- Ctrl + wL - farigi nunan fenestron plenalta ĉe la plej dekstra vertikala fenestro
- Ctrl + wJ - farigi nunan fenestron plenlarĝa ĉe la plej suba horizontala fenestro
- Ctrl + wK - farigi nunan fenestron plenlarĝa ĉe la plej supera horizontala fenestro
Dosierdiferenca
- zf - difini faldon ĝis movado
- zd - forigi faldon sub montrilo
- za - inversigi faldon sub montrilo
- zo - malfermi faldon sub montrilo
- zc - fermi faldon sub montrilo
- zr - malfermi ĉiujn faldojn unu nivelon
- zm - fermi ĉiujn faldojn unu nivelon
- zi - inversigi kapablecon de foldoj
- ]c - salti al komenco de sekva ŝanĝo
- [c - salti al komenco de lasta ŝanĝo
- do or :diffg[et] - obteni diferencon (el alia bufro)
- dp or :diffpu[t] - meti diferencon (al alia bufro)
- :diffthis - farigi nunan fenestron parto de diferenco
- :dif[fupdate] - ĝisdatigi diferencojn
- :diffo[ff] - malaktivigi dosierdiferencan modon en nuna fenestro