VIM: вставьте пустые теги ERB
Как я могу вставить пустые теги ERB и поместить курсор внутри него? Это похоже на окружение плагином объемного звучания, но окружать нечего.
Например, из этого:
bla|bla
Я хочу получить это:
bla<%= | %>bla
2 ответа
Я бы использовал плагин Тима Попа для достижения этой цели.
Добавьте следующее к вам ~/.vim/after/ftplugin/erb.vim
let b:surround_{char2nr('=')} = "<%= \r %>"
let b:surround_{char2nr('-')} = "<% \r %>"
Теперь, когда вы нажимаете <c-s>=
это будет вставить <%= | %>
как ты и хотел.
Возможно, вы также захотите взглянуть на плагин Tim Pope's ragtag, в который уже включены такие сопоставления.
Чтобы вставить предопределенный блок текста, вы должны взглянуть на Snipmate. Он вставит код и поместит курсор в предопределенную позицию.
Я не уверен, что ERB поддерживается, но очень легко добавить свои собственные фрагменты.
Например, что-то вроде:
snippet ta
<%= ${1} %>
в erb.snippets следует вставить текст при наборе текста ta
Тем не менее, вы можете найти множество фрагментов для Snipmate онлайн.
Например, https://github.com/scrooloose/snipmate-snippets содержит множество предопределенных фрагментов.
Смотрите предыдущий ответ о том, как их установить.