Codificació del text

El LilyPond usa el conjunt de caràcters definit pel consorci Unicode i la norma ISO/IEC 10646. Defineix un nom únic i un codi per als conjunts de caràcters que s’utilitzen en pràcticament tots els idiomes moderns i també en molts d’altres. L’Unicode es pot implementar utilitzant diverses esquemes de codificació diferents. El LilyPond usa la codificació UTF-8 (UTF són les sigles d’Unicode Transformation Format, o format de transformació de l’Unicode) que representa tots els caràcters comuns de la codificació Latin en un sol byte, i representa altres caràcters usant un format de longitud variable de fina a quatre bytes.

L’aspecte visual real dels caràcter ve determinat per els glifs que es defineixen als tipus de lletres concretes que es tinguin disponibles: un tipus de lletra defineix l’assignació d’un subconjunt dels codis d’Unicode a glifs. El LilyPond fa servir la biblioteca Pango per representar i disposar tipogràficament els textos multilingües.

El Lilypond no realitza cap conversió a la codificació de l’entrada. Això significa que qualsevol text, ja sigui el títol, la lletra de la cançó o una ordre musical que contingui caràcters diferents als del conjunt ASCII, s’han de codificar en UTF-8. La forma més fàcil d’escriure aquest text és utilitzar un editor preparat per a Unicode i desar el fitxer amb la codificació UTF-8. Gairebé tots els editors moderns populars donen suport al UTF-8, per exemple ho fan el vim, l’Emacs, el jEdit i el Gedit. Tots els sistemes MS Windows posteriors a NT fan servir l’Unicode com a codificació de caràcters nativa, de manera que fins i tot l’accessori Bloc de Notes (Notepad) pot editar-se i desar un fitxer en el format UTF-8. Una alternativa més funcional per a Windows és el BabelPad.

Si un fitxer d’entrada que conté un caràcter que no és ASCII no es desa en el format UTF-8, es genera un missatge d’error.

FT_Get_Glyph_Name () error: argument invàlid

Vet aquí un exemple que mostra text ciríl·lic, hebreu i portuguès:

[image of music]


Referència de la notació del GNU LilyPond v2.25.22 (development-branch).