Subject: altération suggérée personnalisée

From: [email-masked]
Date: Mon, 10 Jan 2022 20:20:56 +0100 (CET)

Bonsoir à tous,

Meilleurs vœux de gravure heureuse et de sage codage !

J'ai modifié le graphisme du dièse et je souhaite pouvoir le placé au dessus de la portée et entre parenthèse.
La parenthèse n'apparait pas avec le code suivant :

\version "2.22.1"

dièsesuggéré = \markup \override #'(filled . #f)
\path #0.09 #'((moveto 0.05 1.2)(lineto 0.15 -1.2)
               (moveto 0.4 1.2)(lineto 0.5 -1.2)
               (moveto -0.45 -0.1)(lineto 0.95 0.7)
               (moveto -0.45 -0.7)(lineto 0.95 0.1)) 

fcp = { \once \set suggestAccidentals = ##t
        \once \override Staff.AccidentalSuggestion.parenthesized = ##t
        \once \override AccidentalSuggestion.stencil = #(lambda (grob)
        (grob-interpret-markup grob dièsesuggéré )) }

 { \fcp gis'  }

Pourriez vous me dire ce que j'ai mal fait ?

Joël

---

From: Jean Abou Samra <[email-masked]>
Date: Mon, 10 Jan 2022 22:01:35 +0100

> Pourriez vous me dire ce que j'ai mal fait ?

Bonjour,

Le souci est qu'avec \override AccidentalSuggestion.stencil, vous
redéfinissez complètement la manière dont l'objet AccidentalSuggestion
s'affiche. Par défaut, il comporte une altération, entourées de
parenthèses si sa propriété parenthesized est à vrai, ##t (c'est
d'ailleurs la valeur par défaut pour AccidentalSuggestion, inutile
de la remettre avec \override). Vous forcez LilyPond à l'imprimer
autrement sans réimplémenter ce comportement des parenthèses. Heureusement,
c'est assez facile quand on sait qu'elles sont affichées avec les
glyphes accidentals.leftparen et accidentals.rightparen (listés dans
https://lilypond.org/doc/v2.22/Documentation/notation/the-emmentaler-font#accidental-glyphs).
Pour prendre en mode \markup un glyphe d'une fonte musicale (au
contraire des fontes textuelles où il suffit tout simplement
d'écrire le caractère), on utilise la commande \musicglyph expliquée
ici :

https://lilypond.org/doc/v2.22/Documentation/notation/music

Voici une proposition de code où j'ai aussi agrandi un peu
les parenthèses pour qu'elles s'ajustent à la taille de
votre glyphe personnalisé :

\version "2.22.1"

dièsesuggéré = \markup \concat {
   \fontsize #1 \musicglyph "accidentals.leftparen"
   \override #'(filled . #f)
     \path #0.09 #'((moveto 0.05 1.2)(lineto 0.15 -1.2)
                    (moveto 0.4 1.2)(lineto 0.5 -1.2)
                    (moveto -0.45 -0.1)(lineto 0.95 0.7)
                    (moveto -0.45 -0.7)(lineto 0.95 0.1))
   \fontsize #1 \musicglyph "accidentals.rightparen"
}

fcp = {
   \once \set suggestAccidentals = ##t
   \once \override AccidentalSuggestion.stencil =
     #(lambda (grob)
        (grob-interpret-markup grob dièsesuggéré))
}

{
   \fcp gis'
}

Bien cordialement,
Jean