]> git.donarmstrong.com Git - lilypond.git/blob - input/test/staff-container.ly
sed Lilypond to LilyPond.
[lilypond.git] / input / test / staff-container.ly
1 \version "1.7.18"
2
3 \header {
4
5     texidoc = "
6
7 Container By splitting the grouping (Axis_group_engraver) and creation
8 functionality into separate contexts, you can override interesting
9 things.
10
11 Notation like this is used in modern scores. Note that LilyPond is not
12 especially prepared for it: the clefs and time-signatures don't do
13 what you would expect.
14
15     "
16
17       }
18
19
20
21 %% 
22 %% s4 would create a staff.
23 %%
24 quarterSkip = #(make-nonevent-skip (ly:make-duration 2 0))
25
26 \score  {
27  \notes \relative c'' <
28         \context StaffContainer = SA {
29
30             %% need < >, otherwise we descend to the voice inside SA  
31             < \context Staff = SA { c4 c4 } >
32             \quarterSkip
33             
34             < \context Staff = SB { b4 b4 } > 
35         }
36         \context StaffContainer =SB {
37             \quarterSkip
38             < \context Staff { e d f } >
39             \quarterSkip
40         }
41  >
42
43 \paper {
44         \translator {
45                 \ScoreContext
46                 \accepts StaffContainer
47                 \denies Staff
48         }
49         \translator {
50                 \type Engraver_group_engraver
51                 \consists Clef_engraver
52                 \consists Time_signature_engraver
53                 \consistsend "Axis_group_engraver"
54                 \accepts "Staff"
55                 
56                 \name StaffContainer
57         }
58         \translator {
59                 \StaffContext
60                 \remove Axis_group_engraver
61                 \remove Clef_engraver
62                 \remove Time_signature_engraver
63         }
64         raggedright=##t
65 }
66 }
67
68