Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Vim inside VSCode
Search
Cadu Ribeiro
January 16, 2020
Programming
43
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vim inside VSCode
Cadu Ribeiro
January 16, 2020
More Decks by Cadu Ribeiro
See All by Cadu Ribeiro
DevContainers: Facilitando o Setup de ambientes de desenvolvimento
duduribeiro
0
56
Uma introdução em perfomance de Aplicações Web para impactar positivamente a vida de seus usuários
duduribeiro
0
59
Testes Automatizados para Web - Uma Introdução
duduribeiro
0
82
Continuous Delivery - On the real world
duduribeiro
0
120
An Introduction to Automated Web Testing
duduribeiro
3
94
Continuous Delivery
duduribeiro
0
79
Agility Through Continuous Delivery
duduribeiro
0
65
Hello Ruby
duduribeiro
2
100
Other Decks in Programming
See All in Programming
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
130
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
130
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
17k
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
490
継続モナドとリアクティブプログラミング
yukikurage
3
670
AIエージェントで 変わるAndroid開発環境
takahirom
2
750
Android CLI
fornewid
0
190
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
9
5.9k
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1.1k
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
180
Claude Team Plan導入・ガイド
tk3fftk
0
240
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
280
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
5.1k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
370
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
190
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
670
Into the Great Unknown - MozCon
thekraken
41
2.6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
The SEO identity crisis: Don't let AI make you average
varn
0
520
The Cost Of JavaScript in 2023
addyosmani
55
10k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
230
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
980
Transcript
VsCode + Vim Productivity +1
Carlos Ribeiro https:!//cadu.dev ☕
None
None
None
None
O que é o VsCode?
O que é o VIM?
None
None
Por que usar Vim?
Por que usar Vim no VSCode?
Instalando!
None
Primeiros passos
Vim e seus modos
Insert Mode Normal Mode Visual Mode Digitar textos e nossos
códigos Navegar e manipular Selecionar texto e editar
Exercício: exer_01.txt
Normal Mode
Navegando com hjkl k l h j i: Ir para
insert mode ESC, CTRL+C, CTRL+[: Voltar para o normal mode
None
Exercício: exer_02.txt
Navegando no painel “Go to File” CTRL+p CTRL+n
dica
Join lines High Low Middle J, H e L são
diferentes de j, h e l Navegar na tela
Exercício: exer_03.txt
Resumo • Usar hjkl para movimentar • Usar o i
para ir para o modo de inserção • Usar ESC para voltar para o modo normal • Usar HLM para scrollar o cursor na tela e J para juntar linhas
Movimentos
Movimentando
word motion
word end of word back gend of backward word
Exercício: exer_04.rb
O que é uma palavra?
• Sequência de letras, dígitos e números • Sequência de
caracteres não branco
1 isso são quatro palavras 2 isso também ... ===
O que é uma PALAVRA?
hello_world(1, 2) word WORD
WORD END OF WORD BACK gEND OF BACKWARD WORD
Exercício: exer_04.rb
find motion
find Find backward find until find unTil backward f{character}
Exercício: exer_04.rb
repetindo a busca
; próxima , anterior depois da busca:
Exercício: exer_04.rb
Mais movimentos horizontais
0 ir para o começo da linha ^ ir para
o primeiro caracter não branco da linha $ ir para o fim da linha g_ ir para o último caracter não branco da linha
Exercício: exer_05.rb
Movimentando
{ pular o parágrafo } pular o parágrafo para trás
CTRL+D scrollar meia página para baixo CTRL+U scrollar meia página para cima
Exercício: exer_06.rb
Procurando
/{pattern} procurar pattern ?{pattern} procurar pattern para trás * procurar
pela palavra do cursor # procurar pela palavra do cursor para trás n repetir busca N repetir busca para trás
Exercício: exer_06.rb
Contadores
5j ir 5 caracteres para baixo 5l ir 5 caracteres
para direita {count}{command} exemplos 2; executar ; 2 vezes 2f_ buscar segundo _ na linha
TIP: Relative Numbers
Indo para a definição
go to definition go to file CTRL+- voltar para o
trecho que você estava anteriormente
Exercício: exer_07.{js,rb}
Mais movimentos
gg ir para o topo do arquivo G ir para
o fim do arquivo {linha}gg ir para linha específica % ir para o correspondente ( { [ …
Exercício: exer_06.rb
Resumo • Aprendemos alguns movimentos mais eficientes que os básicos
hjkl • Fazer buscas • Contadores
Operadores
{operador}{count}{movimento}
d5j deletar 5 linhas para baixo ct( alterar do cursor
atual até o primeiro ( exemplos dw deletar a palavra
change delete yank put (paste) g{case} mudar case > mover
para direita < mover para esquerda
x = dl apagar caracter no cursor alguns atalhos X
= dh apagar caracter anterior ao cursor s = ch mudar caracter no cursor e entrar no Insert mode r trocar caracter no cursor e não entrar no IM
Exercício: exer_08.rb
Dobrar o operador
dd deletar a linha inteira cc alterar a linha inteira
yy copiar a linha inteira
Operadores com versões capitalizadas
D deletar do cursor até o fim da linha Y
copiar a linha inteira P colar atrás do cursor C alterar do cursor até o fim da linha
Exercício: exer_08.rb
Text Objects
{operador}{a|i}{text-object}
Text objects sentence word paragraph put (paste) tag ‘"` quotes
b ou ( ou ) blocos cercado por parênteses B ou { ou } blocos cercado por chaves < ou > blocos cercado por < > [ ou ] blocos cercado por []
Exercício: exer_09.rb
Exercício: exer_10.html
Vim surround
:ds deletar no entorno :cs mudar o entorno :ys adicionar
entorno
Exercício: exer_09.html
Exercício: exer_10.html
O comando .
Exercício: exer_11.txt
Desfazer e Refazer
u desfazer a ultima alteração CTRL+R refazer
Exercício: exer_11.txt
Resumo • Movimentos são muito úteis combinados com os operadores
• Text-Objects são movimentos especiais que descrevem documentos e são eficientes combinado com os operadores • O comando de repetição • Desfazer e Refazer
Escrevendo
insert append INSERT at start of line APPEND at end
of line open line below OPEN line above gi volta para o insert no último lugar que você deixou
Exercício: exer_12.txt
CTRL+h deletar último caracter digitado CTRL+w deletar última palavra digitada
CTRL+u deletar última linha digitada
Exercício: exer_13.txt
Visual Mode
v entrar no modo visual - caracter V entrar no
modo visual - linha CTRL+v entrar no modo visual - bloco
Exercício: exer_14.rb
Repetindo operações em busca
gn próximo resultado com seleção visual gN resultado anterior com
seleção visual
Exercício: exer_16.txt
copiar&colar com registradores
" unnamed register a-z named register 0 yank register 1-9
cut register
“{register}{operation}{motion}
“ayy copiar a linha para o registrador a exemplos “byaw
copiar a palavra para o registrador b “bp colar registrador b
Exercício: exer_17.txt
Multiplos cursores
CMD+D adiciona outro cursor com a mesma seleção da palavra
atual
Exercício: exer_18.rb
Ex commands
:edit {arquivo relativo} editar arquivo :write gravar arquivo :quit fechar
arquivo
Divisões (splits)
:sp ou CTRL+W S split horizontal :vsp ou CTRL+W V
split vertical
Navegando nas divisões
:CTRL+[h,j,k,l] Mover para a divisão (h: esquerda, l: direita, etc)
Abas (tabs)
:tabnew {arquivo} abrir o arquivo em nova aba :tabnext ir
para a próxima aba :tabprevious ir para a aba anterior :tabonly fechar todas as outras abas
Mapeamento customizado e a tecla Leader
THANK YOU!
[email protected]
https://cadu.dev