Subject: Re: Lot lilypond-user-fr, Vol 875, Parution 9

From: [email-masked]
Date: Mon, 18 Sep 2023 14:24:26 +0200 (CEST)

Up...

Quelqu'un a une piste ?

Fred (utilisateur pas très expérimenté...)

De : [email-masked]
À : [email-masked]
Sujet : Lot lilypond-user-fr, Vol 875, Parution 9
Date : 15/09/2023 12:26:08 Europe/Paris

Envoyez vos messages pour la liste lilypond-user-fr à
[email-masked]

Pour vous (dés)abonner par le web, consultez
https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

ou, par email, envoyez un message avec 'help' dans le corps ou dans le
sujet à
[email-masked]

Vous pouvez contacter l'administrateur de la liste à l'adresse
[email-masked]

Si vous répondez, n'oubliez pas de changer l'objet du message afin
qu'il soit plus spécifique que "Re: Contenu du digest de
lilypond-user-fr..."

Thèmes du jour :

1. lignes entre 2 têtes de notes ([email-masked])

From: [email-masked]
To: [email-masked]
Subject: lignes entre 2 têtes de notes
Date: Fri, 15 Sep 2023 12:23:09 +0200 (CEST)

Bonjour,

J'aimerais savoir s'il existe une solution simple et assez robuste pour tracer des lignes entre 2 têtes de notes. J'ai trouvé les infos-bulles, mais ça ne fait que la moitié du travail.

Merci d'avance pour votre aide !

Fred.

_______________________________________________
liste de diffusion lilypond-user-fr
[email-masked]
https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

---

From: Ya Gloops <[email-masked]>
Date: Mon, 18 Sep 2023 13:21:08 +0000 (UTC)

Salut !

Une piste ici peut-être...

forwardArrow = #(define-music-function (color)
                  (color?)
                  #{ % Cross-staff arrows are made using the VoiceFollower:
                    \once \override VoiceFollower.layer = #-5
                    % To have the arrow behind the staff, choose a value below 0 for the layer.
                    % If you want the arrows to cover the notes, choose a value of 2 or more.
                    \once \override VoiceFollower.thickness = #'5    % line thickness
                    \once \override VoiceFollower.color = #color
                    \once \override VoiceFollower.bound-details.left.padding = #4
                    \once \override VoiceFollower.bound-details.right.padding = #5
                    % Padding can be adjusted to move arrow ends closer to the notes
                    \once \override VoiceFollower.bound-details.right.arrow = ##t
                    \once \override VoiceFollower.breakable = ##t  % ##f prevents line breaks within an arrow
                    % Arrows within the same staff use the Glissando spanner:
                    \once \override Glissando.layer = #-5
                    \once \override Glissando.thickness = #'5
                    \once \override Glissando.color = #color
                    \once \override Glissando.bound-details.left.padding = #4
                    \once \override Glissando.bound-details.right.padding = #5
                    \once \override Glissando.bound-details.right.arrow = ##t
                    \once \override Glissando.breakable = ##t
                  #})

backwardArrow = #(define-music-function (color)
                  (color?)
                  #{
                    \once \override VoiceFollower.layer = #-5
                    \once \override VoiceFollower.thickness = #'5    % line thickness
                    \once \override VoiceFollower.color = #color
                    \once \override VoiceFollower.bound-details.left.padding = #4
                    \once \override VoiceFollower.bound-details.right.padding = #5
                    % pretty much the same stuff, but arrow head at the left side:
                    \once \override VoiceFollower.bound-details.left.arrow = ##t
                    \once \override VoiceFollower.breakable = ##t
                    \once \override Glissando.layer = #-5
                    \once \override Glissando.thickness = #'5
                    \once \override Glissando.color = #color
                    \once \override Glissando.bound-details.left.padding = #4
                    \once \override Glissando.bound-details.right.padding = #5
                    \once \override Glissando.bound-details.left.arrow = ##t % same here...
                    \once \override Glissando.breakable = ##t
                  #})

\relative c' {
  <<
    % Usage: place the arrow function call before the note, the glissando statement after the note
    \new Staff = upper {c4 d e \backwardArrow #blue c \glissando    R1   R1   R1   R1   R1   c4 d e c   e1 d c}
    \new Staff = middle {R1    c4 d e c   e8 d e f g f e c    d c d e f e f d    c1    R1    R1*4}
    \new Staff = lower
    {<<
      {R1   R1    c4 d e \forwardArrow #blue c\glissando    R1   c4 d e c    d c b2    R1*4}
      { \override NoteColumn.ignore-collision = ##t 
        % Cross-staff arrows use an additional voice with hidden notes between them.
        % To make these notes visible, uncomment the following line:
        %      \override NoteHead.color = #cyan \override NoteHead.layer = #2
        % and remove the following "\hideNotes" line:
        \hideNotes
        \set Voice.followVoice = ##t
        \change Staff = "upper"  c4 s2.
        % place the arrow function call immediately before the staff change:
        \backwardArrow #green
        \change Staff = "middle"  g4 s2.
        \forwardArrow #red
        \change Staff = "lower"  c4  s2.    s1    c4 s2.
        \break
        \forwardArrow #red
        \change Staff = "middle"  c4 s2.
        \forwardArrow #red
        \change Staff = "upper"  c4 s2.
      }
    >>}
  >>
}

Le lundi 18 septembre 2023 à 14:28:06 UTC+2, [email-masked] <[email-masked]> a écrit : 

Up...
Quelqu'un a une piste ?

---

From: [email-masked]
Date: Mon, 18 Sep 2023 15:32:59 +0200 (CEST)

Ça m'a l'air pas mal du tout, je regarde en détails ce soir. 
Merci !

Fred.
---- Message d'origine ----
> De : Ya Gloops <[email-masked]>
> À : [email-masked] <[email-masked]>;
>       [email-masked] 
<[email-masked]>
> Sujet : Re: Lot lilypond-user-fr, Vol 875, Parution 9
> Date : 18/09/2023 15:21:08 Europe/Paris
> 
> Salut !
> 
>                     % To have the arrow behind the 
> staff, choose a value below 0 for the layer.
>                     \once \override 
> VoiceFollower.thickness = #'5    % line thickness
>                     \once \override 
> VoiceFollower.bound-details.left.padding = #4
>                     \once \override 
> VoiceFollower.bound-details.right.padding = #5
>                     \once \override 
> VoiceFollower.bound-details.right.arrow = ##t
>                     \once \override 
> VoiceFollower.breakable = ##t  % ##f prevents line 
breaks within an arrow
>                     \once \override 
> Glissando.bound-details.left.padding = #4
>                     \once \override 
> Glissando.bound-details.right.padding = #5
>                     \once \override 
> Glissando.bound-details.right.arrow = ##t
>                     \once \override 
> VoiceFollower.thickness = #'5    % line thickness
>                     \once \override 
> VoiceFollower.bound-details.left.padding = #4
>                     \once \override 
> VoiceFollower.bound-details.right.padding = #5
>                     \once \override 
> VoiceFollower.bound-details.left.arrow = ##t
>                     \once \override 
>                     \once \override 
> Glissando.bound-details.left.padding = #4
>                     \once \override 
> Glissando.bound-details.right.padding = #5
>                     \once \override 
> Glissando.bound-details.left.arrow = ##t % same here...
>     % Usage: place the arrow function call before the note, 
the 
> glissando statement after the note
>     \new Staff = upper {c4 d e \backwardArrow #blue c 
> \glissando    R1   R1   R1   R1   R1   c4 d e c   e1 d c}
>         % Cross-staff arrows use an additional voice with 
hidden 
> notes between them.
>         % To make these notes visible, uncomment the 
following 
> line:
>         % place the arrow function call immediately before 
the staff 
> change:
> Le lundi 18 septembre 2023 à 14:28:06 UTC+2, 
frederic.colledani@netcourrier.
> com <[email-masked]> a écrit : 
> 
> 
> 
> 
> 
> Up...
> Quelqu'un a une piste ?
> 
> > J'aimerais savoir s'il existe une solution simple et assez 
robuste pour 
> tracer des lignes entre 2 têtes de notes. J'ai trouvé les 
infos-bulles, 
> mais ça ne fait que la moitié du travail.
> >