Como eu aprendo EFETIVAMENTE a usar o VIM / Codar direto no terminal?
Um salve a todos os DEV de plantão em pleno Domingão!
Decidi abrir esse tópico aqui sobre codar sem usar mouse pois acredito que onde eu quero chegar, não seja possível encontrar informações somente em um lugar só.
Eu estou a um tempo querendo uma alternativa ao mouse. Sei que a cada dia que passa, nossas aplicações se tornam mais amigáveis à setinha / touchscreen. Porém, tenho sentido que muitos softwares me apresentam uma interface cheia de funcionalidades que MUITAS VEZES EU NÃO PRECISO.
No meu trabalho, é importante o uso de uma IDE, pois facilita para que outra pessoa também te ajude a analisar seu código. Mas a cada dia que passa, me sinto mais aborrecido com IDEs que travam, com a mira da setinha do mouse em ícones pequenos que mais machuca sua mão do que traz eficiencia (fora as constantes mudanças entre teclado e mouse que dói o braço)
Porém, a longo prazo eu não quero depender de uma interface idiota para ser programador. E assim surgem as seguintes dúvidas que eu gostaria da ajuda de vcs:
-
Eu consigo através do terminal / VIM, ser tão rápido e eficiente quanto o uso de IDEs? E a que custo? Quanto tempo leva e existe algo que eu certamente nunca vou conseguir fazer usando só o teclado?
-
Onde eu acho material completo e com métodos de qualidade disso? Os tutoriais que eu acho geralmente são comandos básicos e não é falado sobre algum método de treino
-
Existem muitas configurações que eu preciso fazer no terminal antes de começar a usar? Existem conjuntos de funcionalidades que podem ser baixadas de uma vez e que não precise quase programar uma IDE nova no VIM para ficar de um jeito confortável?
Resumindo, a pergunta principal é: Só eu sou aborrecido com essas coisas ou já existe uma comunidade inteira de "Devs raiz" que já resolveram esses problemas??
Agradeço qualquer sugestão de quem já faz isso a bastante tempo e vamos juntos construir uma comunidade cada vez melhor
Eae, Spike, tudo bem ? Vamos lá!
- Primeiramente, sim você consegue ser muito rápido e eficiente em relação as IDEs usando o Vim por exemplo. Tudo depende de como você vai encarar a situação e o que isso significa pra você. O tempo eu diria que vai de cada um, mas é fato que você vai sofrer um tempo de adaptação. O Vim é gigante e tem muitas motions que você pode aprender bem mais pra frente, quando já estiver bem habituado com o editor. Eu recomendo você instalar uma extensão do vim no vsCode (caso seja seu editor atual), com essa extensão você vai praticar o básico do Vim, e de seus comandos, mas ao mesmo tempo vai ter o mouse contigo o tempo inteiro caso fique perdido. Se você começar a se adaptar, ai eu faria uma mudança definitiva para o editor no terminal.
- Segundamente, sobre conteudo é realmente difícil, cada lugar fala de uma forma diferente e pode acabar te confundindo muito. O que eu de fato recomendo é a playlsit no youtube do ThePrimeagen Vim as Your Editor. Elá está em inglês mas aborda TUDO que você vai precisar. Desde os comandos básicos até os mais avançados e até um vídeo para configurar o seu NeoVim do zero. Aleḿ disso o Primeagen fez um plugin próprio para você treinar no editor, uma espécie de game. O vídeo é em inglês, mas talvez uma legenda e paciência te ajudem a entender.
- Tem coisas básicas e simples que você pode configurar que não vão te tomar muito tempo mas vai deixar seu Vim razoavelmente bom pra programar. Alías quanto mais coisas você colcoar mais perdido vai ficar caso ainda não esteja totalmente habituado com o Vim, por isso a dica de começar pelo vscode com extensão provavelmente vai te ajudar bastante!
A pergunta que eu deixo pra você é, você realmente precisa disso ? Você acha seu tempo de escrita e suas distrações motivos suficientes para trocar o estilo de edição ? Lembre-se, seja primeiro um programador eficiente e bom independente do ambiente em que esteja usando, depois se preocupe em otimizar isso através dessas ferramentas! Espero que tenha te ajudado, um abraço!
Para aprender efetivamente, deves instalar, imprimir algum cheat sheet para deixar ao lado do teclado e sair escrevendo os teus programas. Não sei qual o editor que usas, nem a linguagem nem o sistema operacional. Acho que consegues algo interessante em spacevim
Mas parece que estás com uma ideia equivocada sobre desenvolvimento. Em primeiro lugar, qualquer editor possui uma grande quantidade de atalhos que evitam o processo de retirar a mão do teclado, pegar o mouse, selecionar a opção desejada e clicar. Supondo que seja o VSCode quantos desses atalhos usas ou conheces? Outro editor? É só procurar na internet algo como seu-editor shortcuts cheat sheet
. O teu problema de uso do mouse vai diminuir substancialmente.
Bom programadores usam ferramentas diversas, isto é, as que eles se sentem mais a vontade. Por exemplo, só para citar dois, o Matz (desenvolvedor do Ruby) usa Emacs. O 'Ginger' Bill (desenvolvedor de Odin) usa Sublime. Eu (já citei os dois então não sou o terceiro ;-D) uso o Emacs mas, se for desenvolver GUI em FreePascal nem penso em usar outra coisa que não seja o Lazarus (seria uma péssima decisão escolher qualquer outra IDE).