Vim - Um editor onipresente e flexível
Upcoming SlideShare
Loading in...5
×
 

Vim - Um editor onipresente e flexível

on

  • 2,335 views

Palestra ministrada no FLISOL-DF 2012

Palestra ministrada no FLISOL-DF 2012

Statistics

Views

Total Views
2,335
Views on SlideShare
2,237
Embed Views
98

Actions

Likes
1
Downloads
42
Comments
0

8 Embeds 98

http://mynlabs.blogspot.com.br 59
http://labs.myn.com.br 17
http://mynlabs.blogspot.com 8
http://us-w1.rockmelt.com 7
http://www.linkedin.com 4
https://twimg0-a.akamaihd.net 1
http://coderwall.com 1
http://mynlabs.blogspot.de 1
More...

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Vim - Um editor onipresente e flexível Vim - Um editor onipresente e flexível Presentation Transcript

  • O editor onipresente e flexível
  • Palestrante: Gilson FilhoComecei a programar à 6 anos;Programador web a 4 anos;Usuário linux há 5 anos;Python, Java, ASP, Visual Basic;Moderador do GruPy-DF;Participante do Candjango;Contribui com vários projetos opensource.
  • O que é o Vim?
  • 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);
  • Características
  • CaracterísticasS o f t w a r e L i v r e ( G P L ) : gratuito e código fonte disponível;O n i p r e s e n t e : ou seja, roda em qualquer SO existente e em várias formas (terminal ou gráfico): Windows, Linux, Mac OS, AmigaOS, DOS, AIX, HP- UX, FreeBSD, Solaris, etc...
  • CaracterísticasF l e x í v e l : programável com interpretadores (Perl, Python e Ruby) ou sua linguagem de scriptP r e p a r a d o : suporte a 500 linguagens, syntax hightlight e vários esquemas de coresE x p e r i e n t e : já tem 20 anos de idade ;)
  • Instalando o editor
  • No LinuxNa maioria das distribuições Linux, o Vim já fica instalado por padrão.Pode-se instalar a versão gráfica do editor; Debian sudo apt-get install vim-gtk [vim-gnome] Fedora yum install gvim Outras distribuições (compilando) http://bit.ly/compile-gvim
  • No WindowsPossui interface gráfica para instalar: Download: http://bit.ly/windows-vim Next, Next, Finish.
  • No Mac OSProjeto MacVim Download: http://bit.ly/macvim Instale em A pplications
  • Mostrando o Ambiente
  • Mostrando o Ambiente
  • Usando o editor 5
  • Abrindo arquivosAbrindo um ou mais arquivos vim arq [arq2] [arqN]Abrir em somente leitura vim -R arq [arq2] [arqN]Abrir e posiciona cursor na última linha vim + arqAbrir e posiciona cursor na linha X vim +15 arqAbrir arquivo e fazendo busca ao mesmo tempo vim +/padrão arq
  • Fechando arquivosGrava texto e continua editando :w[!] ou :w[!] <nome do arquivo>Grava texto (se tiver alteração) e sai do Vim ZZSalva arquivo e sai do Vim :wq[!]Fecha do editor :qFecha o editor sem salvar as alterações :q! ! - mesmo em RO
  • Navegação
  • Editando arquivos
  • Modos de operaçãoO Vim é um editor modalIsso dificulta o estudo mas você tem: Atalhos mais simples Significados diferentes em cada modo de operaçãoTipos: Normal Mode Insert Mode
  • Normal ModeÉ usado para fazer ações simples: Deletar; Copiar; Colar; Entre várias outras...Quando abre o editor, já está no Modo NormalAtalho: <Esc>
  • Insert ModeÉ neste modo que irá inserir o seu textoVárias formas de iniciar o modo de edição: <a> - inicia um caracter após do cursor atual <i> - inicia um caracter antes do cursor atual <Shift> + <a> - inicia no final da linha <Shift> + <i> - inicia no início da linha
  • Visual ModeModo que seleciona um trecho de um texto que deseja: Por caracteres: <v> Por linha: <Shift> + <v> Por blocos: <Ctrl> + <v>
  • Command ModeÉ aonde digita os comandos desejados para, por exemplo: Salvar Ir para linha X Copiar e colar Procurar e substituir; (...)
  • Copiando e colandoCopiar trecho selecionado y ou :yCopiar linha inteira yy ou :yyColando no cursor atual p ou :pColando acima da linha atual P ou :P
  • Procurando e substituindoPesquisar Modo normal /<texto a ser procurado> Modo de comando: :/<texto a ser procurado>
  • Procurando e substituindoSubstituindo Mudar trecho no cursor atual :s/<texto antigo>/<texto novo> Mudar trecho em todo o arquivo :%s/<texto antigo>/<texto novo> Mudar trecho em todo o arquivo (com confirmação) :%s/<texto antigo>/<texto novo>/c
  • Facilidades
  • RegistradoresTem uma utilidade específica, que é armazenar cópias internas, do clipboard, deleções, entre outros;Ou seja, é um clipboard do editor :”0 - registra a seleção no registrador 0; :”$ - registra a seleção no registrador $; :”% - registra o nome do arquivo; :”/ - registra o último padrão de busca;
  • FoldsSão como dobras nas quais o vim esconde partes do texto zo – abre uma dobra; zc – fecha a dobra; zR – abre todas as dobras do arquivo atual; zj – desce até a próxima dobra; zk – sobe até a próxima dobra;
  • AbasCriando uma aba :tabnew [arq]Criando uma aba e abrindo um arquivo :tabedit arqAlternando para a próxima aba :tabnextAlternando para a aba anterior :tabprevious
  • BuffersArquivos abertos que estão na memóriaListando arquivos no buffer :lsAbrindo determinado arquivo do buffer :buffer <id do buffer>Indo para o próximo buffer :bnextIndo para o buffer anterior : bprevious
  • Dividindo em janelasDentro da interface do editor, você pode abrir várias janelas; Abrindo uma janela lateral <Ctrl> + w + v Abrindo uma janela horizontal <Ctrl> + w + n Movendo para janela à esquerda e a direita <Ctrl> + w + h / <Ctrl> + w + l Movendo para janela para cima ou abaixo <Ctrl> + w + k / <Ctrl> + w + j
  • Plugins
  • Plugins para programaçãoSurroundNERD BrowserVim Indent GuidesSnipmateCommand-TVim-Git / Vim-FugitiveTaglist
  • Plugins úteisPathogenVim powerlineSyntasticSparkup (Zen Coding)Font Zoome vários outros...
  • Mais de3.700 plugins
  • IndicaçõesVimcasts – 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_WikiDocumentação (:help)Twitter: @vimtips, @tpope, @vimrecipes
  • Dicas importantesNão decore todos os comandos. Aprenda uma coisa de cada vez;Aprendeu os comandos que precisa, então busque novos comandosVai ser difícil, mas todo aprendizado exige esforço – N o pain, N o gain;
  • Perguntas? @gilsonfilho blog.gilsondev.com (breve no github) gilsondev.github.com bitbucket.org/gilsondev gilsondev.com