ColorSpanDef

Bonjour,

Dans une partition, j'utilisais ColorSpanDef pour colorer un bout de partition

Or je viens de voir sur la LSR que ça ne fonctionnait "que jusqu'à 2.22 car la fonction requise ly:round-filled-box a été supprimée dans les versions suivantes"

Effectivement j'ai une erreur :

66:2: Erreur : Guile a signalé une erreur pour l'expression débutant ici

ColorSpanDef.ily (26.6 KB)

Rendu.png

···

(let ((book-handler (if (defined? 'default-toplevel-book-handler)

Unbound variable: ly:round-filled-polygon

J'utilisais le code suivant :
% box :
\genericSpan #-6 #4 #-6 #4

\colDarkOrange

\colLightOrange #0 #0 ##t ##f

sib8->^\markup { \sticker \colDarkOrange \colLightOrange \fontsize #10 { \bold * }}
\startGroup

la4-> r8

\stopGroup
%fin box

Je joins le rendu visuel à mon message
Peut-on faire la même chose en 2.25.7 ?

Raphaël

Bonjour,

Or je viens de voir sur la LSR que ça ne fonctionnait "que jusqu'à 2.22 car la fonction requise ly:round-filled-box a été supprimée dans les versions suivantes"

Où est-ce que vous voyez ceci exactement ?

Pour moi, le snippet https://lsr.di.unimi.it/LSR/Item?id=1000 a l'air de fonctionner sur votre exemple, en 2.25.7 comme en 2.24.2.

Cordialement,
Jean

Effectivement, je n'avais pas pensé à télécharger la dernière version... c'était si simple !

Ça me donnait systématiquement un message d'erreur avec mon fichier, mais ça marche très bien avec le tien...
Merci d'avoir pris de temps de résoudre mon problème !

Raphaël

···

De : Jean Abou Samra <****@****>
À : ****@****;
lilypond-user-fr@gnu.org
Sujet : Re: ColorSpanDef
Date : 19/08/2023 01:21:32 Europe/Paris

Bonjour,

Or je viens de voir sur la LSR que ça ne fonctionnait "que jusqu'à 2.22 car la fonction requise ly:round-filled-box a été supprimée dans les versions suivantes"

Où est-ce que vous voyez ceci exactement ?

Pour moi, le snippet https://lsr.di.unimi.it/LSR/Item?id=1000 a l'air de fonctionner sur votre exemple, en 2.25.7 comme en 2.24.2.

Cordialement,
Jean

Bonjour,

Or je viens de voir sur la LSR que ça ne fonctionnait "que jusqu'à 2.22 car la fonction requise ly:round-filled-box a été supprimée dans les versions suivantes"

dans ColorSpanDef.ily il y a une erreur dans un commentaire.
La fonction s'appelle "round-polygon" au lieu de "round-filled-polygon".
Je n'avais jamais remarqué ça jusqu'à aujourd'hui (je suis l'auteur du snippet 1000).

D'ailleurs: Il existe une nouvelle version encore plus puissante sur OpenLilyLib:
https://github.com/openlilylib/analysis/tree/master
Exemples:
https://github.com/openlilylib/analysis/blob/master/usage-examples/frames.pdf

Cordialement,
Klaus

(Désolé pour le doublon, réponse privée accidentelle.)

ly:round-filled-polygon est devenue ly:round-polygon en 2.23.3 car elle a été étendue pour pouvoir dessiner aussi des polygones non "filled". (D'ailleurs, il y a un warning dans convert-ly pour prévenir.)

Cordialement,
Jean

···

Le dimanche 20 août 2023 à 15:54 +0200, K. Blum a écrit :

dans ColorSpanDef.ily il y a une erreur dans un commentaire.
La fonction s'appelle "round-polygon" au lieu de "round-filled-polygon".
Je n'avais jamais remarqué ça jusqu'à aujourd'hui (je suis l'auteur du snippet 1000).

Effectivement la nouvelle version est très impressionnante !
Merci pour le lien !

Si je peux me permettre une remarque, dans la version que j'utilisais, si la première note à encadrer était par exemple un si-bémol, le bémol du si-bémol n'était pas intégré dans le cadre (le cadre commençait à la note -si-, mais pas son altération située à gauche : donc le trait du cadre passait sur l'altération, qui devenait moins visible)
Sur le lien, tous les exemples sont donnés avec des notes sans altération, donc je ne sais pas si vous avez corrigé ce point particulier

Dans ma version, pour intégrer le bémol, j'ai du créer une 2ème voix avec des silences (ou plutôt des notes avec \rest sinon ça ne marchait pas)

En tout cas, bravo pour ce boulot, j'aime beaucoup cet outil !
Raphaël

Bonjour,

dans la version que j'utilisais, si la première note à encadrer était
par exemple un si-bémol, le bémol du si-bémol n'était pas intégré dans
le cadre (le cadre commençait à la note -si-, mais pas son altération
située à gauche : donc le trait du cadre passait sur l'altération, qui
devenait moins visible)
Sur le lien, tous les exemples sont donnés avec des notes sans
altération, donc je ne sais pas si vous avez corrigé ce point particulier

Cést vrai. Mais on peut experimenter avec shorten-pair:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
{
\language "français"
% box :
\genericSpan #-6 #4 #-6 #4
\colDarkOrange
\colLightOrange #0 #0 ##t ##f
% \override HorizontalBracket.shorten-pair = #'(-0.3 . -0.3) %
valeurs "standard"
\override HorizontalBracket.shorten-pair = #'(-1.6 . -0.3)

sib8->^\markup { \sticker \colDarkOrange \colLightOrange \fontsize
#10 { \bold * }}
\startGroup
la4-> r8
\stopGroup
%fin box
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Sur la liste anglophonne, il y a aussi un post de David Nalesnik, qui
fait calculer la taille des cadres automatiquement.
J'ai essaiyé de combiner les deux idées:
https://lists.gnu.org/archive/html/lilypond-user/2015-01/msg00389.html
Mais je ne suis jamais arrivé à finir ça sérieusement.

Cordialement,
Klaus