#vim #snipmate
#vim #snipmate
Вопрос:
Как я могу вставить литерал $1
во фрагмент, используя snipMate? Я не смог найти эту информацию в руководстве…
Ни к чему не приводит (пытается найти заполнитель):
snippet s
$1
Результат $
только:
snippet s
$$1
Ответ №1:
Я нашел обходной путь. Используйте $${0:1}
. snipMate не интерпретирует $ {0}, но, похоже, вместо этого вставляет текст по умолчанию.
Комментарии:
1. Ах! Большое спасибо, мистер Питерсон. Очень умно.
Ответ №2:
В принципе, вы не можете. Ближайшим обходным путем является использование текста по умолчанию:
snippet s
$${1:1}
Для этого необходимо один раз нажать tab.
Эта проблема указана в snipMate — и существует уже два года, поэтому я бы не стал затаивать дыхание, ожидая, пока она будет исправлена.
Комментарии:
1. Я надеюсь, вы простите меня, но я решил изменить правильную отметку на @Adam H. Peterson, который нашел решение через несколько месяцев после публикации этого вопроса. Я подумал, что вам было бы интересно узнать и это; для меня это особенно важно в makefiles.
Ответ №3:
В настоящее время я нахожусь в рекламном туре для UltiSnips на StackOverflow. UltiSnips поддерживают экранирование символов, соответствующий фрагмент выглядит следующим образом:
snippet s
$1
endsnippet
Скрипт преобразования для фрагментов snipMate поставляется с UltiSnips, поэтому переключение выполняется легко.