Недавно я начал использовать Vim в качестве текстового редактора, и в настоящее время я работаю над собственными настройками.
Я полагаю, что сопоставления клавиатуры могут делать почти что угодно, но на данный момент я использую их как своего рода набор фрагментов почти исключительно.
Итак, например, если я набираю def{TAB}
(:imap def{TAB} def ():<ESC>3ha
), он расширяется до:
def |(): # '|' represents the caret
Это работает так, как ожидалось, но я нахожу это раздражающим, когда Vim ждет полную команду, пока я набираю слово, содержащее "def", и я не заинтересован в его расширении.
- Есть ли способ избежать этого или использовать эту функцию более эффективно с этой целью?
- Является ли какая-либо другая функция Vim более подходящей для этого?
После быстрого просмотра SnippetsEmu, это выглядит как лучший вариант и намного проще настроить, чем я думал.
Чтобы продолжить с предыдущего примера:
:Snippet def <{}>():
После определения вы можете расширить свой фрагмент, набрав def{TAB}
.