Как на самом деле использовать значение аргумента для функции Vim? - PullRequest
3 голосов
/ 09 июля 2009

Я пытаюсь написать простую функцию Vim, которая принимает имя файла в качестве аргумента и читает содержимое этого файла в текущий документ (связанный с этим вопросом ).

Вот мой первый удар:

fun! Tpl(tplfile)
  r c:\tpl\a:tplfile
endfun

Это просто дает мне следующую ошибку:

E484: Не удается открыть файл c: \ tpl \ a: tplfile

Как заставить функцию фактически использовать значение аргумента tplfile?

1 Ответ

6 голосов
/ 09 июля 2009

Заменить строку на:

exe 'r c:\tpl\' . a:tplfile

a: tplfile является строковой переменной, поэтому, чтобы включить ее в команду, вам нужно объединить весь лот в одну строку (с помощью оператора .), а затем использовать exe для запуска команды * 1005. *

:help exe

В связанной заметке (и бесстыдном плагине), если вы пытаетесь добавить шаблоны (как подразумевается в сообщении, на которое вы ссылались), мой плагин file templates *1009* имеет команду AddTemplate добавьте шаблон из вашего каталога vimfiles / templates в текущую позицию курсора. Тем не менее, документация в настоящее время довольно скудная, поэтому, если вы решите использовать ее и у вас возникнут какие-либо трудности, не стесняйтесь, напишите мне по электронной почте на адрес моего сайта.

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