]> git.donarmstrong.com Git - lilypond.git/blob - input/regression/scheme-engraver.ly
Imported Upstream version 2.14.2
[lilypond.git] / input / regression / scheme-engraver.ly
1 \header {
2
3   texidoc = "\\consists can take a scheme alist as arguments, which
4   should be functions, which will be invoked as engraver functions."
5
6 }
7
8 \version "2.14.0"
9
10 \layout {
11   \context {
12     \Voice
13     \consists
14     #(list
15       (cons 'initialize
16        (lambda (trans)
17         (display (list "initialize"
18                   (ly:context-current-moment
19                    (ly:translator-context trans)) "\n"))))
20       (cons 'start-translation-timestep
21        (lambda (trans)
22         (display (list "start-trans"
23                   (ly:context-current-moment
24                    (ly:translator-context trans)) "\n"))))
25       (cons 'listeners
26        (list
27         (cons 'rest-event (lambda (engraver event)
28                            (let*
29                             ((x (ly:engraver-make-grob engraver 'TextScript event)))
30                             (display (list "caught event" event "\ncreate:\n" x "\n"))
31                             (ly:grob-set-property! x 'text "hi"))
32                            ))
33        ))
34       (cons 'acknowledgers
35        (list
36         (cons 'note-head-interface
37          (lambda (engraver grob source-engraver)
38           (display (list "saw head: " grob " coming from " source-engraver))
39           ))
40         ))
41       (cons 'end-acknowledgers
42        (list
43         (cons 'beam-interface
44          (lambda (engraver grob source-engraver)
45           (display (list "saw end of beam: " grob " coming from " source-engraver))
46           ))
47         ))
48       (cons 'process-music
49        (lambda (trans)
50         (display (list "process-music"
51                   (ly:context-current-moment
52                    (ly:translator-context trans)) "\n"))))
53       (cons 'process-acknowledged
54        (lambda (trans)
55         (display (list "process-acknowledged"
56                   (ly:context-current-moment
57                    (ly:translator-context trans)) "\n"))))
58       (cons 'stop-translation-timestep
59        (lambda (trans)
60         (display (list "stop-trans"
61                   (ly:context-current-moment
62                    (ly:translator-context trans)) "\n"))))
63       (cons 'finalize
64        (lambda (trans)
65         (display (list "finalize"
66                   (ly:context-current-moment
67                    (ly:translator-context trans)) "\n"))))
68     )
69
70                 }}
71
72
73 \relative c' {
74   c8[ r c]
75 }