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

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

Re: doigté d'extension


From: Valentin Villenave
Subject: Re: doigté d'extension
Date: Mon, 15 Jun 2020 22:51:59 +0200

On 6/15/20, david <david427@quetzalia.fr> wrote:
> ah, je crois que j'ai compris !
> c'est le midi qui m'a mis la puce à l'oreille :
>
> voilà comment je traduirais le programme :
> on définit 2 notes m1 et m2
> on clone m1
> on attribue virtuellement une demi-durée à m1 et son clone
> on écrit m1
> on cache le clone et on écrit "x" en gras, au dessus
> on écrit m2

Exactement.

> du coup, dans le midi, on entend m1 et son clone avec chacun une
> demi-durée de m1

Ah oui, je n’ai pas pensé au midi.

> mon problème viendrait donc du fait que j'ai écrit sib' donc le clone
> prend aussi une octave et donc le do arrive une octave trop haut ?

Bien vu ! Je n’avais pas du tout pensé au \relative.

Voici une version corrigée (mais qui ne marchera qu’à partir de la
version 2.20) : j’enlève tout bêtement le pitch du m-clone, puisque
depuis les versions récentes de LilyPond on peut simplement entrer une
duration sans pitch pour répéter la note précédente.

Au passage, j’avais laissé des déchets dans la version précédente (je
voulais utiliser la note 1 et la note 2 pour calculer une position
intermédiaire entre le pitch de l’une et de l’autre, mais finalement
j’ai renoncé parce que ça mettait le bazar dans les altérations
accidentelles).

%%%%%

extend =
#(define-music-function (m) (ly:music?)
   (let* ((m-clone (ly:music-deep-copy m))
          (x-markup (markup #:normal-text #:fontsize 5 #:bold "×"))
          (x-fingering (make-music 'FingeringEvent 'text x-markup))
          (change-fingering
           (lambda (m)
             (or (null? (ly:music-property m 'articulations))
                 (ly:music-set-property! m 'articulations
                                         (list x-fingering)))
             (or (null? (ly:music-property m 'pitch))
                 (ly:music-set-property! m 'pitch '()))))
          (m-elements (ly:music-property m-clone 'elements)))
     (if (null? m-elements)
         (change-fingering m-clone)
         (map change-fingering m-elements))
     (ly:music-compress
      #{
        $m \once \textLengthOn \once \hideNotes $m-clone
      #}
      (ly:make-moment 1 2))))

\language "français"

\relative do { \clef bass
  \extend  sib'2-1 dod4-3( ré) |
  \bar "|." }

%%%%

Et un autre petit détail qui me fait bêtement plaisir -- plus de
quatre ans après ceci :
https://git.savannah.gnu.org/cgit/lilypond.git/commit/?id=e45059ae37b240ce52639ad5c49110b510a89481
… c’est la _toute première fois_ à ma connaissance que quelqu’un poste
sur cette liste un exemple incluant la note "ré" avec un accent aigu
:-)

V.



reply via email to

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