1. O documento fornece uma introdução ao editor de texto Vim, explicando seus conceitos básicos, diferenças em relação ao editor Vi e testemunhos sobre seu uso.
2. Instruções para aprender a usar o Vim incluem usar o tutor Vim (vimtutor) e lições que ensinam comandos básicos como movimento, exclusão e inserção de texto.
3. O documento oferece resumos das lições do vimtutor, explicando os principais comandos ensinados em cada uma para aprender a usar as funcionalidades básicas do
1. Sum´rio
a
Aprendendo
Finalizando
Vim - Um editor para Hackers
Marcello Henrique Dias de Moura
e-mail: faraohh@gmail.com
GUD − PSL − ASL − UFG
Goiˆnia, 24 de setembro 2008
a
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
2. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Sum´rio I
a
1 Sum´rio
a
Conceitos sobre o Vim
Diferen¸as entre irm˜os
c a
Testemunhos
2 Aprendendo
Entrando no mundo Vim
Aprendendo com li¸˜es
co
Outros poderes
3 Finalizando
Informa¸oes uteis
c˜ ´
Software Livre
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
3. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Sum´rio II
a
Pergutas e agradecimentos
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
4. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Uma vis˜o geral
a
http://www.vim.org/about.php
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
5. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
O que ´ o Vim?
e
http://www.vim.org/6k/features.pt.txt
Vim ´ um poderoso editor de texto configur´vel
e a
´
permitindo edi¸˜es de texto eficientes. E uma
co
vers˜o melhorada do editor vi distribu´ com a
a ıdo
maioria dos sistemas UNIX.
Vim ´ muitas vezes chamado de “editor para
e
programadores”, e t˜o util para a programa¸˜o que
a ´ ca
muitos consideram ser uma IDE (Ambiente
Integrado para Desenvolvimento).
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
6. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
O que o vim n˜o ´?
a e
Vim n˜o ´ um editor projetado como a maioria dos
a e
a a ´
usu´rio est˜o acostumados. E uma ferramenta, cuja
utiliza¸˜o deve ser aprendida.
ca
Vim n˜o ´ um processador de texto. Embora possa
a e
apresentar texto com v´rias formas de valoriza¸˜o e
a ca
de formata¸˜o, n˜o est´ l´ para fornecer
ca a a a
1
WYSIWYG (editor de composi¸˜o de documentos).
ca
1
What You See Is What You Get
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
7. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Diferen¸as em vi e vim I
c
:help vi diff
Desfazer mudan¸as ilimitado
c
Vocˆ pode desfazer uma mudan¸a ou voltar ao
e c
documento original.
Portabilidade
Vi est´ dispon´ somente para Linux e Unix.
a ıvel
Vim est´ para MS-Windows, Macintosh,
a
Amiga, OS/2, VMS, QNX e outros sistemas,
al´m do Linux e Unix.
e
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
8. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Diferen¸as em vi e vim II
c
:help vi diff
Sintaxe colorida
Vim pode ser programado para diferentes cores
ou estilos, baseados em tipos de arquivos. H´
a
centenas de regras de sintaxes empacotas para
o Vim.
Interfaces
Vim ´ ´timo para terminais, mas pode rodar
eo
nativamente em v´rias GUIs, inclu´
a ındo X
Windows, Mac Os, e Microsoft Windows.
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
9. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Diferen¸as em vi e vim III
c
:help vi diff
Vi modo de compatibilidade
Vocˆ pode for¸ar o Vim ser 100% compat´
e c ıvel
com vi.
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
10. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“vim (vim) substantivo − efervescente vitalidade e
energia. [Latim, acusativo de vis, for¸a]”
c
−
Dicion´rio
a
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
11. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“I love and use VIM heavily too.”
−
Larry Wall2 - Perl Buda Man
2
http://en.wikipedia.org/wiki/Larry Wall
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
12. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“Thanks again for VIM. I use it every day on Linux.”
−
Eric Foster-Johnson, author of the book “UNIX
Programming Tools”
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
13. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“Hint: VIM is vi improved - much better!”
−
Sven Guckes, Germany
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
14. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“I should mention that VIM is a very good editor
and can compete with anything.”
−
Ilya Beloozerov
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
15. Sum´rio
a Conceitos sobre o Vim
Aprendendo Diferen¸as entre irm˜os
c a
Finalizando Testemunhos
Testemunho dos fi´is
e
http://vimdoc.sourceforge.net/htmldoc/quotes.html
“Vim, vi, venci”
−
Marcello Henrique
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
16. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
O meu jeito de ser
Modo Tecla Rodap´e Descri¸~o
ca
------------------------------------------------------------------
de Inser¸~o
ca i -- INSERT -- Inser¸~o de texto
ca
de Comandos <ESC> Comandos de manipula¸~o texto
ca
Linha comando : : Comandos de manipula¸~o arquivo
ca
Visual v -- VISUAL -- Sele¸~o visual de texto
ca
Busca / / Busca de padr~es no texto
o
Reposi¸~o
ca R -- REPLACE -- Inser¸~o sobreescrevendo
ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
17. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Movimento
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
18. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Movimento
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
19. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Usando o vimtutor
$ apt-get install vimtutor
$ vimtutor
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
20. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 1
ca
Li¸˜o 1.3: Editando textos - dele¸˜o
ca ca
Li¸˜o 1.4: Editando textos - inser¸˜o
ca ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
21. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 1
a ca
1 O cursor ´ movido com as teclas hljk ou as
e
setas
2 Para entrar no Vim digite: vim <arquivo>
3 Para sair do Vim descartando todas as
altera¸oes digite: <ESC> :q!
c˜
4 Para sair do Vim salvando as altera¸oes digite:
c˜
<ESC> :wq
5 Teclando i vocˆ vai para o modo de inser¸˜o
e ca
6 Teclando <ESC> vocˆ volta para o modo
e
normal
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
22. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 2
ca
Li¸˜o
ca 2.1: Comandos de dele¸˜o
ca
Li¸˜o
ca 2.2: Mais comandos de dele¸˜o
ca
Li¸˜o
ca 2.4: Uma exce¸˜o ao ’comando-objeto’
ca
Li¸˜o
ca 2.5: O comando undo (desfazer)
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
23. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 2 I
a ca
1 Deletar uma palavra: dw
2 Deletar at´ o fim da linha: d$
e
3 Vocˆ pode usar n´mero+comando+objeto ou
e u
comando+n´mero+objeto
u
4 Exemplo para excluir duas palavras: d2w
5 Para desfazer: u (min´sculo)
u
6 Para desfazer todas as modifica¸˜es em uma
co
linha: U (mai´sculo)
u
7 Para refazer: Ctrl+R
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
24. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 3
ca
Li¸˜o
ca 3.1: O comando put (colocar)
Li¸˜o
ca 3.2: O comando replace (substituir)
Li¸˜o
ca 3.3: O comando change (mudar)
Li¸˜o
ca 3.4: Mais mudan¸as usando change
c
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
25. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 3
a ca
1 Para colar: p
2 Para substituir: r
3 Para mudar uma palavra: cw
4 Para mudar do cursor at´ o fim da linha: c$
e
5 O “c” e o “r” tamb´m aceitam
e
comando+n´mero+objeto
u
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
26. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 4
ca
Li¸˜o 4.1: Localiza¸˜o e status do arquivo
ca ca
Li¸˜o 4.2: O comando search (procura)
ca
Li¸˜o 4.4: Uma maneira de corrigir erros
ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
27. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 4 I
a ca
1 Digitando “g Ctrl+g” para estat´ısticas do
documento
2 Digitando “:set nu” vocˆ numera as linhas
e
3 Substituir “:s/velho/novo” para o primeiro
casamento
4 Substituir “:s/velho/novo/g” para todos os
casamentos da linha
5 Substituir “:%s/velho/novo/g” para todo o
documento
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
28. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 4 II
a ca
6 Substituir “:%s/velho/novo/gc” para todo o
documento com confirma¸˜oca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
29. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 5
ca
Li¸˜o 5.1: Como executar um comando externo
ca
Li¸˜o 5.2: Mais sobre salvar arquivos
ca
Li¸˜o 5.3: Um comando write (salvar) seletivo
ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
30. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 5
a ca
1 “:!comando” executa um comando externo
2 “:w <arquivo>” salva o arquivo
3 “:<inicial>,<final>w arquivo” recorta da linha
inicial at´ a linha final e salva em arquivo
e
4 “:r arquivo” recupera um arquivo do disco e o
insere na posi¸˜o do curso
ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
31. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 6
ca
Li¸˜o
ca 6.1: O comando open (abrir)
Li¸˜o
ca 6.2: O comando append (anexar)
Li¸˜o
ca 6.3: Uma outra vers˜o do replace (substituir)
a
Li¸˜o
ca 6.4: Op¸˜o set
ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
32. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Sum´rio da li¸˜o 6
a ca
1 Digitando “o” linha embaixo do cursor em
modo de inser¸˜o
ca
2 Digitando “O” linha acima do cursor em modo
de inser¸˜o
ca
3 Digitando “a” inserir depois do caracter que
est´ o cursor
a
4 Digitando “A” inserir no final da linha
5 Digitando “R” entra em modo de substitui¸˜oca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
33. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Li¸˜o 7 : Comandos do help on-line
ca
1 Vocˆ pode obter ajuda a qualquer momento
e
com “:help”
2 Ou “:help pesquisa” para objer ajuda sobre a
pesquisa
3 Exemplo: “:help w”
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
34. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Usando macros
Macros: Macro com incremento num´rico
e
Macros: Macro com include
Digrafos: Usando digrafos
Spell: Corre¸˜o ortogr´fica
ca a
Abas: Usando abas
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
35. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Para programadores
Devel: Indenta¸oes com Vim
c˜
Devel: Usando dobras
Devel: Op¸oes de completa¸˜o
c˜ ca
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
36. Sum´rio
a Entrando no mundo Vim
Aprendendo Aprendendo com li¸˜es
co
Finalizando Outros poderes
Para programadores
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
37. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Gvim
Gvim2 port´vel para ambiente Window$
a
2
http://portablegvim.sourceforge.net
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
38. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Onde baixar?
http://www.vim.org/download.php
Unix
MS-DOS and MS-Windows
Amiga
OS/2
Macintosh
Outros
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
39. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Links uteis I
´
Vim Tutorial Gr´fico
a
http://www.viemu.com/a vi vim graphical cheat sheet tutorial.h
Vim Tutorial com v´
ıdeos
http://www.linuxconfig.org/Vim Tutorial
Compara¸˜o de Editores
ca
http://en.wikipedia.org/wiki/Comparison of text editors
Vim ´ Charityware (software da caridade)
e
http://vimdoc.sourceforge.net/htmldoc/uganda.html
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
40. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Softwares Usados I
Debian
http://www.debian.org
texlive
http://www.tug.org/texlive
Beamer
http://latex-beamer.sourceforge.net
RecordMyDesktop
http://recordmydesktop.iovar.org
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
41. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Softwares Usados II
Kino
http://www.kinodv.org
Vimtutor em portuguˆs do Brasil
e
Marcelo Drudi Miranda <drudi@sim.lme.usp.br>
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
42. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Sinal da Gang Vi,Vim
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
43. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Sinal da Gang Vi,Vim
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
44. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Sinal da Gang Vi,Vim
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
45. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Sinal da Gang Vi,Vim
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
46. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Perguntas?
Perguntas?
Marcello Henrique Dias de Moura Vim - Um editor para Hackers
47. Sum´rio
a Informa¸˜es uteis
co ´
Aprendendo Software Livre
Finalizando Pergutas e agradecimentos
Agradecimentos
Obrigado!
Marcello Henrique Dias de Moura Vim - Um editor para Hackers