A.2.2 Variables del LilyPond

Les variables del LilyPond s’emmagatzemen internament en la forma de variables de l’Scheme. Així,

dotze = 12

equival a

#(define dotze 12)

Això significa que les variables del LiyPond estan disponibles per al seu ús dins d’expressions de l’Scheme. Per exemple, podríem usar

vintiQuatre = (* 2 dotze)

cosa que faria que el nombre 24 s’emmagatzemés dins de la variable vintiQuatre del LilyPond (i de l’Scheme).

El llenguatge Scheme permet la modificació d’expressions complexes in situ i el LilyPond fa ús d’aquesta ‘modificació in situ’ en fer servir funcions musicals. Però quan les expressions musicals s’emmagatzemen dins de variables en lloc de ser intruïdes directament, el que habitualment s’espera quan es passen funcions musicals seria que el valor original quedés intacte. Així doncs, quan es fa referència a una variable musical amb la barra invertida (com ara \vintiQuatre), el LilyPond crea una còpia del valor musical d’aquesta variable per utilizar-la dins de l’expressió musical que l’envolta, enlloc d’usar el valor de la variable directament.

Per això, les expressions musicals de l’Scheme escrites amb la sintaxi de coixinet # s’haurien d’utilitzar per a qualsevol material creat ‘partint de zero’ (o que s’hagi copiat explícitament) enlloc d’utilitzar-se per fer referència a música directament.

Vegeu també

Manual de extensió: Sintaxi de l’Scheme del LilyPond.


Extender LilyPond v2.25.27 (development-branch).