




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
editor de texo vim
Tipologia: Manuais, Projetos, Pesquisas
1 / 130
Esta página não é visível na pré-visualização
Não perca as partes importantes!





























































































“Um livro escrito em portuguˆes sobre o editor de texto Vim. A ideia ´e que este material cres¸ca e torne-se uma referˆencia confi´avel e pr´atica. Use este livro nos termos da Licen¸ca de Documenta¸c˜ao Livre GNU (GFDL).”
Este trabalho est´a em constante aprimoramento, e ´e fruto da colabora¸c˜ao de volunt´arios. Participe do desenvolvimento enviando sugest˜oes e melhorias; acesse o site do projeto no endere¸co:
http://code.google.com/p/vimbook
Vers˜ao gerada em 31 de Agosto de 2009
A edi¸c˜ao de texto ´e uma das tarefas mais frequentemente executadas por seres humanos em ambientes computacionais, em qualquer n´ıvel. Usu´arios finais, administradores de sistemas, programadores de software, desenvolvedores web, e tantas outras categorias, todos eles, constantemente, necessitam editar textos.
Usu´arios finais editam texto para criar documentos, enviar e-mails, atualizar o blog, escrever recados ou simplesmente trocar mensagens instantˆaneas pela internet. Administradores de sistemas editam arquivos de configura¸c˜ao, criam regras de seguran¸ca, editam scripts e manipulam sa´ıdas de comandos arma- zenados em arquivos de texto. Programadores desenvolvem c´odigos-fonte e a documenta¸c˜ao de programas essencialmente em editores de texto. Desenvolve- dores web interagem com editores de texto para criarem layout e dinˆamica de sites.
Tamanha ´e a frequˆencia e onipresen¸ca da tarefa de edi¸c˜ao de texto que a efici- ˆencia, flexibilidade e o repert´orio de ferramentas de editores de texto tornam-se quesitos cr´ıticos para se atingir produtividade e conforto na edi¸c˜ao de textos.
Qualquer tarefa de aprendizado requer um certo esfor¸co. Todo programa intro- duz novos conceitos, op¸c˜oes e configura¸c˜oes que transformam o modus operanti do usu´ario. Em princ´ıpio, quanto maior o esfor¸co, maior o benef´ıcio. Quem quer apenas escrever textos, pode-se contentar com um editor b´asico, cuja as ´unicas op¸c˜oes s˜ao digitar o texto, abrir e salvar o documento ou pode utilizar um editor que permita pr´e-configurar a¸c˜oes, formatar o conte´udo, revisar a ortografia, etc, al´em da a¸c˜ao b´asica que ´e escrever textos.
Qualquer usu´ario de computador pode abrir o primeiro tipo de editor e imediata- mente come¸car a escrever, a curto prazo, sua a¸c˜ao ter´a consequˆencias imediatas e n˜ao requer conhecimentos adicionais. Por outro lado, esse usu´ario ter´a que fazer esfor¸co para digitar o mesmos cabe¸calho todos os dias.
O outro tipo de editor permite que o usu´ario pr´e-configure o cabe¸calho do do- cumento e todos os dias esse trecho j´a estar´a digitado. Em contrapartida, o usu´ario deve aprender como pr´e-configurar o editor. O que requer esfor¸co para aprender a utilizar o programa escolhido. O benef´ıcio somente ser´a observado a m´edio/longo prazo, quando o tempo ganho ao utilizar a configura¸c˜ao ser´a superior ao tempo consumido aprendendo sobre o programa.
1.2 Dicas iniciais 3
instal´a-lo basta baixar o instalador no link indicado e dispar´a-lo com um duplo clique (este procedimento requer privil´egios de administrador).
A maioria das distribui¸c˜oes GNU/Linux traz o Vim em seus reposit´orios, sendo que ´e bastante comum o Vim j´a vir inclu´ıdo na instala¸c˜ao t´ıpica da distribui¸c˜ao. A forma de instala¸c˜ao prefer´ıvel depende do Vim:
Ao longo do livro alguns comandos ou dicas podem estar duplicados, o que ´e ´util devido ao contexto e tamb´em porque o aprendizado por satura¸c˜ao ´e um ´otimo recurso. Ao perceber uma dica duplicada, antes de reclamar veja se j´a sabe o que est´a sendo passado. Contudo dicas e sugest˜oes ser˜ao bem vindas!
Para abrir um arquivo com Vim digite num terminal:
vim texto.txt
onde texto.txt ´e o nome do arquivo que deseja-se criar ou editar.
Em algumas distribui¸c˜oes, pode-se usar o comando vi ao inv´es de vim.
(^5) Debian GNU/Linux - http://www.debian.org/index.pt.html (^6) Recomenda-se tamb´em instalar a documenta¸c˜ao em HTML do Vim: ‘apt-get install vim-doc’ (^7) Para ubuntu e Debian (^8) O Python (http://www.python.org) ´e uma linguagem de programa¸c˜ao orientada a objetos muito comum no meio profissional e acadˆemico
4 Introdu¸c˜ao
O Vim possui uma ajuda integrada muito completa, s˜ao mais de 100 arquivos somando milhares de linhas. O ´unico inconveniente ´e n˜ao haver ainda tradu¸c˜ao para o portuguˆes, sendo o inglˆes seu idioma oficial; entretanto, as explica¸c˜oes costumam ser sint´eticas e diretas, de forma que no¸c˜oes em inglˆes seriam sufici- entes para a compreens˜ao de grande parte do conte´udo da ajuda integrada.
Obs: No Vim quase todos os comandos podem ser abreviados, no caso “help” pode ser chamado por“h”e assim por diante. Um comando s´o pode ser abreviado at´e o ponto em que este nome mais curto n˜ao coincida com o nome de algum outro comando existente. Para chamar a ajuda do Vim pressione ‘Esc’ e em seguida:
:help .... vers~ao longa, ou :h ....... vers~ao abreviada
ou simplesmente ‘F1’.
Siga os links usando o atalho ‘ctrl+]’, em modo gr´afico o clique com o mouse tamb´em funciona, e para voltar use ‘ctrl+o’ ou ‘ctrl+t’ Para as situa¸c˜oes de desespero pode-se digitar:
:help!
Recarregue o arquivo que est´a sendo editado pressionando ‘Esc’ e em seguida usando o comando ‘:e’. ou simplesmente inicie outro arquivo ignorando o atual, com o comando ‘:enew!’, ou saia do arquivo sem modifica-lo, com ‘:q!’. Pode-se ainda tentar gravar for¸cado com o comando ‘:wq!’
A tecla “
^L
No arquivo de configura¸c˜ao do Vim, um “
Para saber mais sobre como usar atalhos no Vim veja a se¸c˜ao 12.8 na p´agina 83 e para ler sobre o arquivo de configura¸c˜ao veja o cap´ıtulo 12 na p´agina 79.
6 Introdu¸c˜ao
Ctrl-O ..... comando do modo normal no modo insert i Ctrl-a ... repetir a ´ultima inser¸c~ao @: ......... repetir o ´ultimo comando Shift-insert colar texto da ´area de transfer^encia gi ......... modo de inser¸c~ao no mesmo ponto da ´ultima vez gv ......... repete sele¸c~ao visual
Para saber mais sobre repeti¸c˜ao de comandos veja o cap´ıtulo 8, na p´agina 60.
No Vim, cada arquivo aberto ´e chamado de buffer, ou seja, dados carregados na mem´oria. Vocˆe pode acessar o mesmo buffer em mais de uma janela, bem como dividir a janela em v´arios buffers distintos o que veremos mais adiante.
A principal fun¸c˜ao de um editor de textos ´e editar textos. Parece ´obvio, mas em meio a in´umeros recursos extras essa simples e crucial fun¸c˜ao perde-se entre todos os demais.
Portanto, a primeira coisa a fazer ´e abrir um arquivo. Como visto, para abrir um arquivo com Vim, digite em um terminal:
vim texto.txt
onde texto.txt ´e o nome do arquivo que deseja-se criar ou editar.
Caso deseje abrir o arquivo na linha 10, usa-se:
vim +10 /caminho/para/o/arquivo
se quiser abrir o arquivo na linha que cont´em um determinado padr˜ao , digite:
vim +/padr~ao arquivo
a fim de n˜ao obter erro.
editado em modo de comando desta forma:
:e /home/usuario/arquivo
O Vim ´e um editor que possu´ı diferentes modos de edi¸c˜ao. Entre eles est´a o modo de inser¸c˜ao, que ´e o modo onde escreve-se o texto naturalmente.
2.3 Copiar, Colar e Deletar 9
linha d0 .... deleta do cursor ao in´ıcio da linha
Copiar est´a associado `a letra “y”.
yy .... copia a linha atual Y ..... copia a linha atual ye .... copia do cursor ao fim da palavra yb .... copia do come¸co da palavra ao cursor
O que foi deletado ou copiado pode ser colado:
p .... cola o que foi copiado ou deletado abaixo P .... cola o que foi copiado ou deletado acima [p ... cola o que foi copiado ou deletado antes do cursor ]p ... cola o que foi copiado ou deletado ap´os o cursor
:h deleting
O comando ‘d’ remove o conte´udo para a mem´oria.
x .... apaga o caractere sob o cursor xp ... troca letras de lugar ddp .. troca linhas de lugar d5x .. apaga os pr´oximos 5 caracteres dd .. apaga a linha atual 5dd .. apaga 5 linhas (tamb´em pode ser: d5d) d5G .. apaga at´e a linha 5 dw .. apaga uma palavra 5dw .. apaga 5 palavras (tamb´em pode ser: d5w) dl .. apaga uma letra (sin^onimo: x) 5dl .. apaga 5 letras (tamb´em pode ser: d5l ou 5x) d0 .. apaga at´e o in´ıcio da linha d^ .. apaga at´e o primeiro caractere da linha d$ .. apaga at´e o final da linha (sin^onimo: D) dgg .. apaga at´e o in´ıcio do arquivo dG .. apaga at´e o final do arquivo D .... apaga o resto da linha d% ... deleta at´e o pr´oximo (,[,{ da" .. deleta aspas com conte´udo
Depois do texto ter sido colocado na mem´oria, digite ‘p’ para ‘inserir’ o texto em uma outra posi¸c˜ao. Outros comandos:
10 Editando
diw .. apaga palavra mesmo que n~ao esteja posicionado no in´ıcio dip .. apaga o par´agrafo atual d4b .. apaga as quatro palavras anteriores dfx .. apaga at´e o pr´oximo ‘‘x’’ d/casa/+1 - deleta at´e a linha ap´os a palavra casa
Trocando a letra ‘d’ nos comandos acima por ‘c’ de change “mudan¸ca” ao inv´es de deletar ser´a feita uma mudan¸ca de conte´udo. Por exemplo: :h change
ciw .............. modifica uma palavra cip .............. modifica um par´agrafo cis .............. modifica uma senten¸ca C ................ modifica at´e o final da linha
:h yank
O comando ‘y’ (yank) permite copiar uma parte do texto para a mem´oria sem deletar. Existe uma semelhan¸ca muito grande entre os comandos ‘y’ e os coman- dos ‘d’, um ativa a ‘c´opia’ e outro a ‘exclus˜ao’ de conte´udo, suportando ambos quantificadores:
yy .... copia a linha atual (sin^onimo: Y) 5yy .... copia 5 linhas (tamb´em pode ser: y5y ou 5Y) y/pat .. copia at´e ‘pat’ yw .... copia uma palavra 5yw .... copia 5 palavras (tamb´em pode ser: y5w) yl .... copia uma letra 5yl .... copia 5 letras (tamb´em pode ser: y5l) y^ .... copia da posi¸c~ao atual at´e o in´ıcio da linha (sin^onimo: y0) y$ .... copia da posi¸c~ao atual at´e o final da linha ygg .... copia da posi¸c~ao atual at´e o in´ıcio do arquivo yG .... copia da posi¸c~ao atual at´e o final do arquivo
Digite ‘P’ (p mai´usculo) para colar o texto rec´em copiado na posi¸c˜ao onde encontra-se o cursor, ou ‘p’ para colar o texto na posi¸c˜ao imediatamente ap´os o cursor.
yi" .... copia trecho entre aspas (atual - inner) vip .... sele¸c~ao visual para par´agrafo atual ‘inner paragraph’ yip .... copia o par´agrafo atual yit .... copia a tag agual ‘inner tag’ ´util para arquivos HTML, XML, etc.