VIM - CARTA DE REFERENCIA RÁPIDA


Movimiento básico
h l k jcaracter izq., derecha; línea arriba, abajo
b wpalabra/símbolo izquierda, derecha
ge efin de palabra/símbolo izquierda, derecha
{  }principio del anterior, siguiente párrafo
( )comienzo de anterior, siguiente oración
0 gmprincipio, medio de la línea
^  $primer, último caracter de la línea
nG ngglínea n. por defecto la primera, última
n%porcentaje n del archivo (n es obligatorio)
n|columna n de la línea actual
%siguiente llave, paréntesis, comentario, #define
nH nLlínea n desde el principio, medio de la ventana
Mmedio de la ventana

Inserción & sustitución modo insertar
i ainsertar antes, después del cursor
I Ainsertar al principio, fin de la línea
gIinsertar texto en la primera columna
o Oinsertar nueva línea abajo, arriba de la actual
rcsustituir caracter bajo el cursor por c
grccomo r, pero sin afectar el diseño
Rsustituir caracteres a partir del cursor
gRcomo R, pero sin afectar el diseño
cmcambiar texto del comando de deplazamiento m
cc or Scambiar línea actual
Ccambiar hasta el fin de la línea
scambiar un caracter e insertar
~invertir mayúscula/minúscula y avanzar el cursor
g~minvertir mayús/minús del movimiento m
gum gUmminúscula, mayúscula texto movimiento m
<m >mdesplazar izq., der. texto del movimiento m
n<< n>>desplazar n líneas a la izquierda, derecha

Borrado
x Xeliminar caracter sobre, previo al cursor
dmeliminar texto de comando de movimiento m
dd Deliminar línea actual, hasta fin de línea actual
J gJjuntar linea actual con la siguiente, sin espacio
:rdeliminar rango r de líneas
:rdxeliminar rango r de líneas al registro x

Modo insertar
^Vc ^Vninsertar caracter c literal, con valor decimal n
^Ainsertar último texto insertado
^@igual que ^A y detener inserción modo comando
^Rx ^R^Rxinsertar contenido de registro x, literal
^N ^Pcompletar texto antes, luego del cursor
^Weliminar palabra anterior al cursor
^Ueliminar todo el texto insertado en la línea actual
^D ^Tdesplazar linea a la izquierda, derecha
^Kc1c2 or c1c2entrar dígrafo \c1,c2\
^Ocejecutar c en modo de temporal de comando
^X^E ^X^Yscrollear arriba, abajo
<esc> or ^[salir del modo edición modo comando

Copiado
"xusar registro x para la siguiente acción
:regmostrar contenido de todos los registros
:reg xmostrar contenido de los registros x
ymcopiar texto del movimiento m
yy or Ycopiar línea actual al registro
p Ppegar registro antes, despues del cursor
]p [pcomo p, P pero ajustando la sangría
gp gPigual, pero cursor queda luego de texto nuevo

Inserción avanzada
g?mrealizar codificación rot13 en movimiento m
n^A n^Xincrementar/disminuir numero bajo el cursor
gqmformatear línea de movimiento m a ancho fijo
:rce wcentrar líneas en rango r a ancho w
:rle ialinear izq. lineas en rango r con sangría i
:rri walinear der. lineas en rango r con ancho w
!mcaplicar comando c al movimiento m
n!!caplicar comando c a siguientes n lineas
:r!caplicar comando c a rango de líneas r

Modo visual
v V ^Vempezar/terminar marca caract, líneas, bloque
ocursor de selección al principio/fin del marcado
gvempezar a marcar utilizando última zona marcada
aw as apseleccionar una palabra, oración, párrafo
ab aBseleccionar un bloque ( ), un bloque { }

Deshacer, repetir & registros
u Udeshacer último comando, restaurar última línea
.  ^Rrepetir últimos cambios, rehacer último deshacer
nrepetir últimos cambios n veces
qc qCgrabar, agregar teclas tipeadas en registro c
qdetener grabación
@cejecutar el contenido del registro c
@@repetir comando @ anterior
:@cejecutar registro c como un comando Ex
:rg/p/cejecutar comando Ex c en rango r
donde se cumpla el patrón p

Movimiento complejo
- +línea arriba, abajo al primer caracter no blanco
B Wsiguiente, anterior palabra separada por espacio
gE Efin de anterior, siguiente palabra espaciada
n_al primer caracter no blanco en linea n-1 debajo
g0principio de la línea en pantalla
g^  g$primer, último caracter de la línea en pantalla
gk gjlínea en pantalla arriba, abajo
fc Fcsiguiente, anterior ocurrencia del caracter c
tc Tcantes de la siguiente, anterior occurencia de c
; ,repetir última fFtT, en dirección opuesta
[[ ]]comienzo de la sección hacia atrás, adelante
[] ][fin de la sección hacia atrás, adelante
[( ])seccion (, ) abierta hacia atrás, adelante
[{  ]}seccion {, } abierta hacia atrás, adelante
[m ]mcomienzo de método Java hacia atrás, adelante
[# ]##if, #else, #endif abierto atrás, adelante
[* ]*principio, fin de /* */ hacia atrás, adelante

Búsqueda & sustitución
/s  ?sbuscar s hacia adelante, atrás
/s/o  ?s?obuscar s adelante, atrás con desplaz. o
or /repetir última búsqueda hacia adelante
or ?repetir última búsqueda hacia atrás
# *buscar adelante, atrás palabra sobre cursor
g# g*igual, pero buscar tambien resultados parciales
gd gDdefinición local, global de símbolo sobre cursor
:rs/f/t/xsustituir f por t en rango r
x: g-todas las ocurrencias, c-confirmar cambios
:rs xrepetir sustitución con nuevo r & x

Caracteres especiales en patrones de busqueda
.   ^  $caracter simple; comienzo, fin de línea
\< \>comienzo, fin de palabra
[c1-c2]caracter simple en el rango c1..c2
[^c1-c2]caracter simple no en el rango c1..c2
\i \k \I \Kidentificador, palabra clave; excl. dígitos
\f \p \F \Pnombre arch, car. imprim.; ign. dígitos
\s \Sespacio en blanco, no espacio en blanco
\e \t \r \b<esc>, <tab>, <>, <>
\= * \+0..1, 0.., 1.. del átomo anterior
\|separar dos ramas (  o)
\( \)agrupa patrones en un átomo
\& \ntodo el patrón encontrado, grupo no ()
\u \lpróximo caracter a mayúscula, minúscula

Desplazamientos en comandos de búsqueda
n or +nn líneas hacia abajo en columna 1
-nn líneas hacia arriba en columna 1
e+n e-nn caract. der., izq de comienzo del matcheo
s+n s-nn caract. der., izq. del final del matcheo
;scejecutar comando de búsqueda sc a continuación

Marcas y movimiento
mcmarcar posición actual con marca [a..Z]
`c `Cir a marca c en archivo actual, cualquier archivo
`0..9ir a última posición de salida
`` `"ir a posición antes del salto, de última edición
`[ `]ir al principio, fin del último texto operado
:marksmostrar lista de marcas activas
:jumpsmostrar lista de saltos
n^Oir a la na posición más vieja de la lista de saltos
n^Iir a la na posición más nueva de la lista de saltos

Mapeo de teclas & abreviaciones
:map c emapear e. modo normal & visual
:map!  c emap. e. modo insertar & comandos
:unmap c  :unmap!  cborrar mapeo c
:mk fguardar mapeos actuales en archivo f
:ab c eagregar abreviatura para e
:ab cmostrar abreviaturas que empiezan con c
:una cborrar abreviatura c

Etiquetas
:ta tsaltar a etiqueta t
:ntasaltar a la na etiqueta mas nueva
^] ^Tsaltar a etiqueta sobre cursor, volver de etiqueta
:ts tlistar etiquetas que matchean y elegir una
:tj tsaltar a etiqueta o elegir una si varias cumplen
:tagsmostrar lista de etiquetas
:npo  :n^Tsaltar desde, hacia n^va etiqueta vieja
:tlsaltar a última etiqueta que matchea
^W}  :pt tvista previa etiqueta sobre cursor, etiq. t
^W]separar ventana y mostrar etiqueta sobre el cursor
^Wz or :pccerrar vista previa de etiquetas

Scrolleo & ventanas
^E ^Yscrollear una línea arriba, abajo
^D ^Uscrollear media página arriba, abajo
^F ^Bscrollear una página arriba, abajo
zt or zponer línea actual al principio de la ventana
zz or z.  poner línea actual al centro de la ventana
zb or z-poner línea actual al final de la ventana
zh zlscrollear un caracter a la derecha, izquierda
zH zLscrollear media pantalla a la derecha, izquierda
^Ws or :splitdividir ventana en dos
^Wn or :newcrear nueva ventana vacía
^Wo or :onhacer ventana actual única en la pantalla
^Wj ^Wkpasar a la ventana de abajo, arriba
^Ww ^W^Wpasar a la ventana de abajo, arriba (ciclíco)

Comandos Ex ()
:e feditar archivo f, a menos que hayan cambios
:e!  feditar archivo f siempre (recargar el actual)
:wn :wNguardar archivo y editar siguiente, anterior
:n :Neditar archivo siguiente, anterior de la lista
:rwguardar rango r en archivo actual
:rw fguardar rango r a archivo f
:rw>>fagregar rango r al archivo f
:q :q!salir y confirmar, salir e ignorar cambios
:wq or :x or ZZguardar archivo actual y salir
<up> <down>recordar comandos anteriores (historial)
:r finsertar contenido archivo f debajo del cursor
:r!  cinsertar salida del comando c debajo del cursor
:allabrir una vent. por cada arch. pasado en los arg.
:argsmostrar lista de argumentos

Rangos Ex
, ;  separa dos números de línea, primera linea
nnúmero de linea absoluto n
.   $línea actual, última linea del archivo
% *todo el archivo, toda el área visual
'tposición de la marca t
/p/ ?p?la próxima, anterior línea que cumple con p
+n -n+n, -n al numero de línea predecesor

Pliegues (folding)
zfmcrear pliegue del movimiento m
:rfocrear pliegue para el rango r
zd zEborrar pliegue activo, todos los de la ventana
zo zc zO zCabrir, cerrar un pliegue; recursivamente
[z ]zir al comienzo, fin del pliegue actual
zj zkir abajo, arriba del comienzo, fin de sig. pliegue

Misceláneas
:sh  :!ccorrer shell, ejecutar comando c
Kbuscar palabra sobre el cursor con man
:makecorrer make, leer errores y saltar al primero
:cn  :cpmostrar el siguiente, anterior error
:cl  :cflistar errores, leer errores de archivo
^L ^Gredibujar pant., mostrar nombre archivo y pos.
g^Gmostrar columna, línea, palabra, byte actual
gamostrar código ASCII del caracter actual
gfabrir archivo con nombre debajo del cursor
:redir>fredirigir salida al archivo f
:mkview [f]guardar config. de vista [en archivo f]
:loadview [f]cargar config. de vista [de archivo f]
^@ ^K ^_  \  Fn ^Fnteclas no mapeadas


Copyright (C) 2005 by Laurent GRÉGOIRE (laurent.gregoire@icam.fr)
Translated from English by Pablo Hoffman
Converted from vimqrc-es.tex using a Python script.
You can find the latest revision at http://tnerual.eriogerg.free.fr