2013-02-25 2 views
1

Я использую snipmate плагин с vim. Как я могу написать какие-либо команды в фрагменте snipmate, который я мог бы написать в .vimrc? Как <ESC>, <leader>, <cr> и так далее ...vim команды в snipmate snippet

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

В принципе я хотел бы что-то вроде этого, но это не будет работать должным образом:

snippet pdb 
    import pdb; pdb.set_trace()<ESC> 

Это будет просто добавить '<ESC>' в конце, но я хочу, чтобы вернуться в нормальный режим вместо. Это возможно?

+0

Почему бы просто не написать макрос? http://www.thegeekstuff.com/2009/01/vi-and-vim-macro-tutorial-how-to-record-and-play/ – GoingTharn

ответ

2

snipMate фрагменты, как встроенный в :abbreviate на стероидах, как правило, с параметром вставках, зеркальное отображение, а также несколько остановок внутри них. Оказывается, что вам не нужно все это расширенные функциональные возможности здесь, так что вместо этого вы бы лучше с простой вставкой режима аббревиатуры, где вы действительно можете использовать Vim ключ-обозначения:

:ia pdb import pdb; pdb.set_trace()<ESC> 

С самого snipMate , оставляя режим вставки невозможным.

Смежные вопросы