Если я нахожусь в Vim и хочу получить некоторый вывод от командной строки и прикрепить его на мой текущий файл, я могу выполнить это:
:! echo "foo" >> %
Это добавит "нечто" в мой текущий файл, и я должен буду перезагрузить.
Существует ли более изящный способ сделать, это - имеет тот вывод, входят в буфер, который я могу вставить, например?
Да:
:r !echo "foo"
Посмотрите
:help :r!
Это вставит вывод команды после текущей строки. Если Вы хотите получить вывод команды в регистр, который можно вставить, можно сделать это:
:let @a = system('echo "foo"')
Теперь вывод команды (включая запаздывающую новую строку) находится в регистре a
. Посмотрите
:help let-@
:help system()