lilypond-user
[Top][All Lists]
Advanced

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

Re: Persian musical koron and sori


From: Graham Breed
Subject: Re: Persian musical koron and sori
Date: Thu, 19 Feb 2009 08:09:34 +0800
User-agent: Thunderbird 2.0.0.19 (X11/20090105)

Kees van den Doel wrote:
Then in "\context" add

\override Accidental #'stencil = #ly:text-interface::print
\override Accidental #'font-name = #"???"
\override Accidental #'font-size = #?
\override Accidental #'text = #(lambda (grob)
(cdr (assoc (ly:grob-property grob 'alteration)
                  persianStrings)))
\override Accidental #'X-extent = #'(0 . 1)
\override Accidental #'Y-extent = #'(-1 . 1)

Works great with the typo's fixed. Is there a way to do this only for koron and 
sori and render the
normal accidentals as usual?

There surely is, but it won't be pretty.  You can try:

-- Scheme functions for all these properties, that check if the alteration requires the new font, and default to the original values if it doesn't.

-- Putting all the \override commands in a variable, and calling it with \once when you need it.

-- Writing all the normal accidentals as \markup blocks that load the correct glyphs.

Note that if you want two glyphs at the same time for the same note they have to be strings or markup.

and so on for KeySignature

If I do the same for KeySignature

\override KeySignature #'text = #(lambda (grob)
(cdr (assoc (ly:grob-property grob 'alteration)
                   persianStrings)))

gives me an error. It's been almost 20 years since I've used Scheme and I don't 
remember
enough to be able to guess what the problem is...

Ah, yes. That's not going to work. The key signatures are drawn differently to accidentals. They have to place all the glyphs, not only one glyph for a given accidental. Maybe somebody on the list can suggest a way to override
them...


                    Graham




reply via email to

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