2012-03-04 9 views
7

Al sito YASnippet ho notato seguente descrizione di yas/triggers-in-field:Come posso espandere uno snippet all'interno di uno snippet utilizzando YASnippet?

Se non zero, yas/next-field-key può innescare espansioni impilati, cioè un'espansione frammento all'interno di un altro frammento di espansione. Altrimenti, yas/next-field-key cerca semplicemente di passare al campo successivo.

Non sono chiaro come farlo accadere.

ho pensato che dopo essere stata impostata: #expand-env: ((yas/triggers-in-field #t)), ogni volta che ho scritto un abbrev in un campo e premuto Tab sarebbe ampliata, tuttavia, che non è il caso.

+0

Link è morto. :( – PythonNut

risposta

8

yas/triggers-in-field è una variabile. Per impostazione predefinita è impostato su zero.

sua docstring dice:

Se non nullo, `Yas/next-campo-chiave' può innescare espansioni impilati.

In caso contrario, `Yas/next-campo-chiave' appena cerca di passare al successivo campo

Così, per consentire espansioni impilati è necessario impostare la variabile ad un valore non nullo tale come t. Se si desidera che questa impostazione permanente messo il seguente nella vostra .emacs:

(setq yas/triggers-in-field t); Enable nested triggering of snippets 

Si può leggere su altre variabili YASnippet personalizzabili a http://capitaomorte.github.com/yasnippet/snippet-development.html#customizable-variables