Comandes Vim usuals

Cerca

  • /foo cerca foo de dalt a baix.
  • ?foo cerca foo de baix a dalt.
  • /\<foo\> cerca foo (similar a \bfoo\b en Perl).
  • /^\n{3} cerca tres línies buides.
  • :bufdo /foo/ cerca foo a tots els buffers oberts.
  • n mou el cursor a la següent coincidència.

Reemplaçament

:[rang]s[ubstitute]/{patró}/{reemplaçament}/{cgiI}

Modificadors:

  • c confirma cada reemplaçament.
  • g reemplaça totes les coincidències.
  • i ignora la majúscules i minúscules.
  • I invers d'i.

Per cada línia a [rang] reemplaça la coincidència del {patró} pel {reemplaçament} el qual és una cadena que pot dur referències de grups capturats al {patró}. Els grups capturats es referencien mitjançant l'índex precedit per \; per exemple \1.

  • :%s/foo/bar/g reemplaça totes les coincidències de “foo” per “bar”.
  • :s/foo/bar/g reemplaça totes les coincidències de “foo” per “bar” de la línia sota el cursor.
  • :2,40s/foo/bar/g reemplaça totes les coincidències de “foo” per “bar” entre les línies 2 i 40.
  • :g/foo/d elimina totes les línies que contenen “foo”.
  • :v/foo/d elimina totes les línies que no contenen “foo”.
  • CTRL-a incrementa el valor numèric sota el cursor.
  • CTRL-x decrementa el valor numèric sota el cursor.

Per reemplaçar en múltiples es pot fer el següent:

  1. Obrir-los tots: :args my/files/*/*
  2. Aplicar la cerca i reemplaçament a tots els buffers oberts: :argdo %s/foo/bar/gec | update

Majúscules i minúscules

  • Vu passa la línia a minúscules.
  • VU passa la línia a majúscules.
  • vEu passa la paraula a minúscules.
  • vEU passa la paraula a majúscules.
  • g~~ inverteix majúscules i minúscules de la línia.
  • vE~ inverteix majúscules i minúscules de la paraula.

Colorejat de sintàxi

  • :syntax on activa el colorejat de sintàxi.
  • :set syntax=ruby força el colorejat del fitxer al tipus especificat.

Sagnat

  • >> sagna.
  • << desagna.
  • CTRL-t sagna en mode insert.
  • CTRL-d desagna en mode insert.

Navegació de fitxers

  • :e . obre l'explorador de fitxers integrat.
  • :Sex obre l'explorador de fitxers integrat en una finestra apart.
  • :browse e obre l'explorador de fitxers gràfic (GUI).
  • :ls llista els buffer oberts.
  • :bd 1 elimina el buffer número 1.
  • :b 1 edita el buffer número 1.
  • :cd .. es posiciona al directori pare.
  • gf obre el nom de fitxer sota el cursor.

Accés a Unix

  • :!pwd executa la comanda pwd i retorna a Vim.
  • :r!pwd executa la comanda pwd i inserta el resultat a Vim.
  • :sh retorna temporalment a Unix (per tornar a Vim: exit).

Pestanyes

  • :tabe filename obre el fitxer en una nova pestanya.
  • :tabnew obre una nova pestanya.
  • :tabclose tanca la pestanya.
  • :tabfirst mostra la primera pestanya.
  • :tablast mostra la darrera pestanya.
  • gt mostra la pestanya següent.
  • gT mostra la pestanya anterior.
  • :tabdo {comanda} executa la comanda a totes les pestanyes.
  • :tab ball reubica els buffers en pestanyes.
  • :tabs llista totes les pestanyes obertes.

Finestres

  • H deixa el cursor al principi de la finestra.
  • M deixa el cursor al mig de la finestra.
  • L deixa el cursor al final de la finestra.
  • :split filename separa la finestra en dos i obre el fitxer (horitzontal).
  • :vsplit filename separa la finestra en dos i obre el fitxer (vertical).
  • CTRL-w <fletxa amunt> Deixa el cursor a la finestra superior.
  • CTRL-w CTRL-w Deixa el cursor a la finestra següent.
  • CTRL-w _ Maximitza la finestra.
  • CTRL-w = Iguala les finestres.
  • 10 CTRL-w + Afegeix 10 línies a la finestra.

Scroll

  • CTRL-y fa scroll amunt.
  • CTRL-e fa scroll avall.
  • CTRL-u fa scroll amunt mitja finestra.
  • CTRL-d fa scroll avall mitja finestra.
  • CTRL-b fa scroll amunt d'una finestra.
  • CTRL-f fa scroll avall d'una finestra.
  • zt fa scroll posicionant el cursor al principi de la finestra.
  • zz fa scroll posicionant el cursor al mig de la finestra.
  • zb fa scroll posicionant el cursor al final de la finestra.

Completat

  • CTRL-n completat de paraula en mode insert.
  • CTRL-p completat de paraula en mode insert.
  • CTRL-x completat de línia en mode insert.
  • CTRL-l completat de línia en mode insert.