eigene Zeichen verwenden

Begonnen von erich, Mittwoch, 15. Mai 2019, 12:09

« vorheriges - nächstes »

erich

Hallo allen,

Vorzeichen kann ich mit
\version "2.19.83"
\include "quintgen36.ly"
\paper {indent = 0}

       \score {
         \new Staff \with {\remove Time_signature_engraver \eClef}
         <<
         \new Voice {\u1 \time 5/2
                     \C c'2 ee' g' ae' be'  \N c'2 ee' g' ae' be'}
         \new Lyrics \lyricmode {C E↓ G A↓ B↓ C E↓ G A↓ C↓  }
         >>
         
       }

korrekt in meinem Sinne ausgeben (siehe unten); dabei verwende ich folgende Snipsel
pitchGlyphs = #`(
                  ( 0 . "")
                  (20856/199999 . "accidentals.sharp")
                  (-20856/199999 . "accidentals.flat")
                )

und
N =  \set Staff.keyAlterations =  #`(  )

C = \set Staff.keyAlterations =
       #`(
           (3 . ,(- KOMMA))
           (4 . ,(- KOMMA))
           (8 . ,KOMMA)
           (9 . ,(- KOMMA)) 
           (10 . ,KOMMA)
           (11 . ,(- KOMMA)) 
           )


Die Vor- bzw. Versetungszeichen werden hier missbräuchlich für Alterationen um etwa ein syntonisches Komma verwendet. Um Fehlinterpretationen zu vermeiden, möchte ich statt der traditionellen Versetzungszeichen eigene Zeichen verwenden, die z.B. als EPS-Dateien vorliegen können.

Ich weiß leider nicht, wie ich das über die pitchGlyphs-Definition erreichen kann. Kann mit eine oder einer dabei helfen?

Gruß Erich

harm6

Hallo Erich,

die stencil-proceduren für Accidental, KeySignature etc akzeptieren nur Schriftglypen, afaiu.
Falls Du eigene markups dort sehen willst, so mußt Du neue stencil-proceduren schreiben.

Für Accidental ist das einfach:


my-natural = \markup \vcenter { \epsfile #X #10 "note.eps" → }

#(define-public my-glyphs
  `(
    (0 . ,my-natural)
    ))

{
  \override Accidental.layer = -200
  \override Accidental.glyph-name-alist = #my-glyphs
  \override Accidental.stencil =
    #(lambda (grob)
       (grob-interpret-markup grob
         (assoc-get
           (ly:grob-property grob 'alteration)
           my-glyphs
           (make-vcenter-markup "??"))))
         
  b! c'! d'!
}


Aber eine neue stencil-procedure für KeySignature tu ich mir nicht an. Sorry.


Gruß,
  Harm

erich

Hallo Harm,

eigentlich wollte ich zwei symmetrische Zeichen erzeugen, merke aber, dass es besser ist, welche zu nehmen, die sich gut unterscheiden wie ♯ und ♭. Es gibt für türkische Musik das Koma als Zeichen für das pythagoreische Komma (accidentals.sharp.slashslash.stem, accidentals.mirroredflat) die das bezeichnen, was mir vorschwebt; ich werde also diese beiden Zeichen verwenden.

Danke, für Deine Hilfe!
Gruß Erich