]> git.donarmstrong.com Git - lilypond.git/blob - input/new/piano-template-with-centered-dynamics.ly
Merge branch 'master' of git://git.sv.gnu.org/lilypond
[lilypond.git] / input / new / piano-template-with-centered-dynamics.ly
1 \version "2.11.35"
2
3 \header {
4   doctitle = "Piano template with centered dynamics"
5   lsrtags = "expressive-marks,piano-music,template"
6   texidoc = "
7 Many piano scores have the dynamics centered between the two staves.
8 This requires a bit of tweaking to implement, but since the template is
9 right here, you don't have to do the tweaking yourself.
10 " }
11
12 upper = \relative c'' {
13   \clef treble
14   \key c \major
15   \time 4/4
16   
17   a b c d
18 }
19
20 lower = \relative c {
21   \clef bass
22   \key c \major
23   \time 4/4
24   
25   a2 c
26 }
27
28 dynamics = {
29   s2\fff\> s4
30   s\!\pp
31 }
32
33 pedal = {
34   s2\sustainDown s2\sustainUp
35 }
36
37 \score {
38   \new PianoStaff <<
39     \new Staff = "upper" \upper
40     \new Dynamics = "dynamics" \dynamics
41     \new Staff = "lower" <<
42       \clef bass
43       \lower
44     >>
45     \new Dynamics = "pedal" \pedal
46   >>
47   \layout {
48     \context {
49       \type "Engraver_group"
50       \name Dynamics
51       \alias Voice % So that \cresc works, for example.
52       \consists "Output_property_engraver"
53       
54       \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
55       \override DynamicLineSpanner #'Y-offset = #0
56       pedalSustainStrings = #'("Ped." "*Ped." "*")
57       pedalUnaCordaStrings = #'("una corda" "" "tre corde")
58       
59       \consists "Piano_pedal_engraver"
60       \consists "Script_engraver"
61       \consists "Dynamic_engraver"
62       \consists "Text_engraver"
63       
64       \override TextScript #'font-size = #2
65       \override TextScript #'font-shape = #'italic
66       
67       \consists "Skip_event_swallow_translator"
68       
69       \consists "Axis_group_engraver"
70     }
71     \context {
72       \PianoStaff
73       \accepts Dynamics
74     }
75   }
76 }
77 \score {
78   \new PianoStaff <<
79     \new Staff = "upper" << \upper \dynamics >>
80     \new Staff = "lower" << \lower \dynamics >>
81     \new Dynamics = "pedal" \pedal
82   >>
83   \midi {
84     \context {
85       \type "Performer_group"
86       \name Dynamics
87       \consists "Piano_pedal_performer"
88     }
89     \context {
90       \PianoStaff
91       \accepts Dynamics
92     }
93   }
94 }