Вопрос

Я пытаюсь автоматизировать заголовки комментариев файлов. Я застрял, пытаясь выяснить, как вставить результат результата uuidgen Команда в мой заголовок, используя Autocmd Vim.

Внутри заголовка текст заполнителя присутствует, как это:

#ifndef _UUID_
#define _UUID_

// Code goes here!

#endif // _UUID_

Линия AutoCMD для заполнения _UUID_ в .VIMRC:

autocmd bufnewfile *.h exe "1,$s/_UUID_/" . r!uuidgen ."/g"

Проблема входит под r! Uuidgen. Как вставить результат Shell-Command-выполнения в виде текста в линии AutoSmd? Или в команде подстановки VI для этого вопроса?

Это было полезно?

Решение

Используйте систему () и не забудьте Comp результат -> matchstr(system('uuidgen'), "[^\n\r]*")

NB: Для более сложных шаблонов вы можете использовать решения, такие как шаблон. Отказ Например, в C-Header.template, вам пришлось бы изменить ценность s:guard к вызовам на Matchtr () + System ().

Другие советы

Моя результирующая линия Autocmd после предложения Люка было, для потомства ради:

autocmd bufnewfile *.h exe "1,$g/_UUID_/s/_UUID_/" . matchstr(system('uuidgen'), "[^\n\r]*")
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top