lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Comment trouver la bonne propriété et la bonne syntaxe ? (was: annot


From: Jean Abou Samra
Subject: Re: Comment trouver la bonne propriété et la bonne syntaxe ? (was: annotation sur un groupe de silence)
Date: Fri, 10 Sep 2021 11:03:27 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

Bonjour Olivier et Christophe,


Le 10/09/2021 à 09:07, Christophe Pochon a écrit :
Bonjour,

Il y a pas mal d'explications ici : http://lilypond.org/doc/v2.22/Documentation/notation/modifying-properties <http://lilypond.org/doc/v2.22/Documentation/notation/modifying-properties>

Tout à fait, et aussi une section dédiée dans le tutoriel :

http://lilypond.org/doc/v2.23/Documentation/learning/properties-of-layout-objects


Ça veut dire qu'en partant de la commande \mark il faut trouver :
1) que l'objet est un RehearsalMark ;

Chaque section du manuel de notation possède des liens vers
la références des propriétés internes. En l'occurrence,
il faut s'intéresser à la documentation de la
commande \mark :

https://lilypond.org/doc/v2.23/Documentation/notation/writing-text#text-marks

À la toute fin, la sous-section « Voir aussi » mentionne
RehearsalMark.



2) qu'il est dans l'objet Score ;


Cela se voit en deux temps :

- Sur https://lilypond.org/doc/v2.23/Documentation/internals/rehearsalmark,
  on voit que RehearsalMark est créé par le Mark_engraver,
- En allant voir
https://lilypond.org/doc/v2.23/Documentation/internals/mark_005fengraver,
  on lit que le Mark_engraver fait partie par défaut
  du contexte Score.


3) que la propriété cherchée est self-alignment-X ;


Pour cela, on regarde les propriétés de RehearsalMark
(toujours dans la références des propriétés internes)
et on trouve directement self-alignment-X avec une
explication. On peut aussi parcourir la liste des
interfaces et voir si elles n'ajoutent pas des propriétés
intéressantes pour lesquelles le grob n'aurait pas
de valeur par défaut (la page du grob montre
seulement les valeurs par défaut).


4) qu'on la modifie par un \override ;
5) et qu'on sépare la propriété de la valeur par un signe « = ».


Toutes les propriétés de grob se modifient par \override
ou par \tweak. Quant aux propriétés de contexte, elle
se modifient avec \set.

En règle générale, on peut utiliser soit \override,
soit \tweak. Avec \override, il faut mettre un signe
« = », mais pas avec \tweak, qui est une commande beaucoup
plus raccourcie puisque l'on peut même omettre le nom de
l'objet. En l'occurrence, \tweak aurait tout aussi bien
fonctionné :

{
  f'4 c f r
  \tweak self-alignment-X -0.8 \mark\markup" D.S. al coda"
  \compressMMRests{R1*12}\bar"||"\break
  des4\coda
}

Je l'accorde, la différence entre \override et \tweak
peut porter à confusion. Ce sont des commandes assez
différentes. \override porte sur une étape temporelle
entière, pour tous les objets créés lors de cette étape,
par exemple toutes les notes d'un accord. \tweak agit
sur tous les grobs qui ont été créés à partir d'un
certain événement dans la musique, ce qui permet entre
autres de retoucher une note individuelle au milieu
d'un accord.

Si on ne veut pas s'embêter avec la question du signe
égale ou pas, une option est de se passer de \tweak
en la remplaçant par \single \override, qui agit
en fait comme \tweak, mais avec la syntaxe de \override.

\relative c' {
  \override NoteHead.color = red
  <c e g>
  <c e g>
  \once \override NoteHead.color = blue
  <c e g>
  <c e g>
  <c \single \override NoteHead.color = green e g>
}



À moins d'avoir une mémoire d'éléphant, comment faire en pratique
pour retrouver toutes ces infos dans la doc ? Par exemple comment
je fais pour une note, pour une altération, pour une nuance, pour
une indication de tempo, etc., pour changer son aspect, sa
position, son orientation et ainsi de suite ?


La bonne nouvelle, c'est que toute cette procédure sert
essentiellement aux cas les plus complexes. Un bon nombre
de retouches courantes sont regroupées dans ces deux
sections :

https://lilypond.org/doc/v2.23/Documentation/notation/useful-concepts-and-properties
https://lilypond.org/doc/v2.23/Documentation/notation/advanced-tweaks

En l'occurrence, on trouve des exemples de self-alignment-X ici :

https://lilypond.org/doc/v2.23/Documentation/notation/aligning-objects#using-the-self_002dalignment_002dinterface

Même si cela ne s'applique pas à ce cas particulier,
on trouve souvent ce que l'on veut par une simple
recherche dans la LSR (https://lsr.di.unimi.it/LSR/Search).

J'espère que ceci éclaire la question.

Cordialement,
Jean



reply via email to

[Prev in Thread] Current Thread [Next in Thread]