I just messed around with Sublime a bit and came up with an even easier quick fix for you, Esseb.
Right now, Sublime
does cancel the fields if you leave the "area" of the inserted snippet. Unfortunately, this doesn't help much because you'll usually be adding things *inside* the snippet area the next time you try and hit "tab", and this will have very weird behavior.
So I have a quick fix to make Sublime behave the way I talked about, which is that any time you use the up or down arrow keys, all the fields will be cancelled.
Just add the following lines to your User Key Bindings file, and that will do the trick:
- Code: Select all
<binding key="down" command="sequence 'clearFields' 'move lines 1'">
<context name="hasPrevField" value="true"/>
</binding>
<binding key="up" command="sequence 'clearFields' 'move lines -1'">
<context name="hasPrevField" value="true"/>
</binding>
<binding key="down" command="sequence 'clearFields' 'move lines 1'">
<context name="hasNextField" value="true"/>
</binding>
<binding key="up" command="sequence 'clearFields' 'move lines -1'">
<context name="hasNextField" value="true"/>
</binding>
I think Sublime should do this by default.