🧠FFVAcademy
✏️

VSCode/Vim produtivos: atalhos, plugins, multi-cursor

7 min de leitura·+35 XP
Pré-requisitos (0/1)0%

Recomendamos completar os pré-requisitos antes de seguir, mas nada te impede de continuar.

O editor de texto é onde você passa a maior parte do dia. Dominar os atalhos do VSCode não é luxo — é multiplicar a velocidade de desenvolvimento. E saber Vim básico te salva quando você está num servidor sem interface gráfica.

VSCode: os atalhos que mais importam

AçãoWindows/LinuxMac
Command PaletteCtrl+Shift+PCmd+Shift+P
Abrir arquivo (fuzzy)Ctrl+PCmd+P
Busca globalCtrl+Shift+FCmd+Shift+F
Terminal integradoCtrl+`Cmd+`
Comentar linha/seleçãoCtrl+/Cmd+/
Formatar documentoShift+Alt+FShift+Option+F
Ir para definiçãoF12F12
Peek definitionAlt+F12Option+F12
Renomear símboloF2F2
Multi-cursor (próxima ocorrência)Ctrl+DCmd+D
Multi-cursor (todas as ocorrências)Ctrl+Shift+LCmd+Shift+L
Mover linhaAlt+↑/↓Option+↑/↓
Duplicar linhaShift+Alt+↑/↓Shift+Option+↑/↓
Deletar linhaCtrl+Shift+KCmd+Shift+K
Selecionar linhaCtrl+LCmd+L
Ir para linhaCtrl+GCmd+G
Fechar abaCtrl+WCmd+W
Reabrir aba fechadaCtrl+Shift+TCmd+Shift+T
Split editorCtrl+\Cmd+\
Zen modeCtrl+K ZCmd+K Z

Multi-cursor: edição em múltiplos lugares ao mesmo tempo

# Casos de uso de multi-cursor no VSCode:

# 1. Renomear variável em múltiplas ocorrências no arquivo:
#    Selecione "oldName" → Ctrl+D (adiciona a próxima ocorrência)
#    Repita Ctrl+D até selecionar todas → digite o novo nome

# 2. Adicionar cursor em todas as ocorrências de uma vez:
#    Selecione "oldName" → Ctrl+Shift+L → todos os cursores aparecem

# 3. Multi-cursor em colunas (Box selection):
#    Shift+Alt e arrastar o mouse (Windows/Linux)
#    Shift+Option e arrastar o mouse (Mac)
#    Útil para: adicionar vírgula ao final de cada linha, alinhar valores

# 4. Cursor no final de cada linha selecionada:
#    Selecione múltiplas linhas → Alt+Shift+I (Win) / Option+Shift+I (Mac)
#    Útil para adicionar ponto-e-vírgula, vírgula, etc.

# 5. Alt+Click para cursor em posições arbitrárias:
#    Clique em cada posição onde quer um cursor
#    Todos os cursores digitam/apagam ao mesmo tempo

Extensões essenciais por categoria

Linguagens e Formatação

Prettier — formatação automática (JS/TS/CSS/JSON/YAML)

ESLint — linting JavaScript/TypeScript

Python (Microsoft) — IntelliSense, debug, testes

Go (Google) — todo o tooling Go

Rust Analyzer — language server para Rust

Git e Colaboração

GitLens — blame, histórico, comparações inline

Git Graph — visualização do DAG de commits

GitHub Pull Requests — review de PRs dentro do VSCode

Produtividade

GitHub Copilot — AI completions (pago)

Path Intellisense — autocomplete de paths

Auto Rename Tag — renomeia tag HTML de abertura/fechamento juntas

Bracket Pair Colorizer 2 — colore pares de chaves (nativo no VSCode agora)

DevOps/Cloud

Docker — integração com containers

Kubernetes — manage clusters

AWS Toolkit — recursos AWS

Remote - SSH — editar arquivos em servidor remoto como se fosse local

Temas e Aparência

GitHub Theme — excelente contraste dark/light

Material Icon Theme — ícones de arquivos por tipo

One Dark Pro — clássico

Tokyo Night — popular em 2025

Configurações úteis no settings.json

// settings.json (Ctrl+Shift+P → "Open User Settings JSON")
{
  // Auto-salva ao mudar de aba
  "files.autoSave": "onFocusChange",

  // Formata ao salvar (requer Prettier ou outro formatter)
  "editor.formatOnSave": true,
  "editor.defaultFormatter": "esbenp.prettier-vscode",

  // Minimap: desabilitar se achar distração
  "editor.minimap.enabled": false,

  // Font ligatures (requer fonte como Fira Code, JetBrains Mono)
  "editor.fontFamily": "JetBrains Mono, 'Courier New', monospace",
  "editor.fontLigatures": true,
  "editor.fontSize": 14,

  // Tab = 2 espaços para JS/TS, 4 para Python
  "editor.tabSize": 2,
  "[python]": {
    "editor.tabSize": 4
  },

  // Terminal
  "terminal.integrated.defaultProfile.linux": "zsh",
  "terminal.integrated.fontSize": 13,

  // Explorer
  "explorer.confirmDelete": false,  // sem confirmação ao deletar
  "files.exclude": {
    "**/.git": true,
    "**/node_modules": true,
    "**/__pycache__": true
  }
}

Vim básico: sobrevivência em servidores

Vim está instalado em praticamente todo servidor Linux. Saber o mínimo evita pânico quando você precisa editar um arquivo de config num servidor sem VSCode ou nano disponível.

# Os modos do Vim:
# NORMAL — modo padrão ao abrir (navegar, comandos)
# INSERT — para digitar texto (pressione i para entrar, Esc para sair)
# VISUAL — para selecionar texto (pressione v)
# COMMAND — para comandos : (pressione : em Normal)

# Abrir arquivo
vim arquivo.txt

# Comandos essenciais em NORMAL mode:
i          → entra em INSERT antes do cursor
a          → entra em INSERT após o cursor
o          → nova linha abaixo, entra em INSERT
O          → nova linha acima, entra em INSERT
Esc        → volta para NORMAL
u          → undo
Ctrl+R     → redo

# Navegação
h j k l    → ←↓↑→ (ou use as setas)
gg         → início do arquivo
G          → final do arquivo
:42        → vai para linha 42
/padrão    → busca para frente (n = próximo, N = anterior)
?padrão    → busca para trás

# Edição
dd         → deleta a linha inteira
yy         → copia (yank) a linha
p          → cola abaixo
x          → deleta caractere sob o cursor
dw         → deleta palavra
cw         → muda palavra (deleta + entra em INSERT)
.          → repete o último comando

# Salvar e sair (em COMMAND mode, após pressionar :)
:w         → salva
:q         → sai (só se não houver mudanças)
:wq        → salva e sai
:x         → idem :wq
:q!        → sai sem salvar (descarta mudanças)
:w !sudo tee %  → salva como root (se esqueceu de abrir com sudo)

# Busca e substituição
:%s/antigo/novo/g     → substitui todas as ocorrências no arquivo
:%s/antigo/novo/gc    → substitui com confirmação de cada
💡
Se quiser aprender Vim a sério, rode vimtutor no terminal — um tutorial interativo que leva ~30 minutos e ensina o suficiente para ser produtivo. Ou tente o modo Vim do VSCode (extensão "Vim") para aprender no ambiente que você já usa.
Você concluiu a Trilha Fundamentos Técnicos! CLI, permissões, processos, SSH, Git, GitHub, HTTP, DNS/TLS, JSON/YAML e editor produtivo. Agora você tem a base para qualquer trilha técnica do FFV Academy.
💡
Próximos caminhos: Fundamentos da IA se quer entender como modelos funcionam; AWS Cloud Practitioner se quer cloud; DevOps & Containers se quer infraestrutura.
🧩

Quiz rápido

3 perguntas · Acerte tudo e ganhe o badge 🎯 Gabarito

Continue lendo