Happy new year! Very glad to get feedback on my orchestral template. I made some modification to the defs, including defs of piano dynamics and chord marks using markup. Here they are: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Layout to produce piano dynamics context \layout { \context { \type "Engraver_group" \name Dynamics \alias Voice \consists "Output_property_engraver" \consists "Skip_event_swallow_translator" \consists "Axis_group_engraver" \consists "Piano_pedal_engraver" pedalSustainStrings = #'("Ped." "*Ped." "*") pedalUnaCordaStrings = #'("una corda" "" "tre corde") \consists "Script_engraver" \consists "New_dynamic_engraver" \consists "Dynamic_align_engraver" \consists "Text_engraver" \consists "Text_spanner_engraver" \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1) \override DynamicLineSpanner #'Y-offset = #0 \override TextScript #'font-size = #2 \override TextSpanner #'bound-details #'left #'stencil-align-dir-y = #CENTER \override TextScript #'font-shape = #'italic \override TextSpanner #'breakable = ##t \override DynamicLineSpanner #'breakable = ##t \override DynamicTextSpanner #'breakable = ##t } \context { \PianoStaff \accepts "Dynamics" } \context { \Voice \override Glissando #'breakable = ##t \override TextSpanner #'breakable = ##t \override DynamicLineSpanner #'breakable = ##t \override DynamicTextSpanner #'breakable = ##t \override TrillSpanner #'breakable = ##t } \context { \CueVoice \override Glissando #'breakable = ##t \override TextSpanner #'breakable = ##t \override DynamicLineSpanner #'breakable = ##t \override DynamicTextSpanner #'breakable = ##t \override TrillSpanner #'breakable = ##t } \context { \DrumVoice \override Glissando #'breakable = ##t \override TextSpanner #'breakable = ##t \override DynamicLineSpanner #'breakable = ##t \override DynamicTextSpanner #'breakable = ##t \override TrillSpanner #'breakable = ##t } \context { \TabVoice \override Glissando #'breakable = ##t \override TextSpanner #'breakable = ##t \override DynamicLineSpanner #'breakable = ##t \override DynamicTextSpanner #'breakable = ##t \override TrillSpanner #'breakable = ##t } } %{ Currently, the first dash of the centered textspan can't be moved to center unless adding a space after the text: dynamics = { \override TextSpanner #'bound-details #'left #'text = #"acc. " s2. s4\startTextSpan s4.\stopTextSpan }
%} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% layout to create orchestra staff group %% with non-spanned barlines between two instrument groups \layout { \context { \StaffGroup \name Orchestra \remove "Span_bar_engraver" } \context { \Score \accepts Orchestra } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Layout to produce SquareStaff context %% to group similar instruments in a staff group with thin square bracket \layout { \context { \StaffGroup \name SquareStaff systemStartDelimiter = #'SystemStartSquare } \context { \Orchestra \accepts SquareStaff } \context { \StaffGroup \accepts SquareStaff } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Layout to produce ChordMarks context %% for doing harmony exercises %% Chord marks are entered as text markups \layout { \context { \type "Engraver_group" \name ChordMarks \alias Voice \consists "Output_property_engraver" \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1) \consists "Script_engraver" \consists "Text_engraver" \override TextScript #'font-size = #2 \consists "Skip_event_swallow_translator" \consists "Axis_group_engraver" } \context { \Orchestra \accepts ChordMarks } \context { \StaffGroup \accepts ChordMarks } \context { \PianoStaff \accepts ChordMarks } \context { \GrandStaff \accepts ChordMarks } \context { \SquareStaff \accepts ChordMarks } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Layout to produce MarkLine context %% to place rehearsal marks and texts above full score \layout { \context { \type "Engraver_group" \name "MarkLine" \consists "Output_property_engraver" \consists "Axis_group_engraver" \consists "Mark_engraver" \consists "Metronome_mark_engraver" \consists "Script_engraver" \consists "Text_engraver" \consists "Text_spanner_engraver" \consists "Font_size_engraver" \override VerticalAxisGroup #'minimum-Y-extent = #'(-2 . 2 ) \override TextSpanner #'breakable = ##t } \context { \Orchestra \accepts "MarkLine" } \context { \StaffGroup \accepts "MarkLine" } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% layout to produce a smaller markline %% put before 1st violin part \layout { \context { \MarkLine \name "SmallMarkLine" \override MetronomeMark #'outside-staff-priority = #800 \override RehearsalMark #'outside-staff-priority = #1200 } \context { \Orchestra \accepts SmallMarkLine } \context { \StaffGroup \accepts SmallMarkLine } } Haipeng
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user