3

Let's say that I have the following snippet in Emacs:

# -*- mode: snippet -*-
# name: frac
# key: frac
# --
\frac{${1:numerator}}{${2:denominator}}$0

My problem is that when I write a snippet inside this snippet and press tab then the snippet is not expanding but the cursor is moving to the next placeholder.

How can I make it to first expand the snippet and then, with the next tab ro move, to the next placeholder?

  • Could you perhaps show also the second snippet inside the first? – Drew Mar 5 '17 at 2:18
  • @Drew There is not one specifically. Also the one I wrote is just an example. Every time I write a snippet and I want to nest one more then the tab moves the cursor without expanding first the second snippet. – Adam Mar 5 '17 at 13:00
4

From This SO answer, we see that:

yas-triggers-in-field is a variable defined in yasnippet.el.

Its value is t

Original value was nil

Documentation:

If non-nil, allow stacked expansions (snippets inside snippets).

Otherwise yas-next-field-or-maybe-expand just moves on to the next field

You can customize this variable.

So the solution to allow nested templates is:

(setq yas-triggers-in-field t)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.