Hi,

consider the code below. I'd like to restrict usage to Staff-like
contexts, i.e. Staff, Tab- and DrumStaff, etc would be ok, but
container-contexts like StaffGroup, etc should lead to return '().

Pseudo-code:

\new Staff(Group)
  \with {
    \applyContext
     #(lambda (context)
       (if <condition>
           ;; Do something, if we are in a Staff-like context
           ;;   Multiple Bottom-contexts may happen
           (lambda (x) ...)
           ;; Do nothing if we are are in container-contexts like ChoirStaff,
           ;; StaffGroup, etc
           '()
       )
  }
{ c''1 }

I thought the <condition> could be "Do I have the Staff_symbol_engraver?"
Though, how to code?
    \applyContext
     #(lambda (context)
       (ly:context-def-lookup context 'consists))
does not work, because 'context' is not a context-definition.

Any hint how to proceed would be great.


Thanks,
  Harm

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to