'SlurEvent
'SostenutoEvent
'StringNumberEvent
+ 'StrokeFingerEvent
'SustainEvent
'TextScriptEvent
'TextSpanEvent
(define-post-event-display-method AbsoluteDynamicEvent (event parser) #f
(format #f "\\~a" (ly:music-property event 'text)))
+(define-post-event-display-method StrokeFingerEvent (event parser) #t
+ (format #f "\\rightHandFinger #~a" (ly:music-property event 'digit)))
+
(define-span-event-display-method BeamEvent (event parser) #f "[" "]")
(define-span-event-display-method SlurEvent (event parser) #f "(" ")")
(define-span-event-display-method CrescendoEvent (event parser) #f "\\<" "\\!")
(music->lily-string (car elements) parser)
(if (and (not (null? simple-elements))
(null? (cdr simple-elements))
- ;; special case: if this simple_element has a HarmonicEvent in its
- ;; 'articulations list, it should be interpreted instead as a
- ;; note_chord_element, since \harmonic only works inside chords,
- ;; even for single notes, e.g., < c\harmonic >
- (null? (filter (make-music-type-predicate 'HarmonicEvent)
+ ;; special case: if this simple_element has any post_events in
+ ;; its 'articulations list, it should be interpreted instead
+ ;; as a note_chord_element to prevent spurious output, e.g.,
+ ;; \displayLilyMusic < c-1\4 >8 -> c-1\48
+ (null? (filter post-event?
(ly:music-property (car simple-elements) 'articulations))))
;; simple_element : note | figure | rest | mmrest | lyric_element | skip
(let* ((simple-element (car simple-elements))