5 "With @code{music-map}, you can apply functions operating on a
6 single piece of music to an entire music expression. In this example,
7 the function @code{notes-to-skip} changes a note to a skip. When
8 applied to an entire music expression in the 1st measure, the scripts
9 and dynamics are left over. These are put onto the 2nd measure."
15 #(define
(notes-to-skip m
)
16 "Convert all stuff with duration (notes, lyrics, bass figures, etc.) to skips.
17 Scripts and dynamics are maintained.
19 (if
(memq
'rhythmic-event
(ly
:music-property m
'types
))
20 (let
* ((newmus
(make-music
'SkipEvent
)))
22 (lambda
(x
) (ly
:music-set-property
! newmus
(car x
) (cdr x
)))
23 (ly
:music-mutable-properties m
))
30 \layout { ragged-right
= ##t
}
32 foobar
= \transpose c c' { c4\>-
^ c4-
^ c4\!-
^ c4-
^ }
35 \relative c'' \context Voice
{
38 << \applyMusic #(lambda
(x
) (music-map notes-to-skip x
))
40 { d8 d d d d d d d } >>