Советы по написанию функции vim для установки заголовка принтера - PullRequest
0 голосов
/ 07 февраля 2020

Я знаю, что могу использовать :set printerheader=%-%This\ is\ a\ file, чтобы установить строку в качестве заголовка принтера. Моя цель - сделать функцию, которая могла бы работать следующим образом :Title This is a file

До сих пор я пытался сделать это так

command! -nargs=+ Title call s:setTitle(<f-args>)
function! s:setTitle(...)
        let command = ":set printheader=%-%"+string(a:000)
        execute command
endfunction```

1 Ответ

2 голосов
/ 07 февраля 2020
  • Вы можете использовать опции как переменные, добавив к ним префикс амперсанда: set foo=bar эквивалентно let &foo="bar"
  • Вам не нужно экранировать пробелы в обычных строках
  • Когда -nargs=1, (единственный) аргумент может содержать пробелы

Итак:

command! -nargs=1 Title let &printheader="%-%<args>"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...