]> git.donarmstrong.com Git - lilypond.git/blob - input/test/staff-container.ly
* scripts/lilypond-book.py (do_file): do not overwrite input file.
[lilypond.git] / input / test / staff-container.ly
1 \version "2.1.26"
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 \score  {
22  \notes \relative c'' <<
23         \new StaffContainer {
24
25             %% need << >>, otherwise we descend to the voice inside SA  
26             << \new Staff { c4 c4 } >>
27             \skip 4  % s4 would create staff.
28             
29             << \new Staff { b4 b4 } >> 
30         }
31         \new StaffContainer {
32             \skip 4
33             << \context Staff { e d f \bar ":|" } >>
34             \skip 4
35         }
36  >>
37
38 \paper {
39         \translator {
40                 \ScoreContext
41                 \accepts StaffContainer
42                 \denies Staff
43         }
44         \translator {
45                 \type Engraver_group_engraver
46                 \consists Clef_engraver
47                 \consists Time_signature_engraver
48                 \consists Separating_line_group_engraver
49                 \consistsend "Axis_group_engraver"
50                 \accepts "Staff"
51                 
52                 \name StaffContainer
53         }
54         \translator {
55                 \StaffContext
56                 \remove Axis_group_engraver
57                 \remove Separating_line_group_engraver
58                 \remove Clef_engraver
59                 \remove Time_signature_engraver
60         }
61         raggedright=##t
62 }
63 }
64
65