В Vim, что изящный путь состоит в том, чтобы захватить вывод от командной строки?

Если я нахожусь в Vim и хочу получить некоторый вывод от командной строки и прикрепить его на мой текущий файл, я могу выполнить это:

:! echo "foo" >> %

Это добавит "нечто" в мой текущий файл, и я должен буду перезагрузить.

Существует ли более изящный способ сделать, это - имеет тот вывод, входят в буфер, который я могу вставить, например?

14
задан 01.03.2011, 22:41

1 ответ

Да:

:r !echo "foo"

Посмотрите

:help :r!

Это вставит вывод команды после текущей строки. Если Вы хотите получить вывод команды в регистр, который можно вставить, можно сделать это:

:let @a = system('echo "foo"')

Теперь вывод команды (включая запаздывающую новую строку) находится в регистре a. Посмотрите

:help let-@
:help system()
24
ответ дан 07.12.2019, 11:16

Теги

Похожие вопросы