lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

re: orchestra template problems


From: 胡海鹏 Hu Haipeng
Subject: re: orchestra template problems
Date: Fri, 2 Jan 2009 07:06:04 +0800 (CST)

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





《大话西游外传》贺岁新作,送豪宅、送你5000元压岁钱

reply via email to

[Prev in Thread] Current Thread [Next in Thread]