]> git.donarmstrong.com Git - lilypond.git/blob - input/test/reverse-music.ly
release: 1.3.145
[lilypond.git] / input / test / reverse-music.ly
1
2 \header {
3 texidoc="
4 Simple customised music apply.
5 ";
6 }
7
8 music = \notes { c'4 d'4( e'4 f'4 }
9
10 #(define (reverse-music music)
11   (let* ((elements (ly-get-mus-property music 'elements))
12          (reversed (reverse elements))
13          (span-dir (ly-get-mus-property music 'span-direction)))
14
15     (ly-set-mus-property music 'elements reversed)
16
17     (if (dir? span-dir)
18         (ly-set-mus-property music 'span-direction (- span-dir)))
19
20     (map reverse-music reversed)
21
22     music))
23
24 \score {
25   \context Voice {
26     \music
27     \apply #reverse-music \music
28   }
29   \paper { linewidth = -1.; }
30 }
31