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

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

Re: doigté d'extension


From: Jean Abou Samra
Subject: Re: doigté d'extension
Date: Wed, 17 Jun 2020 21:16:16 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0

Bonjour,

Le 17/06/2020 à 15:34, david a écrit :

pour info :

Je viens de me rendre compte qu'avec ce nouveau code, le problème d'une croche suivie d'une noire est effectivement résolu, mais ça fait apparaître un nouveau problème : quand il y a deux croches de suite, elles perdent leur ligature traditionnelle

Voilà qui est tout à fait normal puisque l'ajout proposé par Pierre consiste précisément à empêcher la note fantôme de recevoir une quelconque ligature, ce qui coupe pour ainsi dire la ligature entre la note affichée et la suivante.

donc j'ai adopté une solution mixte :

j'utilise à la fois le \extend de valentin et l'\extension que tu proposes. en utilisant judicieusement les deux, ma partition est conforme à mes exigences :)

Si je puis me permettre d'ajouter mon grain de sel dans cette affaire, pourquoi pas une nouvelle voix plutôt que d'insérer le X dans la voix d'origine ? Cela permet de conserver les ligatures automatiques, et évite que la duplication des hauteurs ne perturbe \relative. C'est le genre d'astuce que l'on finit par développer lorsqu'on est mauvais élève en Scheme…

\version "2.21.2"
\language français

x = \markup \normal-text \fontsize #2 \bold ×

extension =
#(define-music-function (note) (ly:music?)
  #{
    <<
      {
        $note
      }
      \new Voice \with {
        midiMinimumVolume = 0
        midiMaximumVolume = 0
      } {
        \voiceOne
        %% J'espère n'avoir rien oublié mais si un objet venait à se “tripliquer”,
        %% il faudrait simplement l'omettre en l'ajoutant à cette liste.
        \omit Stem
        \omit Beam
        \omit Flag
        \omit Accidental
        \omit Fingering
        % Pour le cas où la note porterait un TextScript, on le supprime.
        % Il faut ensuite rétablir le stencil du x.
        \omit TextScript
        \override NoteHead.stencil = #point-stencil
        \override NoteHead.no-ledgers = ##t
        \scaleDurations 1/2 {
          $note
          $note \tweak TextScript.stencil #ly:text-interface::print ^\x
        }
      }
    >>
  #})

\score {
  \relative do' { \clef bass sib4-2 \extension do8-4 ré8-1 }
  \layout { }
  \midi { }
}

Bien cordialement,
Jean Abou Samra




reply via email to

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