Como Turbinar sua Produtividade com VIM - Guia Definitivo do Desenvolvedor
Vamos transformar o VIM em uma IDE à la Visual Studio Code, combinando o que há de melhor entre os dois mundos. No final teremos um "juggernaut" VIM, pronto para turbinar sua produtividade em definitivo como desenvolvedor.
[ Hits: 21.095 ]
Por: Fábio Berbert de Paula em 28/07/2020 | Blog: https://mestrefabio.com
emmet-vim - expansão inteligente
O
emmet-vim é a princesa dos meus olhos. Esse plugin é indispensável para seu aumento de produtividade. Para abordar seu uso seria necessário um artigo somente para ele, mas vou tentar fazer um resumo bacana sobre as coisas que ele é capaz de fazer...
Entre na pasta "start":
cd $HOME/.vim/pack/git-plugins/start
ou
C:>
cd $HOME\vimfiles\pack\git-plugins\start
e clone o seguinte repositório:
git clone https://github.com/mattn/emmet-vim
A tecla de atalho do emmet é:
Ctrl + y + ,
Alguns exemplos de uso do emmet:
Digite:
html:5
em seguida:
ctrl + y + ,
A abreviatura de html:5 será convertida em:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
Outro exemplo, dado o seguinte texto:
item 1
item 2
item 3
item 4
item 5
Selecione as linhas acima, tecle "ctrl + y + ," e em seguida digite:
ul>li*
o resultado será:
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
<li>item 4</li>
<li>item 5</li>
</ul>
Você também pode abraçar um bloco de código com uma tag. Selecione o texto desejado no modo visual, tecle "ctrl + y + ," e digite a tag desejada.
Outro exemplo mais sofisticado. Digite:
div.container>div#content>p*3>em>
Posicione o cursor ao final da linha anterior e tecle:
ctrl + y + ,
Resultado:
<div class="container">
<div id="content">
<p><em></em></p>
<p><em></em></p>
<p><em></em></p>
</div>
</div>
Página anterior Próxima página
Páginas do artigo
1.
Introdução
2.
Primeiras configurações no .vimrc e instalação de plugins
3.
Plugins de aprimoramento visual
4.
Explorador de arquivos NERDTREE
5.
Barra de status com vim-airline
6.
Abrir arquivos com "Ctrl + p" à la Visual Studio Code
7.
Comentários automáticos com nerdcommenter
8. emmet-vim - expansão inteligente
9.
vim-ale - análise de código
10.
vim-polyglot - syntax highlight avançado
11.
coc.nvim - Intellisense para Vim
12.
vimrc completo
13.
Conclusão
Outros artigos deste autor
Zello - Transforme seu Android (e GNU/Linux) num Walkie Talkie
Kdenlive - Como desfocar/borrar rosto, área ou objetos em um vídeo
Filtros do Instagram no Gimp
Como criar VIEWS no MySQL
Como fazer publicações pelo Instagram Web
Leitura recomendada
Utilização do Vim para iniciantes
Utilizando o Buffer de Gravação no Editor Vim
GitHub Copilot - Inteligência Artificial no NeoVim
Como preparar o Vim/Neovim para corrigir ortografia em português
Compilação e instalação do Vim e habilitando a copiar e colar com o mouse
Comentários
Muito bom! Estava esperando esse artigo!
Eu também. Muito bom.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Eu também. Muito bom.
___________________________________
Conhecimento não se Leva para o Túmulo.
Rapaz, isso não é um mero artigo: É basicamente um curso completo. Muito bom! Congratulações.
Mensagem
Rapaz, isso não é um mero artigo: É basicamente um curso completo. Muito bom! Congratulações.
Eu programo com o Vim há um ano, vou salvar este artigo pra depois :P
Mensagem
Eu programo com o Vim há um ano, vou salvar este artigo pra depois :P
Não tá pegando o syntax on.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Não tá pegando o syntax on.
___________________________________
Conhecimento não se Leva para o Túmulo.
A minha versão é mais atual e mesmo assim tô tendo problemas. Vou ter que compilar?
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
A minha versão é mais atual e mesmo assim tô tendo problemas. Vou ter que compilar?
___________________________________
Conhecimento não se Leva para o Túmulo.
[5] Comentário enviado por mauricio123 em 30/07/2020 - 22:08h
Não tá pegando o syntax on.
___________________________________
Conhecimento não se Leva para o Túmulo.
Tem o "vi" e o "vim". O syntax funciona no vim (vi improved).
Mensagem
[quote]
[5] Comentário enviado por mauricio123 em 30/07/2020 - 22:08h
Não tá pegando o syntax on.
___________________________________
Conhecimento não se Leva para o Túmulo.
[/quote]
Tem o "vi" e o "vim". O syntax funciona no vim (vi improved).
Sim era com o vim que eu testei. Mas, resolvi. Desinstalei a versão do mint e compilei a versão mais atual 8.2, aí sim funcionou. Agora tá indo as coisas.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Sim era com o vim que eu testei. Mas, resolvi. Desinstalei a versão do mint e compilei a versão mais atual 8.2, aí sim funcionou. Agora tá indo as coisas.
___________________________________
Conhecimento não se Leva para o Túmulo.
[8] Comentário enviado por mauricio123 em 31/07/2020 - 00:24h
Sim era com o vim que eu testei. Mas, resolvi. Desinstalei a versão do mint e compilei a versão mais atual 8.2, aí sim funcionou. Agora tá indo as coisas.
___________________________________
Conhecimento não se Leva para o Túmulo.
Estranho... uso o vim dos repositórios do mint e aqui funcionou 100%...
Mensagem
[quote]
[8] Comentário enviado por mauricio123 em 31/07/2020 - 00:24h
Sim era com o vim que eu testei. Mas, resolvi. Desinstalei a versão do mint e compilei a versão mais atual 8.2, aí sim funcionou. Agora tá indo as coisas.
___________________________________
Conhecimento não se Leva para o Túmulo.
[/quote]
Estranho... uso o vim dos repositórios do mint e aqui funcionou 100%...
Usei o mesmo vimrc pra garantir que não era erro. Talvez você instalou algo a mais no vim e que eu não instalei.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Usei o mesmo vimrc pra garantir que não era erro. Talvez você instalou algo a mais no vim e que eu não instalei.
___________________________________
Conhecimento não se Leva para o Túmulo.
Porém, me serviu de aprendizado. Compilei o vim e vou guardá-lo no git.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Porém, me serviu de aprendizado. Compilei o vim e vou guardá-lo no git.
___________________________________
Conhecimento não se Leva para o Túmulo.
[10] Comentário enviado por mauricio123 em 31/07/2020 - 08:59h
Usei o mesmo vimrc pra garantir que não era erro. Talvez você instalou algo a mais no vim e que eu não instalei.
___________________________________
Conhecimento não se Leva para o Túmulo.
Tenho esses packages instalados:
% dpkg -l | grep vim | awk '{ print $2}'
vim
vim-addon-manager
vim-common
vim-nox
vim-runtime
vim-tiny
Mensagem
[quote]
[10] Comentário enviado por mauricio123 em 31/07/2020 - 08:59h
Usei o mesmo vimrc pra garantir que não era erro. Talvez você instalou algo a mais no vim e que eu não instalei.
___________________________________
Conhecimento não se Leva para o Túmulo.
[/quote]
Tenho esses packages instalados:
% dpkg -l | grep vim | awk '{ print $2}'
vim
vim-addon-manager
vim-common
vim-nox
vim-runtime
vim-tiny
Eu não tinha tudo isso. O meu tá assim, já que eu gerei o pacote deb. Deve ter tudo isso integrado na minha compilação.
dpkg -l | grep vim | awk '{ print $2}'
vim
Até prefiro assim, é melhor pra gerenciar.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Eu não tinha tudo isso. O meu tá assim, já que eu gerei o pacote deb. Deve ter tudo isso integrado na minha compilação.
dpkg -l | grep vim | awk '{ print $2}'
vim
Até prefiro assim, é melhor pra gerenciar.
___________________________________
Conhecimento não se Leva para o Túmulo.
Nossa. o coc pediu o node.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Nossa. o coc pediu o node.
___________________________________
Conhecimento não se Leva para o Túmulo.
Quem vai usar o vim no Mint instale o nodejs.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Quem vai usar o vim no Mint instale o nodejs.
___________________________________
Conhecimento não se Leva para o Túmulo.
[15] Comentário enviado por mauricio123 em 31/07/2020 - 10:25h
Quem vai usar o vim no Mint instale o nodejs.
___________________________________
Conhecimento não se Leva para o Túmulo.
Isso para o coc.nvim
Mensagem
[quote]
[15] Comentário enviado por mauricio123 em 31/07/2020 - 10:25h
Quem vai usar o vim no Mint instale o nodejs.
___________________________________
Conhecimento não se Leva para o Túmulo.
[/quote]
Isso para o coc.nvim
Para o nodejs também vai precisar do npm.
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Para o nodejs também vai precisar do npm.
___________________________________
Conhecimento não se Leva para o Túmulo.
Maurício, precisa do pacote vim-tiny. Por isso não tinha nem o syntax.
Mensagem
Maurício, precisa do pacote vim-tiny. Por isso não tinha nem o syntax.
[18] Comentário enviado por fabio em 31/07/2020 - 13:37h
Maurício, precisa do pacote vim-tiny. Por isso não tinha nem o syntax.
Beleza, fica como dica para quem for seguir o tutorial, porque agora já tá compilado e configurado e funcionando. Só to apanhando do jedi-language-server, só porque não quero usar o pip. Sei i nome do pacote em deb, mas tá na versão 0.15 e o que precisa é a 0.19 pra cima. Aí complica.
Mensagem
[quote]
[18] Comentário enviado por fabio em 31/07/2020 - 13:37h
Maurício, precisa do pacote vim-tiny. Por isso não tinha nem o syntax.
[/quote]
Beleza, fica como dica para quem for seguir o tutorial, porque agora já tá compilado e configurado e funcionando. Só to apanhando do jedi-language-server, só porque não quero usar o pip. Sei i nome do pacote em deb, mas tá na versão 0.15 e o que precisa é a 0.19 pra cima. Aí complica.
Outra coisa, tem plugin ctrl+z?
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Outra coisa, tem plugin ctrl+z?
___________________________________
Conhecimento não se Leva para o Túmulo.
E o terminal integrado?
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
E o terminal integrado?
___________________________________
Conhecimento não se Leva para o Túmulo.
Mensagem
Pergunta: Você recomenta criar um vimrc monolítico ou modular?
Esse aqui é o meu https://github.com/realdanilomarto/vimrc.git
Acho que depende do tamanho do seu vimrc. E isso é algo bem pessoal também. Meu vimrc é monolítico, exceto pelo coc.nvimrc que está em arquivo separado. Gostei da organização do teu.
Mensagem
[quote]
[22] Comentário enviado por realdanilomarto em 02/08/2020 - 15:06h
Pergunta: Você recomenta criar um vimrc monolítico ou modular?
Esse aqui é o meu https://github.com/realdanilomarto/vimrc.git
[/quote]
Acho que depende do tamanho do seu vimrc. E isso é algo bem pessoal também. Meu vimrc é monolítico, exceto pelo coc.nvimrc que está em arquivo separado. Gostei da organização do teu.
artigo incrível, mas mesmo assim prefiro usar o nano
mas quem sabe um dia eu acabo me interessando em usar o vim né
~mudei pro lubuntu, TÁ EM SHOCK? mas o debian continua em meu coração UwU
Mensagem
artigo incrível, mas mesmo assim prefiro usar o nano
mas quem sabe um dia eu acabo me interessando em usar o vim né
~mudei pro lubuntu, TÁ EM SHOCK? mas o debian continua em meu coração UwU
O artigo que faltava! Muito bom!
Mensagem
O artigo que faltava! Muito bom!
Contribuir com comentário
Enviar