Anexar saída bash ao buffer vim

7

Podemos executar o comando bash do vim assim:

:! shuf -i1-123124 -n1

que gera um número aleatório no intervalo especificado. Existe uma maneira de anexar a saída ao buffer vim?

St.Antario
fonte

Respostas:

9

:read ! shuf -i1-123124 -n1 Anexar leitura antes do comando o envia para o buffer atual

Ashok Arora
fonte
8

Você pode usar a filtragem através de um programa externo. Isso não é o mesmo que acrescentar. No caso mais simples, você pode substituir a linha atual pela saída de shuf.

Por exemplo, no modo normal, digite !!e, em seguida shuf -i1-123124 -n1. Isso substituirá a linha atual pela saída de shuf.

Como alternativa, você pode substituir uma linha específica pela saída de shufwith:

:123!shuf -i1-123124 -n1

Onde 123 é a linha que você deseja substituir.

Para mais detalhes e operações similares, consulte :help !!.

janos
fonte
11
Em vez de 123você também pode usar .para se referir à linha atual ou $à última linha. Veja :help range.
Martin Tournoij
4

:.! shuf -i1-123124 -n1 (com um ponto) executa o truque substituindo a linha atual.

:r! shuf -i1-123124 -n1 cria uma nova linha na posição do cursor.

omisson
fonte