criando apps ruby/ror utilizando vim
TRANSCRIPT
![Page 1: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/1.jpg)
CRIANDO APPS
Rafael Cruz Rubert@rafarubert
RUBY/RORUTILIZANDO
VIM
sábado, 18 de dezembro de 2010
![Page 2: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/2.jpg)
SOBRE
• ProgrAmador desde 2005
• Conheceu Ruby 2007
• Também usuário VIM desde 2007
• Tentando usar TextMate (Caiu na besteira de comprar)
• Freelancer =)
sábado, 18 de dezembro de 2010
![Page 3: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/3.jpg)
POR QUE UTILIZAR VIM?
• Simples
• Robusto
• Comunidade participativa
•Muitos plugins
• Boa documentação
• Funfa no *nix, Win, Mac
• Versão melhorada VIsábado, 18 de dezembro de 2010
![Page 4: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/4.jpg)
POR QUE NÃO UTILIZAR VIM?• Curva de aprendizagem lenta
• Você é um programador Delphi, .NET, ...
• Gosta muito do seu mouse
• Adora ver seu computador bebendo memória e travando
• Não gosta que te chamem de: NERD/GEEK/ET/Fã de Matrix ou StarWars
sábado, 18 de dezembro de 2010
![Page 5: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/5.jpg)
GUIA DE INSTALAÇÃO(MAC)• https://github.com/b4winckler/macvim/downloads
• Baixar/Extrair
• Arrastar MacVim para Aplicações
• Colar mvim em /usr/local/bin/
• git clone git://github.com/akitaonrails/vimfiles.git ~/.vim
• cd .vim
• git submodule init
• git submodule update
• ln -s ~/.vim/vimrc ~/.vimrcsábado, 18 de dezembro de 2010
![Page 6: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/6.jpg)
PRIMEIRA PARTEVIM básico
sábado, 18 de dezembro de 2010
![Page 7: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/7.jpg)
TRABALHANDO COM ARQUIVOS
sábado, 18 de dezembro de 2010
![Page 8: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/8.jpg)
MODOS DO VIM
COMANDO INSERÇÃO VISUAL
<Esc> i,a v
sábado, 18 de dezembro de 2010
![Page 9: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/9.jpg)
ABRINDO UM ARQUIVO
mvim Abre mvim em um arquivo vazio
mvim arquivo.txt Abre o arquivo.txt com mvim
mvim +5 arquivo.txt Abre o arquivo.txt na quinta linha
mvim /redbull arquivo.txt Abre o arquivo.txt com o ponteiro na palavra redbull
:e outro_arquivo.txt com o mvim aberto abrimos outro_arquivo.txt
sábado, 18 de dezembro de 2010
![Page 10: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/10.jpg)
SAINDO DE UM ARQUIVO
:q Sai do arquivo avisando se o arquivo foi editado
:q! Sai do arquivo, sem querer saber de nada
:wq Sai do arquivo e salva o mesmo
:x Faz o mesmo que o comando acima
:w >> “novo.txt” Salva o arquivo com outro nome
:saveas novo.txt Faz o mesmo que o comando acima
sábado, 18 de dezembro de 2010
![Page 11: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/11.jpg)
ESCREVENDO EM UM ARQUIVO
i Modo de inserção onde esta o ponteiro
I Modo de inserção um no começo da linha
a Modo de inserção um caractere a frente do ponteiro
A Modo de inserção final da linha
o Modo de inserção em uma linha acima
O Modo de inserção em uma linha abaixo
sábado, 18 de dezembro de 2010
![Page 12: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/12.jpg)
APAGANDO
dd Apaga linha atual
D Apagar resto da linha
d$ Apaga do ponto atual ate o final da linha
d0 Apaga do ponto atual ate o inicio da linha
dˆ Apaga do ponto atual ate o primeiro caractere não nulo
x Apenas apaga =)
sábado, 18 de dezembro de 2010
![Page 13: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/13.jpg)
COPIANDO
yy Copia a linha
Y Faz o mesmo que o comando acima
ye Copia do cursor ao final da palavra
yb Copia do começo da palavra ao cursor
sábado, 18 de dezembro de 2010
![Page 14: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/14.jpg)
COLANDO
p(minúsculo)Cola o que foi copiado/apagado para baixo
do cursor
P(maiúsculo)Cola o que foi copiado/apagado para cima
do cursor
[pCola o que foi copiado/apagado antes do
cursor
]pCola o que foi copiado/apagado depois do
cursor
sábado, 18 de dezembro de 2010
![Page 15: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/15.jpg)
NAVEGANDO
0 Vai para o inicio da linha$ Vai para o final da linhagg Vai para primeira linha do arquivoG Vai para ultima linha do arquivow Próxima palavrab Começo da palavrae Fim da palavra
:pwd Mostra caminho do arquivo atual:cd diretório Entra em outros diretórios
sábado, 18 de dezembro de 2010
![Page 16: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/16.jpg)
PROCURANDO POR ALGO?
:numero_linha Vai para a linha de numero
/palavra ou expressão regular vai para a próxima palavra ou regex
?palavra ou expressão regular Vai para a palavra anterior ou regex
n Após comandos acima, pula para o próximo registro encontrado
N Após comandos acima pula para o registro anterior encontrado
sábado, 18 de dezembro de 2010
![Page 17: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/17.jpg)
SUBSTITUINDO
:s/ola/ole Substitui a primeira ocorrência
:s/ola/ole/g Substitui todas as ocorrências
:s/ola/ole/gcSubstitui todas as ocorrências, confirmando
antes
:s/ola/ole/giSubstitui todas as ocorrências respeitando case
sensitive
sábado, 18 de dezembro de 2010
![Page 18: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/18.jpg)
FIZ MERDA, E AGORA?
u Desfaz a ultima alteração
<Ctrl>+r Refaz ultima alteração
g, Avança lista de alterações
g; Recua lista de alterações
:earlier 5m Retorna documento ocmo era a 5 minutos atras
:changes Mostra todas alterações
sábado, 18 de dezembro de 2010
![Page 19: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/19.jpg)
SEGUNDA PARTE:VIM
PARA PROJETOSRUBY/ROR
sábado, 18 de dezembro de 2010
![Page 20: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/20.jpg)
CRIANDO UM PROJETO
:Rails new my_project -d postgresql
Cria um novo projeto
:cd my_project
Entra no projeto
sábado, 18 de dezembro de 2010
![Page 21: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/21.jpg)
TRABALHANDO COM MODELOS
:Rgenerate model Post title:string
Criamos um model chamado Post
:Rmodel <tab>
Navegamos entre os models
sábado, 18 de dezembro de 2010
![Page 22: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/22.jpg)
TRABALHANDO COM CONTROLADORES
:Rgenerate controller Posts
Criamos um controller chamado post
:Rmodel <tab>
Navegamos entre os models
sábado, 18 de dezembro de 2010
![Page 23: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/23.jpg)
TRABALHANDO COM VISÕES
:e app/views/posts/index.html.erb
sábado, 18 de dezembro de 2010
![Page 24: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/24.jpg)
TRABALHANDO COM MIGRAÇÕES
:Rgenerate migration AjustPost
Criamos uma migration
sábado, 18 de dezembro de 2010
![Page 25: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/25.jpg)
EXECUTANDO TAREFAS RAKE
:Rake db:create
:Rake db:create
:Rake -T
sábado, 18 de dezembro de 2010
![Page 26: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/26.jpg)
UTILIDADES
<Control>+x+o Abre autocomplete
\p Abre navegador de arquivos lateral
\b Lista arquivos abertos
\t Abre Command+T
:Ack “texto” Procura texto nos arquivos do projeto
:split Divide a janela no meio(horizontal)
:vsplit Divide a janela no meio(vertical)
sábado, 18 de dezembro de 2010
![Page 27: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/27.jpg)
RODANDO APLICAÇÃO
:Rails console
:Rserver
:Rpreview
Rserver!-
sábado, 18 de dezembro de 2010
![Page 28: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/28.jpg)
SITES INTERESSANTES• http://eustaquiorangel.com
• http://akitaonrails.com/
• http://vivaotux.blogspot.com/
• http://aurelio.net/
• http://www.viemu.com/
• http://www.vim.org
• http://twitter.com/vimtips
sábado, 18 de dezembro de 2010
![Page 29: Criando Apps Ruby/RoR utilizando VIM](https://reader035.vdocuments.mx/reader035/viewer/2022081801/55c07654bb61ebdc248b4693/html5/thumbnails/29.jpg)
OBRIGADO@rafarubert
Ilustrações
ReferênciasMarcelo Casaquevit - [email protected] Maia - [email protected]
http://eustaquiorangel.com
http://akitaonrails.com/
http://code.google.com/p/vimbook/
sábado, 18 de dezembro de 2010