That's exactly the point, I actually need the glyph name.
If I am noch mistaken, the alteration attribute also incorporates the
information of the key signature. I need to know which accidental is
directly in front of the notehead.
Therefore, the glyph name is probably what I need. However,  the line

(write (ly:grob-property acc 'glyph-name))

is not a string, but something else and I'm not really sure how to extract
the string part of it. Do you have a suggestion?

Am Fr., 2. Aug. 2019 um 00:16 Uhr schrieb Thomas Morley <
[email protected]>:

> Am Do., 1. Aug. 2019 um 15:23 Uhr schrieb Nils Nommensen
> <[email protected]>:
> >
> > Sorry to bother you with this, but I'm really new to Lilypond and
> Scheme. I need a String representation of the name. If I use display on the
> return value, I get something like: "accidentals.natural"#<unspecified>".
> > How can I extract the "natural" part?
>
> Well, it's not clear what you want.
> "accidentals.natural" _is_ the glyph-name in the Emmentaler-font.
> Ofcourse you could do some string-operation on it to get the
> "natural", but I have my doubts this would be helpfull.
>
> Probably you don't want the glyph-name displayed, but rather see
> whether there is some (which) alteration:
>
> \version "2.19.83"
>
> #(define get-accidental
>   (lambda (note)
>     (let*  ((acc (ly:grob-object note 'accidental-grob))
>             (alt (ly:grob-property acc 'alteration)))
>
>       (newline)
>       (write
>         (case alt
>           ((-1) "double-flat")
>           ((-1/2) "flat")
>           ((0) "natural")
>           ((1/2) "sharp")
>           ((1) "double-sharp")
>           (else (format #f "not yet kown alteration: ~a" alt)))
>       ))))
>
> {
>     \override NoteHead.after-line-breaking = #get-accidental
>     ceses'
>     ces'
>     c'
>     cis'
>     cisis'
>
>     ceh'
> }
>
> HTH,
>   Harm
>
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to