47
Sum´ ario Aprendendo Finalizando Vim - Um editor para Hackers Marcello Henrique Dias de Moura e-mail: [email protected] GUD - PSL - ASL - UFG Goiˆ ania, 24 de setembro 2008 Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Vim Super Editor

Embed Size (px)

Citation preview

Page 1: Vim Super Editor

SumarioAprendendoFinalizando

Vim - Um editor para Hackers

Marcello Henrique Dias de Mourae-mail: [email protected]

GUD − PSL − ASL − UFG

Goiania, 24 de setembro 2008

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 2: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Sumario I

1 SumarioConceitos sobre o VimDiferencas entre irmaosTestemunhos

2 AprendendoEntrando no mundo VimAprendendo com licoesOutros poderes

3 FinalizandoInformacoes uteisSoftware Livre

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 3: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Sumario II

Pergutas e agradecimentos

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 4: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Uma visao geralhttp://www.vim.org/about.php

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 5: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

O que e o Vim?http://www.vim.org/6k/features.pt.txt

Vim e um poderoso editor de texto configuravelpermitindo edicoes de texto eficientes. E umaversao melhorada do editor vi distribuıdo com amaioria dos sistemas UNIX.Vim e muitas vezes chamado de “editor paraprogramadores”, e tao util para a programacao quemuitos consideram ser uma IDE (AmbienteIntegrado para Desenvolvimento).

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 6: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

O que o vim nao e?

Vim nao e um editor projetado como a maioria dosusuario estao acostumados. E uma ferramenta, cujautilizacao deve ser aprendida.Vim nao e um processador de texto. Embora possaapresentar texto com varias formas de valorizacao ede formatacao, nao esta la para fornecerWYSIWYG1 (editor de composicao de documentos).

1What You See Is What You GetMarcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 7: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Diferencas em vi e vim I:help vi diff

Desfazer mudancas ilimitadoVoce pode desfazer uma mudanca ou voltar aodocumento original.

PortabilidadeVi esta disponıvel somente para Linux e Unix.Vim esta para MS-Windows, Macintosh,Amiga, OS/2, VMS, QNX e outros sistemas,alem do Linux e Unix.

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 8: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Diferencas em vi e vim II:help vi diff

Sintaxe coloridaVim pode ser programado para diferentes coresou estilos, baseados em tipos de arquivos. Hacentenas de regras de sintaxes empacotas parao Vim.

InterfacesVim e otimo para terminais, mas pode rodarnativamente em varias GUIs, incluındo XWindows, Mac Os, e Microsoft Windows.

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 9: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Diferencas em vi e vim III:help vi diff

Vi modo de compatibilidadeVoce pode forcar o Vim ser 100% compatıvelcom vi.

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 10: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://vimdoc.sourceforge.net/htmldoc/quotes.html

“vim (vim) substantivo − efervescente vitalidade eenergia. [Latim, acusativo de vis, forca]”−Dicionario

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 11: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://vimdoc.sourceforge.net/htmldoc/quotes.html

“I love and use VIM heavily too.”−Larry Wall2 - Perl Buda Man

2http://en.wikipedia.org/wiki/Larry WallMarcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 12: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://vimdoc.sourceforge.net/htmldoc/quotes.html

“Thanks again for VIM. I use it every day on Linux.”−Eric Foster-Johnson, author of the book “UNIXProgramming Tools”

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 13: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://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

Page 14: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://vimdoc.sourceforge.net/htmldoc/quotes.html

“I should mention that VIM is a very good editorand can compete with anything.”−Ilya Beloozerov

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 15: Vim Super Editor

SumarioAprendendoFinalizando

Conceitos sobre o VimDiferencas entre irmaosTestemunhos

Testemunho dos fieishttp://vimdoc.sourceforge.net/htmldoc/quotes.html

“Vim, vi, venci”−Marcello Henrique

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 16: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

O meu jeito de ser

Modo Tecla Rodape Descric~ao------------------------------------------------------------------de Inserc~ao i -- INSERT -- Inserc~ao de textode Comandos <ESC> Comandos de manipulac~ao textoLinha comando : : Comandos de manipulac~ao arquivoVisual v -- VISUAL -- Selec~ao visual de textoBusca / / Busca de padr~oes no textoReposic~ao R -- REPLACE -- Inserc~ao sobreescrevendo

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 17: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Movimento

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 18: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Movimento

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 19: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Usando o vimtutor

$ apt-get install vimtutor$ vimtutor

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 20: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 1

Licao 1.3: Editando textos - delecaoLicao 1.4: Editando textos - insercao

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 21: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 1

1 O cursor e movido com as teclas hljk ou assetas

2 Para entrar no Vim digite: vim <arquivo>3 Para sair do Vim descartando todas as

alteracoes digite: <ESC> :q!4 Para sair do Vim salvando as alteracoes digite:

<ESC> :wq5 Teclando i voce vai para o modo de insercao6 Teclando <ESC> voce volta para o modo

normal

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 22: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 2

Licao 2.1: Comandos de delecaoLicao 2.2: Mais comandos de delecaoLicao 2.4: Uma excecao ao ’comando-objeto’Licao 2.5: O comando undo (desfazer)

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 23: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 2 I

1 Deletar uma palavra: dw2 Deletar ate o fim da linha: d$3 Voce pode usar numero+comando+objeto ou

comando+numero+objeto4 Exemplo para excluir duas palavras: d2w5 Para desfazer: u (minusculo)6 Para desfazer todas as modificacoes em uma

linha: U (maiusculo)7 Para refazer: Ctrl+R

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 24: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 3

Licao 3.1: O comando put (colocar)Licao 3.2: O comando replace (substituir)Licao 3.3: O comando change (mudar)Licao 3.4: Mais mudancas usando change

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 25: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 3

1 Para colar: p2 Para substituir: r3 Para mudar uma palavra: cw4 Para mudar do cursor ate o fim da linha: c$5 O “c” e o “r” tambem aceitam

comando+numero+objeto

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 26: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 4

Licao 4.1: Localizacao e status do arquivoLicao 4.2: O comando search (procura)Licao 4.4: Uma maneira de corrigir erros

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 27: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 4 I

1 Digitando “g Ctrl+g” para estatısticas dodocumento

2 Digitando “:set nu” voce numera as linhas3 Substituir “:s/velho/novo” para o primeiro

casamento4 Substituir “:s/velho/novo/g” para todos os

casamentos da linha5 Substituir “:%s/velho/novo/g” para todo o

documento

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 28: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 4 II

6 Substituir “:%s/velho/novo/gc” para todo odocumento com confirmacao

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 29: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 5

Licao 5.1: Como executar um comando externoLicao 5.2: Mais sobre salvar arquivosLicao 5.3: Um comando write (salvar) seletivo

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 30: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 5

1 “:!comando” executa um comando externo2 “:w <arquivo>” salva o arquivo3 “:<inicial>,<final>w arquivo” recorta da linha

inicial ate a linha final e salva em arquivo4 “:r arquivo” recupera um arquivo do disco e o

insere na posicao do curso

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 31: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 6

Licao 6.1: O comando open (abrir)Licao 6.2: O comando append (anexar)Licao 6.3: Uma outra versao do replace (substituir)Licao 6.4: Opcao set

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 32: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Sumario da licao 6

1 Digitando “o” linha embaixo do cursor emmodo de insercao

2 Digitando “O” linha acima do cursor em modode insercao

3 Digitando “a” inserir depois do caracter queesta o cursor

4 Digitando “A” inserir no final da linha5 Digitando “R” entra em modo de substituicao

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 33: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Licao 7 : Comandos do help on-line

1 Voce pode obter ajuda a qualquer momentocom “:help”

2 Ou “:help pesquisa” para objer ajuda sobre apesquisa

3 Exemplo: “:help w”

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 34: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Usando macros

Macros: Macro com incremento numericoMacros: Macro com includeDigrafos: Usando digrafosSpell: Correcao ortograficaAbas: Usando abas

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 35: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Para programadores

Devel: Indentacoes com VimDevel: Usando dobrasDevel: Opcoes de completacao

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 36: Vim Super Editor

SumarioAprendendoFinalizando

Entrando no mundo VimAprendendo com licoesOutros poderes

Para programadores

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 37: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Gvim

Gvim2 portavel para ambiente Window$

2http://portablegvim.sourceforge.netMarcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 38: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas 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

Page 39: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Links uteis I

Vim Tutorial Graficohttp://www.viemu.com/a vi vim graphical cheat sheet tutorial.html

Vim Tutorial com vıdeoshttp://www.linuxconfig.org/Vim Tutorial

Comparacao de Editoreshttp://en.wikipedia.org/wiki/Comparison of text editors

Vim e Charityware (software da caridade)http://vimdoc.sourceforge.net/htmldoc/uganda.html

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 40: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Softwares Usados I

Debianhttp://www.debian.org

texlivehttp://www.tug.org/texlive

Beamerhttp://latex-beamer.sourceforge.net

RecordMyDesktophttp://recordmydesktop.iovar.org

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 41: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Softwares Usados II

Kinohttp://www.kinodv.org

Vimtutor em portugues do BrasilMarcelo Drudi Miranda <[email protected]>

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 42: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Sinal da Gang Vi,Vim

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 43: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Sinal da Gang Vi,Vim

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 44: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Sinal da Gang Vi,Vim

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 45: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Sinal da Gang Vi,Vim

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 46: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Perguntas?

Perguntas?

Marcello Henrique Dias de Moura Vim - Um editor para Hackers

Page 47: Vim Super Editor

SumarioAprendendoFinalizando

Informacoes uteisSoftware LivrePergutas e agradecimentos

Agradecimentos

Obrigado!

Marcello Henrique Dias de Moura Vim - Um editor para Hackers