]> git.donarmstrong.com Git - lilypond.git/blob - input/test/duration-check.ly
update syntax in .ly files.
[lilypond.git] / input / test / duration-check.ly
1 \version "1.7.6"
2 #(define (duration-check music)
3   "Check all rest durations in MUSIC"
4
5   (let* ((name (ly:music-name music))
6          (elts (ly:get-mus-property music 'elements))
7          (e (ly:get-mus-property music 'element))
8          (duration (ly:get-mus-property music 'duration)))
9
10     (if (not (equal? '() duration))
11         (begin
12           (write "duration: " (current-error-port))
13           (write duration (current-error-port))
14           (newline (current-error-port)))
15         
16         (if (equal? name "Rest_req")
17             (begin
18               (write "URG" (current-error-port))
19               (write name (current-error-port))
20               (write music (current-error-port))
21               (newline (current-error-port))
22               ;;(scm-error 'system-error #f "urg" #f #f)))
23               (error "boo")
24               )))
25
26     (if (pair? elts)
27         (map duration-check elts))
28     
29     (if (ly:music? e)
30           (duration-check e)))
31
32   music)
33
34 \score {
35   \apply #duration-check
36   <
37       \notes\relative c'' {
38           a b8 c16 <<d e>>4.
39       }
40       \notes\relative c'' {
41           a b8 c16 d a2 r
42       }
43   >
44 }
45 %% new-chords-done %%