Vim - como executar uma linha do texto no terminal

Publicado por Fábio Berbert de Paula em 13/01/2022

[ Hits: 5.830 ]

Blog: https://fabio.automatizando.dev

 


Vim - como executar uma linha do texto no terminal



Para executar um comando de terminal no Vim a sintaxe é:

:!{comando}

Agora suponha que exista um comando no seu texto e você queira executá-lo no terminal. Neste caso posicione o cursor na linha de texto a ser executada e digite o comando:

:.w !bash

Também é possível executar todo o arquivo de texto usando a sintaxe:

:%w !bash

Nos exemplos acima:
  • .w equivale ao conteúdo da linha corrente;
  • %w equivale a todo o texto do arquivo aberto.

O que significa que nos comandos acima o Vim estará enviando a linha corrente ou todo o arquivo para ser executado em uma instância do bash.

Uma dica de automação é acrescentar a seguinte linha ao teu .vimrc:

nnoremap ex :.w!bash

Daí basta levar o cursor até a linha/comando desejado e teclar "ex".

Muito útil quando a gente está lendo um tutorial no Vim e quer executar determinado comando descrito no texto.

Referência: Is there a way to send your current line to the command line? : vim

Outras dicas deste autor

Manipulando data e hora em Python com timedelta

KDE - Alt + F2 para executar comandos parou de funcionar [Resolvido]

Apagando linhas em branco no vim

Atalho Alt+F2 ou Alt+Espaço parou de funcionar no KDE Plasma [Resolvido]

O que é samba

Leitura recomendada

Vim - como criar arquivo ou diretório pelo NERDTree

Como editar arquivos remotos usando o Vim

Navegação fácil no Vim - encontrar próximo e anterior

Instalar o VIM 9.1 no Debian 12

Vim - fazer JOIN de múltiplas linhas

  

Comentários
[1] Comentário enviado por maurixnovatrento em 25/01/2022 - 22:02h


Top.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts