Vim - Um editor onipresente e flexível

download Vim - Um editor onipresente e flexível

If you can't read please download the document

description

Palestra ministrada no FLISOL-DF 2012

Transcript of Vim - Um editor onipresente e flexível

  • 1. O editor onipresente e flexvel

2. Palestrante: Gilson FilhoComecei a programar 6 anos;Programador web a 4 anos;Usurio linux h 5 anos;Python, Java, ASP, Visual Basic;Moderador do GruPy-DF;Participante do Candjango;Contribui com vrios projetos opensource. 3. O que o Vim? 4. Sobre o EditorFoi criado por Bram Moolenaar e seu primeiro release foi em 1991;Baseado no editor Vi, um editor usado em sistemas Unix-like;Possui novas e melhores funcionalidades, por isso o nome (Vim Vi Improved); 5. Caractersticas 6. CaractersticasS o f t w a r e L i v r e ( G P L ) : gratuito ecdigo fonte disponvel;O n i p r e s e n t e : ou seja, roda em qualquer SO existente e em vrias formas (terminal ou grfico):Windows, Linux, Mac OS, AmigaOS, DOS, AIX, HP- UX, FreeBSD, Solaris, etc... 7. CaractersticasF l e x v e l : programvel com interpretadores(Perl, Python e Ruby) ou sua linguagem descriptP r e p a r a d o : suporte a 500 linguagens,syntax hightlight e vrios esquemas de coresE x p e r i e n t e : j tem 20 anos de idade ;) 8. Instalando o editor 9. No LinuxNa maioria das distribuies Linux, o Vim j fica instalado por padro.Pode-se instalar a verso grfica do editor;Debian sudo apt-get install vim-gtk [vim-gnome]Fedora yum install gvimOutras distribuies (compilando) http://bit.ly/compile-gvim 10. No WindowsPossui interface grfica para instalar:Download: http://bit.ly/windows-vimNext, Next, Finish. 11. No Mac OSProjeto MacVimDownload: http://bit.ly/macvimInstale em A pplications 12. Mostrando o Ambiente 13. Mostrando o Ambiente 14. Usando o editor5 15. Abrindo arquivosAbrindo um ou mais arquivosvim arq [arq2] [arqN]Abrir em somente leituravim -R arq [arq2] [arqN]Abrir e posiciona cursor na ltima linhavim + arqAbrir e posiciona cursor na linha Xvim +15 arqAbrir arquivo e fazendo busca ao mesmo tempovim +/padro arq 16. Fechando arquivosGrava texto e continua editando:w[!] ou :w[!] Grava texto (se tiver alterao) e sai do VimZZSalva arquivo e sai do Vim:wq[!]Fecha do editor:qFecha o editor sem salvar as alteraes:q!! - mesmo em RO 17. Navegao 18. Editando arquivos 19. Modos de operaoO Vim um editor modalIsso dificulta o estudo mas voc tem:Atalhos mais simplesSignificados diferentes em cada modo de operaoTipos:Normal ModeInsert Mode 20. Normal Mode usado para fazer aes simples:Deletar;Copiar;Colar;Entre vrias outras...Quando abre o editor, j est no Modo NormalAtalho: 21. Insert Mode neste modo que ir inserir o seu textoVrias formas de iniciar o modo de edio: - inicia um caracter aps do cursor atual - inicia um caracter antes do cursor atual + - inicia no final da linha + - inicia no incio da linha 22. Visual ModeModo que seleciona um trecho de um texto que deseja:Por caracteres: Por linha: + Por blocos: + 23. Command Mode aonde digita os comandos desejados para, por exemplo:SalvarIr para linha XCopiar e colarProcurar e substituir;(...) 24. Copiando e colandoCopiar trecho selecionadoy ou :yCopiar linha inteirayy ou :yyColando no cursor atualp ou :pColando acima da linha atualP ou :P 25. Procurando e substituindoPesquisarModo normal/Modo de comando::/ 26. Procurando e substituindoSubstituindoMudar trecho no cursor atual:s//Mudar trecho em todo o arquivo:%s//Mudar trecho em todo o arquivo (com confirmao):%s///c 27. Facilidades 28. RegistradoresTem uma utilidade especfica, que armazenar cpias internas, do clipboard, delees, entre outros;Ou seja, um clipboard do editor:0 - registra a seleo no registrador 0;:$ - registra a seleo no registrador $;:% - registra o nome do arquivo;:/ - registra o ltimo padro de busca; 29. FoldsSo como dobras nas quais o vim esconde partes do textozo abre uma dobra;zc fecha a dobra;zR abre todas as dobras do arquivo atual;zj desce at a prxima dobra;zk sobe at a prxima dobra; 30. AbasCriando uma aba:tabnew [arq]Criando uma aba e abrindo um arquivo:tabedit arqAlternando para a prxima aba:tabnextAlternando para a aba anterior:tabprevious 31. BuffersArquivos abertos que esto na memriaListando arquivos no buffer:lsAbrindo determinado arquivo do buffer:buffer Indo para o prximo buffer:bnextIndo para o buffer anterior: bprevious 32. Dividindo em janelasDentro da interface do editor, voc pode abrir vrias janelas;Abrindo uma janela lateral + w + vAbrindo uma janela horizontal + w + nMovendo para janela esquerda e a direita + w + h / + w + lMovendo para janela para cima ou abaixo + w + k / + w + j 33. Plugins 34. Plugins para programaoSurroundNERD BrowserVim Indent GuidesSnipmateCommand-TVim-Git / Vim-FugitiveTaglist 35. Plugins teisPathogenVim powerlineSyntasticSparkup (Zen Coding)Font Zoome vrios outros... 36. Mais de3.700 plugins 37. IndicaesVimcasts http://vimcasts.comVim Adventures (Jogo) - http://vim-adventures.com/Openvim http://openvim.comOpenvim BR http://openvimbr.gilsondev.comVim Books (pt-BR) - http://code.google.com/p/vimbook/Wikilivros - http://pt.wikibooks.org/wiki/VimVim Wikia - http://vim.wikia.com/wiki/Vim_Tips_WikiDocumentao (:help)Twitter: @vimtips, @tpope, @vimrecipes 38. Dicas importantesNo decore todos os comandos. Aprenda uma coisa de cada vez;Aprendeu os comandos que precisa, ento busque novos comandosVai ser difcil, mas todo aprendizado exige esforo N o pain, N o gain; 39. Perguntas?@gilsonfilho blog.gilsondev.com (breve no github)gilsondev.github.combitbucket.org/gilsondevgilsondev.com