Bernardo Belchior & Edgar Passos
slides.com/bernardobelchior/workshop-vim
$ vim:q<Enter> ^
k
< h l >
j
v
Por questões de eficiência
É possível mover o cursor usando outros movimentos
início de uma palavra (para trás)
winício da linha
einício de uma palavra
bfim de uma palavra
0fim da linha
$início do ficheiro
ggfim do ficheiro
Ginício da linha (sem contar com espaços)
_iv:sair
:qgravar e sair
:wqgravar
:wsair e descartar alterações
:q!xsubstituir caracter debaixo do cursor
sdesfazer ação
urefazer ação
<C-R>apagar caracter debaixo do cursor
xcolar
pinserir linha abaixo do cursor
oOperadores que recebem movimentos ou objetos para especificar o seu comportamento
alterar
ccopiar
yapagar
dpalavra e espaço seguinte
awconteúdo entre aspas
i"conteúdo entre aspas, incluindo as aspas
a"palavra
iwconteúdo dentro de tags XML
i<conteúdo entre tags XML abertas e fechadas
itconteúdo e tags XML abertas e fechadas
atcopiar palavra e espaço seguinte
yawalterar conteúdo entre aspas
ci"apagar conteúdo entre aspas, incluindo as aspas
da"apagar palavra
diwcopiar conteúdo dentro de tags XML
yi<selecionar conteúdo entre tags XML abertas e fechadas
vitalterar conteúdo e tags XML abertas e fechadas
catAbrir o ficheiro de texto "exercise4.html"
Todos os passos devem ser executados num só comando:
substituir por <character> (replace)
r<character>tornar maiúscula
gUaté encontrar (find) o próximo <character>
f<character>repetir 2 vezes um comando
2<command>até ('till) ao próximo <character>
t<character>até à próxima ocorrência de <regex>
/<regex>tornar minúscula
gu/<regex>substituir uma ocorrência
?<regex>pesquisar
npesquisar em sentido inverso
*próxima ocorrência
%s/<regex>/<substitute>pesquisar palavra debaixo do cursor
substituir todas as ocorrências
%s/<regex>/<substitute>/g"<register>y"<register>pq<register>q@<register>@@:!<command>:!date:!ls:r:r !ls