#Vim
###Índice
- Xeral
- Mover
- Modo comandos
- Modo insertar
- Modo visual
- Buscar e reemprazar
- Pestanas e ventás
- Marcadores
- Miselánea
- Recursos
- Se introduces o número n antes de un comando, executa ese comando n veces
- Se un comando ten un guión antes, indica que se debe executar dentro do correspondente modo
###Xeral
Comando | Función |
---|---|
u | Desfacer |
Ctrl + r | Refacer |
. | Repetir último comando |
:q | Pechar (non funciona se hai cambios) |
:q! / ZQ | Forzar o peche se hai cambios e non os queres gardar |
:qa | Pechar tódalas ventás |
:w | Gardar |
:w nome | Gardar unha copia chamada nome |
:wq / :x / ZZ | Gardar e saír |
:wa[!] | Gardar tódalas ventás [forzar] |
:Ex | Explorador de arquivos |
:help | Amosa axuda |
qm | Comeza a gravar unha macro e gardaa na letra *m (Para de grabar pulsando de novo q) |
@m | Executa a macro almacenada na letra m |
###Mover
Comando | Función |
---|---|
h / j / k / l | Mover á esquerda / abaixo /arriba / dereita |
w / W | Ir unha palabra adiante (dereita) / e que estén separadas por espazos |
e / E | Ir unha palabra adiante, ó final de ésta / e que estén separadas por espazos |
b / B | Ir unha palabra atrás (esquerda) / e que estén separadas por espazos |
0 (cero) | Ir ó principio da liña |
$ | Ir ó final da liña |
^ / _ | Ir ó principio da liña (caracter que non sexa un espazo) |
_ / g_ | Ir ó principio da liña (caracter que non sexa un espazo e pódese introduccir un nº antes) / Ir ó final da liña (parecido a $) |
gg | Ir ó principio do arquivo |
G | Ir ó final do arquivo |
nG | Ir á liña n |
% | Móvese entre paŕentesis (), chaves {} ou corchetes [] |
H / M / L | Ir á parte superior / media / inferior da pantalla |
zt / z. / zb | Poñer a liña do cursor na parte superior / media / inferior da pantalla |
Ctrl + U / + D | Mover media pantalla arriba / abaixo |
Ctrl + B / + F | Mover unha pantalla arriba / abaixo |
###Modo comandos
Comando | Función |
---|---|
yy / Y | Copiar unha liña |
yw | Copiar unha palabra |
y$ | Copiar ata o final da liña |
y0 | Copiar ata o principio da liña |
p / P | Pegar despois / antes do cursor |
dd | Cortar unha liña |
dw | Cortar unha palabra dende o cursor ata o final |
diw | Cortar unha palabra |
dip | Cortar un parágrafo |
D / d$ | Cortar ata o final da liña |
d0 | Cortar ata o principio da liña |
dib / diB | Corta o que hai dentro de paréntesis () / de chaves {} |
dab / daB | Corta o que hai dentro de paréntesis () / de chaves {} e máis a éstes incluídos |
x / X | Cortar caracter no que se atopa o cursor / anterior |
r | Reemprazar un caracter |
R | Entra en modo reemprazar |
cc | Cambiar toda a liña (borraa e entra en modo insertar) (igual que S) |
cw | Cambiar unha palabra dende o cursor ata o final |
ciw | Cambiar unha palabra |
C / c$ | Cambiar dende o cursor ata o final da liña |
s | Elimina o caracter e entra en modo insertar |
S | Elimina toda a liña e entra en modo insertar (igual que cc) |
| Añade identación (TAB) << | Elimina identación (TAB) J | Xunta a liña coa liña seguinte ~ | Reempraza entra maiúsculas e minúsculas :m n | Mover a liña actual a despois da liña n :m 0 | Mover a liña actual ó principio do documento :m $ | Mover a liña actual ó final do documento :m '}-1 | Mover a liña actual ó final do parágrafo :m 'm | Mover a liña actual ó marcador m :nm x | Mover a liña n a despois da liña x :m .+1 / :m+ | Mover a liña actual unha posición abaixo :g/^z/d | Borra tódalas liñas que comecen por z :g/^$/d | Borra tódalas liñas en branco
Combinación | Función |
---|---|
viwp | Pega sustituindo toda a palabra |
xp | Alterna a posición do caracter co anterior (typo) |
ynG / dnG / cnG | Copia / Borra / Cambia dende a liña actual, ata a liña n |
y'm / ... | Copia dende a liña actual ata o marcador m |
###Modo insertar
Comando | Función |
---|---|
i | Modo inserción no cursor |
I | Modo inserción ó principio da liña |
a | Modo inserción despois do cursor |
A | Modo inserción ó final da liña |
o | Modo inserción nunha nova liña debaixo da actual |
O | Modo inserción nunha nova liña enriba da actual |
-Ctrl + h | Borra o caracter anterior |
-Ctrl + w | Borra dende o cursor ata o inicio da palabra |
-Ctrl + u | Borra dende o cursor ata o principio da liña |
-Ctrl + N, Ctrl + P | Autocompletado de palabras (en modo insertar) |
-Ctrl + X, Ctrl + L | Autocompletado de liñas (en modo insertar) |
-ESC | Saír do modo insertar |
Combinación | Función |
---|---|
ea | Insertar despois de unha palabra |
bi | Insertar antes de unha palabra |
###Modo visual (selección)
Comando | Función |
---|---|
v | Modo visual no cursor |
V | Modo visual seleccionando as liñas completas |
-o | Moverse ó outro extremo da zona seleccionada |
-Ctrl + v | Modo visual en modo bloque |
-O | Moverse ó outro extremo do bloque |
-y | Copiar texto seleccionado |
-d | Cortar texto seleccionado |
-> / -< | Añade / Elimina identación |
-u / -U | Converter a minúsculas / maiúsculas |
-iw | Seleccionar unha palabra |
-ip | Seleccionar un parágrafo |
-ib / -iB | Seleccionar un bloque dentro de paréntesis () / chaves {} |
-ab / -aB | Seleccionar un bloque con paréntesis () / chaves {} incluídos |
-ESC | Saír do modo visual |
Combinación | Función |
---|---|
ggVG | Selecciona todo |
Vip | Selecciona todo o parágrafo |
Vn+ / Vn- | Selecciona a liña actual e máis as n seguintes / anteriores |
VnG | Selecciona dende a liña actual, ata a liña n |
###Buscar e reemprazar
Comando | Función |
---|---|
/texto / ?texto | Busca texto cara adiante / atrás |
n / N | Termo seguinte / anterior |
- / # | Busca a palabra sobre a que estamos, e vai ó termo seguinte / anterior :%s/textovello/textonovo/ | Reempraza a primeira expresión textovello por textonovo :%s/textovello/textonovo/g | Reempraza textovello por textonovo en todo o arquivo :%s/textovello/textonovo/gc | Reempraza textovello por textonovo en todo o arquivo pedindo confirmación
###Pestanas e Ventás (traballar con varios arquivos)
Comando | Función |
---|---|
:e arquivo | Abrir arquivo nun novo buffer |
:ls | Listar buffer |
:bn / bnext | Ir ó buffer seguinte |
:bp / :bprev | Ir ó buffer anterior |
:bd | Eliminar buffer (pechar arquivo) |
:sp arquivo | Abrir arquivo nun novo buffer, e dividir a pantalla hotizontalmente |
:vsp | Abrir arquivo nun novo buffer, e dividir a pantalla verticalmente |
Ctrl + ws | Dividir ventá horizontalmente |
Ctrl + wv | Dividir ventá verticalmente |
Ctrl + ww | Cambiar de ventá |
Ctrl + wq | Pechar ventá |
Ctrl + wh/j/k/l | Mover o cursor para a ventá esquerda/abaixo/arriba/dereita |
:tabnew arquivo / :tabn arquivo | Abrir arquivo nunha nova pestana |
gt / :tabnext / :tabn | Ir á pestana seguinte |
gT / :tabprev / :tabp | Ir á pestana anterior |
ngt | Ir á pestana número n |
:tabmove n | Move a pestana actual á posición n (comeza en 0) |
:tabc / :tabclose | Pechar tódalas pestanas e as súas ventás |
:tabo / :tabonly | Pechar tódalas pestanas excepto a actual |
###Marcadores
Comando | Función |
---|---|
mm | Crea un marcador na letra m |
'm | Ir ó principio da liña do marcador m |
`m | Ir ó marcador m |
:marks | Lista os marcadores |
:marks m | Lista o marcador m |
]' | Mover á seguinte liña con un marcador en minúsculas |
[' | Mover á anterior liña con un marcador en minúsculas |
]` | Mover ó seguinte marcador en minúsculas |
[` | Mover ó anterior marcador en minúsculas |
'. | Mover ó lugar donde se produciu o último cambio no buffer actual |
'" | Mover ó último lugar donde se saíu do documento no buffer actual |
:delmarks m | Elimina o marcador m |
###Miscelánea
Comando | Función |
---|---|
ga | Amosa o código ASCII do caracter |
##Recursos