Suivant : , Haut : Contextes et graveurs


3.3.1 Tout savoir sur les contextes

Imprimer de la musique impose d'ajouter un certain nombre d'éléments de notation. Par exemple, voici un fragment de partition, précédé du code qui l'engendre :

     
     cis4 cis2. g4

[image of music]

Si le code est assez austère, dans la parition ont été ajoutés un chiffre de mesure, des barres de mesure, des altérations et une clé. Pour une bonne raison : LilyPond interprète le code. Il le compulse dans l'ordre chronologique, de même qu'on lit une partition de gauche à droite ; et pendant ce traitement, le logiciel garde en mémoire les limites des mesures, ou encore quelles hauteurs de notes demandent des altérations accidentelles. Ces informations se présentent à plusieurs niveaux : ainsi, une altération n'a d'effet que sur une seule portée, tandis qu'une barre de mesure doit être synchronisée sur toute l'étendue verticale de la partition.

LilyPond regroupe ces règles et ces fragments d'information dans des Contextes. Certains contextes sont les voix (contexte Voice ), les portées (contexte Staff ), ou la partition dans son ensemble (contexte Score ). Ils sont ordonnés hiérarchiquement : ainsi un contexte Staff peut contenir plusieurs contextes Voice , et un contexte Score peut contenir plusieurs contextes Staff .

context-example.png

Chaque contexte est chargé de faire appliquer certaines règles de gravure, de créer certains objets, et de prendre en compte les propriétés qui leur sont associées. Ainsi, le contexte Voice peut faire intervenir une altération accidentelle, puis le contexte Staff devra déterminer si cette dernière devra être imprimée ou non dans la suite de la mesure. Les barres de mesure, enfin, sont alignées verticalement grâce au contexte Score .

En revanche, dans une musique polymétrique, par exemple mélant une portée à 3/4 et une autre à 4/4, les barres de mesures n'ont plus à être alignées : il faut alors modifier les comportement par défaut des contextes Score et Staff .

Dans une partition très simple, les contextes sont créés implicitement, et peuvent être ignorés. Mais lorsqu'il s'agit de morceaux plus amples – entendons par là tout ce qui s'écrit sur plus d'une portée – il faut les créer explicitement pour être sûr d'obtenir toutes les portées nécessaires, et dans le bon ordre. Enfin pour des morceaux impliquant une notation spéciale, modifier les contextes ou en créer de nouveaux devient extrêment utile.

Une description exhaustive de tous les contextes disponibles peut être trouvée dans la référence du programme : voir Contexts.


Suivant : , Haut : Contextes et graveurs

Cette page documente LilyPond-2.11.40 (branche de développement).

Rapportez toute anomalie en français à lilypond-user-fr@gnu.org ou en anglais à http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs

Vos suggestions à propos de la documentation sont les bienvenues.

Autres langues : English.