ярлык vim snipmate для вставки снипп внутри вкладки - PullRequest
1 голос
/ 25 января 2012

Я использовал Vim с плагином snipMate для создания HTML-кода.Это код, который я хочу набрать быстро:

<ul>
    <li><a href="this.html">that</a></li>
</ul>

Поэтому я начинаю в режиме вставки, набирая ul Tab li Tab , но затем, когда япопробуйте набрать a tab , чтобы создать фрагмент ссылки, который не работает, он перемещается в конец строки (что говорит фрагмент кода).

У меня естьпопытался выйти из фрагмента, нажав Esc , но как только я вхожу в режим вставки, Tab по-прежнему выводит меня в конец строки.В настоящее время лучший способ заставить его работать, это принять Tab до конца строки, переместиться назад и вставить.Является ли этот метод наиболее эффективным способом сделать это?Как избежать экранирования?

У меня также есть следующий фрагмент для a in html.snippets

snippet a
    <a href="${1:#}">${2:$1}</a>${3}

Нажатие a Tab ставит меня послеhref=" и я набираю this.html, фрагмент помещает this.html перед </a>.Когда я нажимаю Tab , а затем хочу набрать через секунду this.html (как в TextMate), и поэтому я набираю that, но он оставляет thathis.html?

Ответы [ 2 ]

2 голосов
/ 25 января 2012

Snipmate не поддерживает вложенные фрагменты.Я предлагаю вам попробовать UltiSnips .

1 голос
/ 25 января 2012

Я думаю, что вы можете просто после:

snippet a
    <a href="${1:#}">${2}</a>${3}

Кроме того, если курсор, перемещающийся в конец строки, раздражает, пропустите ${3} или если вы хотите отредактировать содержимое тега задним числом (после перемещения в конец строки), используйте c i t ( изменить внутренний тег )

...