Ответ 1
Найден ответ благодаря пользователю в списке рассылки vim:
:let @a = system("ls -l")
Чтобы запустить команду с файлом под курсором в качестве аргумента:
:let @a = system("ls -l " . shellescape(expand('<cfile>')))
Можно ли запустить внешнюю команду и сохранить ее вывод в регистре?
:redir
работает для команд ex, а не для внешних команд (afaik):r !
запускает внешнюю команду, но напрямую вставляет вывод в текущий буферНайден ответ благодаря пользователю в списке рассылки vim:
:let @a = system("ls -l")
Чтобы запустить команду с файлом под курсором в качестве аргумента:
:let @a = system("ls -l " . shellescape(expand('<cfile>')))