SlideShare uma empresa Scribd logo
1 de 52
Baixar para ler offline
vi, venci
Douglas Drumond
drumond.douglas@gmail.com
Do ed ao Vim com a mão na massa
1969-1970
1969-1970

“

Unix
1969-1970

“
“

Unix
ed
Exemplo (ed):

Fonte: Wikipedia
Exemplo (ed):

a

ed is the standard Unix text editor."
This is line number two."
."
2i"
↵"
.
Fonte: Wikipedia
Exemplo (ed):

Fonte: Wikipedia
Exemplo (ed):

%l

Fonte: Wikipedia
Exemplo (ed):

%l
ed is the standard Unix text
editor.$
$
This is line number two.$

Fonte: Wikipedia
Exemplo (ed):

Fonte: Wikipedia
Exemplo (ed):

3s/two/three/

Fonte: Wikipedia
Exemplo (ed):

3s/two/three/
,l

Fonte: Wikipedia
Exemplo (ed):

3s/two/three/
,l
ed is the standard Unix text editor.$
$
This is line number three.$

Fonte: Wikipedia
Exemplo (ed):

3s/two/three/
,l
ed is the standard Unix text editor.$
$
This is line number three.$
w text
65
Fonte: Wikipedia
Exemplo (ed):

3s/two/three/"
,l"
ed is the standard Unix text editor.$"
$"
This is line number three.$"
w text"
65"
q
Fonte: Wikipedia
Exemplo (ed):

Fonte: Wikipedia
George Coulouris
George Coulouris

“

em - editor for mortals
George Coulouris

“
“

em - editor for mortals
en
George Coulouris

“
“
“

em - editor for mortals
en
ex
George Coulouris
Bill Joy
Bill Joy
Bill Joy

vi
1976
Bram Moolenaar

1991
Modos
Modos

“

Normal
Modos

“
“

Normal
Insert
Modos

“
“
“

Normal
Insert
Visual
Modos

“
“
“
“

Normal
Insert
Visual
Select
Modos

“
“
“
“
“

Normal
Insert
Visual
Select
Command-line (Cmdline)
Modos

“
“
“
“
“
“

Normal
Insert
Visual
Select
Command-line (Cmdline)
Ex
Modos
Modos
Modos

“

Normal
Mão na massa
No terminal

“

$ vim arquivo
No vim

“
“
“
“
“

:w ➠ write (salvar, lit. escrever)
:q ➠ quit (sair)
:o ➠ open (abrir)
:new ➠ nova janela com o arquivo

:badd ➠ abre arquivo num novo
buffer (mas não exibe imediatamente)
No vim

“
“
“
“
“

[n]setas, [n]hjkl
[n]w [n]e [n]b
C-f C-b
[n]G
gg
No vim

“
“
“
“
“

[n]x
[n]d[movimento]
[n]dd
[n]D
[n]y ou [n]yy
p ou P
No vim

“
“
“
“
“

u
C-r
R
/
:s/de/para
:%s/de/para/g
No vim

“
“
“
“

:! ls
:r ! ls
:! sort %
:r ! sort %
Avançando um pouco
No terminal

“
“
“

$ vim -p arquivo1 arquivo2 arquivo3
$ vim -o arquivo1 arquivo2 arquivo3
$ vim -O arquivo1 arquivo2 arquivo3
No vim

“
“
“
“

gt ou gT ➠ navega entre as abas
c-w w ➠ navega entre janelas
:split e :vsplit ➠ abre janelas
:tabnew ➠ abre abas
No vim

“
“
“
“

:set foldmethod=syntax
zM
zR
za
Personalização

“

Cada Vim é único
Exemplo: meu Vim
E agora?

“
“
“
“

$ vimtutor
:help intro (veja também :help)

http://www.viemu.com/a-why-vivim.html
http://www.viemu.com/
a_vi_vim_graphical_cheat_sheet_tu
torial.html
Agradecimentos

“
“
“
“
“

Aos alunos, pela presença.
Ao pessoal do GPSL, pela oportunidade. Especialmente ao
Ivan, pelo apoio logístico e operacional.
À Jin (EC05), pelas sugestões.
Ao Roberto Honji (EC06), pelo material base.
E a todos os programadores anônimos ou não que criaram
o Vim e todo o ambiente que propiciou isso (desde os
primeiros computadores até a atualidade). Até ao pessoal
que criou o Keynote, que é proprietário, mas é uma boa
ferramenta de apresentação.

Mais conteúdo relacionado

Mais de Douglas Drumond (7)

Android wear (coding)
Android wear (coding)Android wear (coding)
Android wear (coding)
 
[MobCamp 2014] Android Wear and Google Glass
[MobCamp 2014] Android Wear and Google Glass[MobCamp 2014] Android Wear and Google Glass
[MobCamp 2014] Android Wear and Google Glass
 
[DevCamp 2014] Melhorando a Usabilidade com Animações
[DevCamp 2014] Melhorando a Usabilidade com Animações[DevCamp 2014] Melhorando a Usabilidade com Animações
[DevCamp 2014] Melhorando a Usabilidade com Animações
 
[DevCamp 2014] Melhorando a usabilidade com animações
[DevCamp 2014] Melhorando a usabilidade com animações[DevCamp 2014] Melhorando a usabilidade com animações
[DevCamp 2014] Melhorando a usabilidade com animações
 
[FLISOL] Android Faixa Branca (Iniciando no Android) – 2013
[FLISOL] Android Faixa Branca (Iniciando no Android) – 2013[FLISOL] Android Faixa Branca (Iniciando no Android) – 2013
[FLISOL] Android Faixa Branca (Iniciando no Android) – 2013
 
[Faat] android faixa branca – 2012
[Faat] android faixa branca – 2012[Faat] android faixa branca – 2012
[Faat] android faixa branca – 2012
 
[Android devcamp] Android Bootcamp – 2012
[Android devcamp] Android Bootcamp – 2012[Android devcamp] Android Bootcamp – 2012
[Android devcamp] Android Bootcamp – 2012
 

Último

Último (8)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 

[Unicamp] curso vim – 2010