Escolhendo um Editor: vim, nano, emacs e VS Code

Escolhendo um Editor: vim, nano, emacs e VS Code

Qual Editor Você Deveria Usar?

Você digitou vim, a tela mudou e de repente não conseguiu sair. Quase todo mundo que aprende Linux enfrenta essa parede uma vez. Há tantos editores de texto — vim, nano, emacs, VS Code — e ainda assim ninguém realmente te diz qual usar.

Este guia desembaraça as diferenças entre quatro editores populares (vim, nano, emacs e VS Code) e qual um iniciante deveria começar a usar — tudo através de uma conversa entre Lina e o veterano Linny.

O que você vai aprender

  • Por que existem tantos tipos de editores
  • Os pontos fortes de nano, vim, emacs e VS Code
  • Como os quatro editores diferem em curva de aprendizado e caso de uso
  • Qual editor um iniciante deveria começar e quando mudar
  • Como escapar do temido "estou preso no vim" em um único movimento

1. Por que Existem Tantos Editores?

Conclusão: Os editores evoluíram para trabalhos diferentes — "consertar algo rapidamente em um servidor" versus "sentar e desenvolver" — então várias opções cresceram para diferentes propósitos.

Lina: Veterano Linny, por que existem tantos editores de texto? Um seria suficiente...
Veterano Linny: Boa pergunta. É porque o editor "certo" muda dependendo de onde e o que você está editando.
Lina: Depende da situação?
Veterano Linny: Certo. Digamos que você faça SSH em um servidor para consertar uma linha em um arquivo de configuração. Em vez de abrir uma ferramenta de desenvolvimento pesada, você quer algo que possa abrir e consertar direto no terminal. Mas se você escreve um app com centenas de arquivos todo dia, um editor rico em recursos com completion e busca fortes é muito mais confortável.
Lina: Entendo — a "ferramenta certa" cresceu para cada situação.
Veterano Linny: Exatamente. Então a resposta não é "qual é o melhor," mas "quando uso qual."

Editores CUI vs editores GUI

  • CUI (dentro do terminal): nano, vim, emacs. Rodam até via SSH em um servidor remoto.
  • GUI (app de janela): VS Code. Mouse e menus, forte para desenvolvimento em grande escala.

Editores CUI rodam em qualquer lugar. Editores GUI são confortáveis para desenvolvimento local. Manter essa distinção em mente facilita tudo.

2. O que é nano?

Conclusão: nano é o editor CUI mais amigável para iniciantes — ele sempre mostra os comandos de teclas na parte inferior da tela. Perfeito para "apenas consertar isso."

Lina: Quero começar com o mais fácil!
Veterano Linny: Então é o nano. O grande benefício do nano é que as teclas que você pode pressionar são sempre mostradas na parte inferior da tela. Então mesmo que você não lembre dos comandos, não vai se perder.
Lina: É como ter uma folha de cola integrada.
Veterano Linny: Exatamente. Por exemplo, ^X significa "segure Ctrl e pressione X" para sair. O símbolo ^ representa a tecla Ctrl.
nano memo.txt

Quando o nano iniciar, você pode simplesmente digitar para editar. Para sair, pressione as teclas mostradas abaixo.

^X Exit    ^O Save    ^W Search    ^K Cut line
(^ means the Ctrl key)

Básicos do nano

  • Salvar: Ctrl+O (Write Out), depois Enter para confirmar
  • Sair: Ctrl+X
  • Buscar: Ctrl+W

Você move o cursor com as teclas de seta, e não há "modos" especiais. É o mais parecido com o Bloco de Notas no Windows.

Quando em dúvida, comece com nano. Vem pré-instalado na maioria dos sistemas Linux, e para pequenas edições em um arquivo de configuração no servidor, nano é mais que suficiente.

3. O que é vim?

Conclusão: vim é um poderoso editor CUI que permite editar rapidamente apenas com o teclado. Tem "modos" — uma vez acostumado, é o mais rápido, mas a curva de aprendizado é íngreme.

Lina: Uma vez abri o vim e não consegui sair. Entrei em pânico...
Veterano Linny: Isso é clássico. O vim tem esse conceito de "modos," e se você não souber sobre eles, é fácil entrar em pânico.
Lina: Modos?
Veterano Linny: Certo. Quando o vim inicia, está em "modo normal," onde as teclas agem como comandos, não como entrada de texto. Para digitar caracteres, você pressiona i para entrar no "modo de inserção."
Lina: Então é por isso que nada funcionava normalmente quando eu digitava!
Veterano Linny: Exatamente. E para sair, você primeiro pressiona Esc para voltar ao modo normal, depois :q para sair. Uma vez que você sabe disso, o vim não é mais assustador.
vim config.txt

Aqui estão os três comandos mais importantes para escapar do vim com segurança.

i        Enter insert mode (you can type now)
Esc      Return to normal mode
:wq      Save and quit
:q!      Quit without saving (force)

Como escapar quando está preso!

  1. Pressione Esc primeiro (independente do modo em que você está, isso retorna ao modo normal)
  2. Para salvar e sair, digite :wq e pressione Enter
  3. Para descartar suas edições e sair, digite :q! e pressione Enter

Digitar : permite que você insira um comando na parte inferior da tela. O truque é manter a calma e sempre começar com Esc.

O vim é difícil no começo, mas seu maior apelo é editar rapidamente sem tirar as mãos do home row. A administração de servidores frequentemente assume o vim, então aprender o mínimo (abrir, editar, salvar, sair) traz tranquilidade.

4. O que é emacs?

Conclusão: emacs é um editor CUI que visa "fazer tudo" por meio de extensões. Sua customizabilidade é inigualável, mas há muito a aprender.

Lina: Como o emacs é diferente do vim?
Veterano Linny: A grande diferença é que o emacs permite que você digite texto imediatamente, sem troca de modos. Em vez disso, você dá comandos com combinações de Ctrl e Alt.
Lina: Então você não fica "preso" como no vim?
Veterano Linny: Como não há modos, raramente você se confunde enquanto digita. Para sair, pressione Ctrl+X depois Ctrl+C. Para salvar, pressione Ctrl+X depois Ctrl+S.
Lina: Você pressiona teclas em duas etapas.
Veterano Linny: Certo, essa é a forma do emacs. E o real poder do emacs é sua extensibilidade — você pode reescrever sua configuração para incluir email, gerenciamento de arquivos e mais. É menos um editor e mais um ambiente de trabalho completo.
emacs notes.txt

Aqui estão os comandos mínimos do emacs. C-x significa "segure Ctrl e pressione x."

C-x C-s   Save
C-x C-c   Quit
C-g       Cancel the current action (use this when stuck)

Onde o emacs se encaixa

  • Sem troca de modos — você pode digitar desde o momento em que inicia
  • Você o opera com combinações de teclas Ctrl / Alt
  • Você pode adicionar recursos infinitos com sua linguagem de configuração (Lisp)

Se encaixa para pessoas que querem construir uma ferramenta verdadeiramente sua. Para correções rápidas, porém, nano é geralmente mais prático, e para edição rápida, vim.

5. O que é VS Code?

Conclusão: VS Code é um editor GUI que você opera intuitivamente com mouse e menus. Com completion rico, busca e extensões, é o mais adequado para desenvolvimento sério.

Lina: Ouço falar muito em VS Code. O que o torna diferente?
Veterano Linny: Diferente dos outros três, VS Code é um editor GUI que abre em uma janela. Você pode clicar com o mouse, e parece colorido e fácil de ler.
Lina: Então o VS Code não é o mais fácil de todos?
Veterano Linny: Para desenvolver no seu próprio computador, sim. Seu completion é inteligente, e destaca erros em cor. Instale extensões e você obtém ajuda específica para cada linguagem também.
Lina: Parece que só tem vantagens!
Veterano Linny: Mas tem uma fraqueza. VS Code basicamente precisa de uma GUI, então não vai rodar como está em um servidor acessado via SSH (uma extensão "remote" pode cobrir isso, mas requer configuração extra). É exatamente por isso que vale conhecer nano e vim também.

Você também pode abrir o VS Code pelo terminal. Para abrir toda a pasta atual, use este comando.

code .

Quando VS Code se encaixa

  • Desenvolvendo um app que abrange múltiplos arquivos, no seu PC local
  • Querendo completion, depuração e integração com Git em uma única tela
  • Ainda não confortável com edição por linha de comando, preferindo o mouse

Veja Configurando Linux para Desenvolvedores para como construir um ambiente de desenvolvimento.

6. Então Qual Você Deveria Escolher?

Conclusão: Comece com nano para experimentar "consigo consertar isso," depois aprenda o mínimo do vim, e use VS Code para desenvolvimento sério. Explore emacs quando e se te interessar.

Lina: Entendo os tipos agora. Mas o que eu deveria usar primeiro?
Veterano Linny: Como iniciante, começar com nano é minha recomendação. Como os comandos são mostrados na tela, você pode construir com segurança a experiência de editar um arquivo e salvar.
Lina: vim e emacs podem esperar?
Veterano Linny: Apenas aprenda o mínimo do vim — abrir, editar, salvar, sair — com antecedência, para estar bem se o vim abrir inesperadamente em um servidor. Quando você começar a escrever código seriamente, mude para VS Code. Esse caminho passo a passo é mais que suficiente.
Editor Tipo Curva de aprendizado Melhor para
nano CUI Baixa Pequenas edições no servidor / primeiro editor de iniciante
vim CUI Alta Edição rápida apenas com teclado / administração de servidores
emacs CUI Alta Construindo seu próprio espaço de trabalho integrado
VS Code GUI Média Desenvolvimento local sério de apps

Como escolher quando em dúvida

  • Só precisa consertar algo → nano
  • vim abriu em um servidor → lembre-se Esc:wq
  • Desenvolvendo localmente → VS Code
  • Quer construir sua ferramenta → mergulhe em emacs / vim

Editores são intercambiáveis. Não pense demais no primeiro — aprenda o próximo quando precisar.

Resumo

  • Os editores evoluíram para trabalhos diferentes. Escolha por "quando uso qual," não "qual é o melhor."
  • nano mostra seus comandos na tela — ideal como primeiro editor de um iniciante
  • vim tem modos e é rápido. Aprenda pelo menos Esc:wq para escapar
  • emacs tem extensibilidade inigualável, mas muito a aprender
  • VS Code é GUI e ótimo para desenvolvimento sério, mas você ainda precisa de editores CUI em servidores
  • Uma ordem realista: nano primeiro, depois o mínimo do vim, depois VS Code para trabalho sério

Próximas Leituras