Las variables \include-ed en entornos lilypond-book no se expanden

Las variables \include-ed en entornos lilypond-book no se expanden

Estoy escribiendo algunos ejercicios musicales usando lilypond dentro de TeX. El código simple parece funcionar bien, pero tengo mucho código que se reutiliza, así que intenté configurar variables. Las variables parecen retomarse pero no ampliarse.

MWE:

% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = LilyPond-Book
% !LILYPOND tex = xelatex
\documentclass{memoir}
\begin{document}
\begin{lilypond}
{
  \include "lilypond-variables.ly"
  \time 2/4
  \grace { g''32 } g'4  \Ggrace a'4  \Ggrace b'4  \Ggrace c''4
  \Ggrace d''4 \Ggrace e''4 \Ggrace f''4         g''4
          a''2         g''4         f''4 \Ggrace e''4
  \Ggrace d''4 \Ggrace c''4 \Ggrace b'4  \Ggrace a'4
  \Ggrace g'4
  \bar "||"
}
\end{lilypond}
\end{document}

Archivo incluido lilypond-variables.ly:

Ggrace = { \grace { g''32 } }

Producción:

ingrese la descripción de la imagen aquí

Como puede ver, la nota de adorno g 'codificada' está bien, pero las que deberían producirse \Ggracesimplemente no aparecen.

Lo intenté \include(con comillas como se especifica en la documentación de Lilypond) y \input(comillas como arriba y llaves), y antes de esto probé el estándar \newcommands dentro del código TeX pero el resultado fue el mismo.

Como tengo muchísimas combinaciones de notas de adorno, este es un problema bastante grande. Originalmente los tenía todos codificados y pensé que haría que la codificación futura fuera menos dolorosa y propensa a errores.

Usando macOS Sierra 10.12.5 (16F73) y TL 2016.

Respuesta1

Resulta que si se \includemueve fuera de las llaves, el código funciona bien, de la siguiente manera:

% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = LilyPond-Book
% !LILYPOND tex = xelatex
\documentclass{memoir}
\begin{document}
\begin{lilypond}
\include "lilypond-variables.ly"
{
  \time 2/4
  \grace { g''32 } g'4  \Ggrace a'4  \Ggrace b'4  \Ggrace c''4
  \Ggrace d''4 \Ggrace e''4 \Ggrace f''4         g''4
          a''2         g''4         f''4 \Ggrace e''4
  \Ggrace d''4 \Ggrace c''4 \Ggrace b'4  \Ggrace a'4
  \Ggrace g'4
  \bar "||"
}
\end{lilypond}
\end{document}

Producción:

ingrese la descripción de la imagen aquí

De hecho, fue un problema de Lilypond como lo sugirió @egreg (con agradecimiento y al colega de la lista de Lilypond que señaló la solución).

información relacionada