2015-02-25 4 views
0

Я использую vim для программирования, и использую утилиту snipMate. Я знаю об определении основных сниппетов, но я пытаюсь сделать что-то вроде следующего (это не работает):Переменные в определении snipMate, возможно ли это? (vim)

snippet ${1}_. 
    <$1 class="${2}">${3}</$1> 

Я думаю, что было бы проще объяснить на примере. То, что я пытаюсь сделать, это вставить HTML тег при вводе слова с последующим _.:

Так что, если я типа div_. и нажмите вкладку, он должен измениться:

<div class="(position of cursor)">(position of cursor)</div> 

Если я печатаю span_. и нажмите на нее, она должна измениться на:

<span class="(position of cursor)">(position of cursor)</span> 

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

Спасибо!

ответ

1

сделать сниппет делать тяжелую работу за вас:

snippet tag 
    <${1:div} class="${2}">${3}</$1> 

Вы также можете взглянуть на emmet-vim и surround.vim.

+0

Хотя это не совсем то, чего я хотел достичь, это довольно хороший способ обхода проблемы. Я не собираюсь принимать ваш ответ только на случай, если кто-то придет с идеальным решением. Я взглянул на surround.vim и довольно интересный полезный инструмент! Благодаря! – JLeon