.vimrc auto команда для добавления текста при открытии нового файла - PullRequest
0 голосов
/ 14 мая 2018

Нужно добавить команду auto в мой .vimrc, который автоматически вставляет текст в первую строку, это будет мой шебанг. Я хочу сделать это без перенаправления в текстовый файл скелета.

Я видел этот вопрос ранее, но, похоже, решение всегда заключается в создании скелетного текстового файла и извлечении из него. Это кажется слишком сложным, учитывая, что я не ищу полный заголовок.

Я не могу понять, почему это не сработает:

autocmd BufNewFile * let line = "#!/usr/bin/env" . (empty(&filetype) ? '' : ' '.&filetype)

Также попробовал вариант:

autocmd BufNewFile *.* let line = "#!/usr/bin/env" . (empty(&filetype) ? '' : ' '.&filetype)

1 Ответ

0 голосов
/ 14 мая 2018

Вы можете использовать подстановку в первой строке:

autocmd BufNewFile * let ftype = &ft | execute 'silent! 1s:.*:#!/usr/bin/env ' . ftype

Поскольку шебанги используются в интерпретируемых языках, вы можете заменить BufNewFile * на BufNewFile *.sh,*.perl,*.py.Это предотвращает использование шебангов на таких языках, как C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...