Migrar do VS Code
Definição curta: A migração falha quando se tenta reproduzir o VS Code dentro do Neovim; funciona quando se adota o modelo modal primeiro e as ferramentas depois.
Antes de começar
- Neovim v0.11 ou mais recente instalado — confira com
nvim --version - Um
init.luaque já carrega, ainda que vazio
O que você vai aprender
- Explicar A decisão de fundo com suas palavras
- Explicar Etapa 1 — só o modal (uma a duas semanas) com suas palavras
- Explicar Etapa 2 — Neovim mínimo (uma semana) com suas palavras
- Localizar o assunto desta página no
:helpdo seu próprio Neovim
A decisão de fundo
A migração que dá errado é a que tenta transformar o Neovim em um VS Code com outro nome — instalar trinta plugins na primeira semana até que “tudo funcione igual”. O resultado é uma configuração frágil e um editor que você não entende.
A que dá certo começa pelo que não tem equivalente: a edição modal. Os plugins vêm depois, um a um, conforme a falta é sentida.
Etapa 1 — só o modal (uma a duas semanas)
Instale a extensão de Vim no próprio VS Code e continue trabalhando nele. O objetivo é internalizar modos, motions, operadores e objetos de texto sem risco de produtividade.
Você sabe que a etapa terminou quando ci", da( e >ap saem sem pensar.
Etapa 2 — Neovim mínimo (uma semana)
Um init.lua de cinquenta linhas, sem nenhum plugin além do tema — ver init.lua básico e init.lua mínimo.
Sem LSP, sem árvore de arquivos, sem barra de status. O objetivo é descobrir o que você realmente sente falta, em vez de instalar o que imagina precisar.
Etapa 3 — as três ferramentas essenciais
Na ordem em que a falta costuma aparecer:
- Busca difusa — Telescope. Substitui
Ctrl+Pe a busca no projeto. - LSP — configuração do LSP. Autocompletar, ir para definição, renomear, diagnósticos.
- Treesitter — configuração do Treesitter. Realce de sintaxe correto e objetos de texto por estrutura.
Com essas três, a maior parte do fluxo do VS Code está coberta.
Tabela de equivalências
| VS Code | Neovim |
|---|---|
Ctrl+P | :Telescope find_files |
Ctrl+Shift+F | :Telescope live_grep |
Ctrl+Shift+P | : (a própria linha de comando) |
F12 ir para definição | gd |
Shift+F12 referências | gr ou :Telescope lsp_references |
F2 renomear | vim.lsp.buf.rename() |
Ctrl+. ações de código | vim.lsp.buf.code_action() |
Ctrl+B barra lateral | :Ex, oil.nvim ou neo-tree |
Ctrl+| dividir editor | <C-w>v |
| Terminal integrado | :terminal |
| Multi-cursor | macros, :s, ou :g — ver abaixo |
| Configurações em JSON | init.lua |
| Extensões do marketplace | plugins via lazy.nvim |
O caso do multi-cursor
É a perda mais citada e a mais superestimada. O Neovim resolve os mesmos problemas por três caminhos diferentes:
:%s/\vantigo/novo/g " quando o padrão é descritível
qa ... q → :%normal @a " quando a transformação é executável
<C-v> jjj I texto <Esc> " modo visual em bloco, para colunas
Na prática, :g/padrão/normal @a cobre a maioria dos usos de multi-cursor e funciona em arquivos onde o multi-cursor seria inviável. Ver macros.
O que realmente se perde
Vale ser honesto:
- Depuração gráfica integrada. O DAP funciona, mas configurar é mais trabalhoso e a interface é menos polida.
- Live Share e colaboração em tempo real. Não há equivalente maduro.
- Ecossistema de extensões de nicho. Ferramentas de fornecedores específicos frequentemente só existem para VS Code.
- Funcionar sem configuração. O Neovim exige que você configure; isso é o custo do controle que ele oferece.
O que se ganha
- Um editor que não muda sozinho. Sua configuração é um arquivo de texto versionado.
- Consumo de recursos muito menor, o que importa em máquinas modestas e sessões remotas.
- O mesmo editor em qualquer servidor, por SSH, com a mesma configuração.
- Edição modal, que é o ganho de fato — e o único que não se leva de volta ao VS Code.
Erros comuns
- Instalar uma distribuição pronta na primeira semana — funciona, e você não aprende nada; se algo quebrar, não há como diagnosticar
- Recriar todos os atalhos do VS Code — luta contra o modelo em vez de usá-lo
- Desistir na primeira semana — a curva é real e a virada costuma vir na terceira
- Migrar durante um prazo apertado
Você aprendeu
- A decisão de fundo
- Etapa 1 — só o modal (uma a duas semanas)
- Etapa 2 — Neovim mínimo (uma semana)
- Etapa 3 — as três ferramentas essenciais
- Tabela de equivalências
Perguntas para reflexão
- O que A decisão de fundo resolve, e o que se perde sem isso?
- O que Etapa 1 — só o modal (uma a duas semanas) resolve, e o que se perde sem isso?
- O que Etapa 2 — Neovim mínimo (uma semana) resolve, e o que se perde sem isso?
- Qual parte desta página você conseguiria reproduzir sem consultar, direto no editor?
Artigos relacionados
Veja também
- Instalação
- init.lua básico
- Modos do Neovim
- Buffers, janelas e abas — o modelo que mais confunde quem chega
Referências
:help vim-differences— o que difere do Vim clássico:help nvim-from-vim