lilypond-user
[Top][All Lists]
Advanced

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

Re: Access Grob properties to change others accordingly


From: Paul Morris
Subject: Re: Access Grob properties to change others accordingly
Date: Fri, 6 Mar 2015 16:02:27 -0700 (MST)

Noeck wrote
> can I access the following properties from within a scheme music function:
> - clef glyph or name: treble or clefs.G
> - clef size: full size, change clef, cue clef
> - clef modifier: _8 or ^15 (both the direction and the number)
> of the current point in time? Such that I can use it for overrides?

Hi Joram,  I'm not sure...  I think you might be able to get at the
clefGlyph property, but I don't think the other things are stored as such. 
Take a look at this:

\displayMusic  \clef "treble"
--->
(make-music
  'ContextSpeccedMusic
  'context-type
  'Staff
  'element
  (make-music
    'SequentialMusic
    'elements
    (list (make-music
            'PropertySet
            'value
            "clefs.G"
            'symbol
            'clefGlyph)
          (make-music
            'PropertySet
            'value
            -6
            'symbol
            'middleCClefPosition)
          (make-music
            'PropertySet
            'value
            -2
            'symbol
            'clefPosition)
          (make-music
            'PropertySet
            'value
            0
            'symbol
            'clefTransposition)
          (make-music
            'ApplyContext
            'procedure
            ly:set-middle-C!))))


So \clef "treble" sets several properties: clefGlyph, middleCClefPosition,
clefPosition, and clefTransposition.  So assuming there's a way to access
them from a scheme function, those properties will be what you can access. 
(No time at the moment to try anything further...)
 
-Paul



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Access-Grob-properties-to-change-others-accordingly-tp172728p172763.html
Sent from the User mailing list archive at Nabble.com.



reply via email to

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