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

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

Re: retourner la clé


From: Gilles THIBAULT
Subject: Re: retourner la clé
Date: Wed, 28 Oct 2009 13:00:08 +0100


Reste plus qu'à surcharger ces foutus bémols de l'armure pour les mettre à
l'envers...

Ah je ne cherchais pas à changer les bémols car je n'arrivais pas à comprendre comment il fallait jouer ce canon, car j'avais en tête un pallindrome de Mozart où les 2 joueurs devaient jouer face à face, la partition au milieu.
Ici, les 2 musiciens jouent l'un à côté de l'autre
Le soprano1 commence.
Quand il arrive à la dernière note de la partition :
- il reprend cette dernière note et lit les notes à l'envers (comme de l'écriture arabe) - pendant ce temps le soprano2 commence la partition du début (et de gauche à droite)
Voilà donc la version avec les bemols retournés.

%%%%%%%%%%%%%%%%%%%%%%
#(define ((new-stencil func) grob)
(let*
   ((original-stencil (func grob))
    (ext-y (ly:stencil-extent original-stencil Y))
    (delta-y (- (cdr ext-y) (car ext-y))))
(ly:stencil-translate
   (ly:stencil-rotate original-stencil 180 -1 1 ); -1 1 = en haut à gauche
   (cons 0.12  (- 0.12 delta-y delta-y )))))% 0.12 c'est du bidouillage ...

invisibleChanges = {
   \once \override Staff.TimeSignature #'stencil = ##f
   \time 1/8
   \once \override Staff.Clef #'stencil = ##f
   \clef treble
   \bar ""
   s8
}


music = \relative {
   \clef soprano
   \key ees \major
   c1
   \override Score.BreakAlignment #'break-align-orders =
       #(make-vector 3 '(left-edge ambitus breathing-sign
                     key-cancellation  staff
                     time-signature key-signature clef staff-bar custos))

   \invisibleChanges
   \override Staff.Clef #'full-size-change = ##t
   \override Staff.Clef #'Y-offset = #2
   \override Staff.Clef #'stencil = #(new-stencil ly:clef::print)

   \override Staff.TimeSignature #'Y-offset = #2
   \override Staff.TimeSignature #'stencil =
#(new-stencil ly:time-signature::print)
   %% on change le glyph du bemol = -1/2
   \override Staff.KeySignature #'glyph-name-alist  = #'(
             (0 . "accidentals.natural")
             (-1/2 . "accidentals.mirroredflat")
             (1/2 . "accidentals.sharp")
             (1 . "accidentals.doublesharp")
             (-1 . "accidentals.flatflat")
             (3/4 . "accidentals.sharp.slashslash.stemstemstem")
             (1/4 . "accidentals.sharp.slashslash.stem")
             (-1/4 . "accidentals.mirroredflat")
             (-3/4 . "accidentals.mirroredflat.flat"))
   \set Staff.printKeyCancellation = ##f


   \time 4/4
   \clef soprano
   \set Staff.keySignature = #`(((0 . 6) . ,FLAT)
                                ((0 . 2) . ,FLAT)
                                ((0 . 5) . ,FLAT))
   \bar "|"
}

\new Voice \music
%%%%%%%%%%%%%%%%%

A noter que dans la doc,
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-internals/KeySignature#KeySignature
chaque éléments de la 'glyph-name-alist est présenté sous la forme (-1/2 . accidentals.flat). J'ai mis une bonne heure à comprendre que la bonne forme etait : (-1/2 . "accidentals.flat").
Ca serait peut-être bien si on pouvait modifier cette syntaxe, dans la doc.

Gilles

Attachment: fin-palindrome.png
Description: PNG image


reply via email to

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