]> git.donarmstrong.com Git - lilypond.git/blobdiff - ly/engraver.ly
release: 1.3.49
[lilypond.git] / ly / engraver.ly
index 177cbb8d53a72912091703e5e85b4cd10b14c0c1..68e35d82bcab51af7ae7f162972d9c4b1206d71f 100644 (file)
@@ -15,6 +15,12 @@ StaffContext=\translator {
        \consists "Bar_engraver";
  % Bar_engraver must be first so default bars aren't overwritten
 % with empty ones.
+
+       voltaPadding = #5  % urg, in \pt
+       voltaMinimumSpace = #25  % urg, in \pt
+
+       StaffMinimumVerticalExtent = #(cons -4.0 4.0)
+
        \consists "Repeat_engraver";
 
 
@@ -52,16 +58,15 @@ StaffContext=\translator {
 
 
 %{
-       The Staff_margin_engraver puts the name of the instrument
+       The Instrument_name_engraver puts the name of the instrument
        (\property Staff.instrument; Staff.instr for subsequent lines)
        to the left of a staff.
+       Usually, you only want this in the full score, not in the parts.
+
+       \consists "Instrument_name_engraver";
 %}
-%{
-       \consists "Staff_margin_engraver";
-%}
-       defaultClef = #"treble"
 
-       marginBreakPriority = #-5
+       defaultClef = #"treble"
 
        \consists "Separating_line_group_engraver";
          
@@ -73,8 +78,10 @@ StaffContext=\translator {
 \translator {
        \type "Engraver_group_engraver";
        \name ChoirStaff;
-       alignmentReference = \center;   
-       \consists "Staff_group_bar_engraver";
+       alignmentReference = \center;
+       \consists "System_start_delimiter_engraver";
+       systemStartDelimiterGlyph = #'bracket
+
 
 
        \accepts "Staff";
@@ -96,11 +103,13 @@ RhythmicStaffContext=\translator{
 
        Generic_property_list = #generic-staff-properties
        
-       barSize = #'staff-height
+       barSize =   4.0 * \interline ; 
        \consists "Pitch_squash_engraver";
        \consists "Separating_line_group_engraver";     
        \name RhythmicStaff;
 
+       voltaPadding = #5  % urg, in \pt
+       voltaMinimumSpace = #15  % urg, in \pt
        \consists "Repeat_engraver";
        \consists "Bar_engraver";
        \consists "Time_signature_engraver";
@@ -109,15 +118,18 @@ RhythmicStaffContext=\translator{
        \accepts "Voice";
 };
 \translator{\RhythmicStaffContext}
-VoiceContext = \translator {
 
+VoiceContext = \translator {
        \type "Engraver_group_engraver";
-       dynamicPadding = #5.0
+       \name Voice;
+
+       dynamicPadding = #3  % urg, in \pt
+       dynamicMinimumSpace = #6  % urg, in \pt
+
        Generic_property_list = #generic-voice-properties
        \consists "Output_property_engraver";   
 
        \consists "Dynamic_engraver";   % must come before text_engraver.
-       \name Voice ;
        \consists "Property_engraver";
        
        \consists "Breathing_sign_engraver";
@@ -127,11 +139,18 @@ VoiceContext = \translator {
        \consists "Beam_engraver";
        \consists "Auto_beam_engraver";
        \include "auto-beam-settings.ly";
-       \consists "Chord_tremolo_engraver";
 
+       \consists "Chord_tremolo_engraver";
        \consists "Melisma_engraver";
        textScriptPadding = #3.0
        \consists "Text_engraver";
+
+       startSustain = #"Ped."
+       stopSustain = #"*"
+       stopStartSustain = #"*Ped."
+       startUnaChorda = #"una chorda"
+       stopUnaChorda = #"tre chorde"
+       \consists "Piano_pedal_engraver";
        \consists "Script_engraver";
        \consists "Script_column_engraver";
        \consists "Rhythmic_column_engraver";
@@ -163,6 +182,7 @@ GraceContext=\translator {
 
        \consists "Rhythmic_column_engraver";
        \consists "Dynamic_engraver";
+       \consists "Text_engraver";
 
        \consists "Property_engraver";
 
@@ -193,7 +213,9 @@ GrandStaffContext=\translator{
        \type "Engraver_group_engraver";
        \name GrandStaff;
        \consists "Span_bar_engraver";
-       \consists "Piano_bar_engraver";
+       \consists "System_start_delimiter_engraver";
+       systemStartDelimiterGlyph = #'brace
+       
        \consists "Property_engraver";  
        Generic_property_list = #generic-grand-staff-properties
        \accepts "Staff";
@@ -216,8 +238,13 @@ StaffGroupContext= \translator {
        \type "Engraver_group_engraver";
        \consists "Span_bar_engraver";
        \consists "Output_property_engraver";   
-       
-       \consists "Staff_group_bar_engraver";
+       \consists "System_start_delimiter_engraver";
+       systemStartDelimiterGlyph = #'bracket
+       
+
+
+
+
        \name StaffGroup;
        \accepts "Staff";
        \accepts "RhythmicStaff";
@@ -246,28 +273,33 @@ LyricsVoiceContext= \translator{
 LyricsContext = \translator {
        \type "Engraver_group_engraver";
        \name Lyrics;
-       \consists Vertical_align_engraver;%need this for getting folded repeats right.
-
+       \consists Vertical_align_engraver; %need this for getting folded repeats right.
+       Generic_property_list = #generic-lyrics-properties
+       \consists "Property_engraver";
        \consistsend "Axis_group_engraver";
        
        \accepts "LyricVoice";
 };
 \translator { \LyricsContext }
 
-\translator{
+ChordNameVoiceContext = \translator {
        \type "Engraver_group_engraver";
-       \consists "Output_property_engraver";   
+       \name ChordNameVoice ;
 
+       \consists "Output_property_engraver";   
        \consistsend "Axis_group_engraver";
-       \name ChordNameVoice ;
        \consists "Separating_line_group_engraver";
        \consists "Chord_name_engraver";
-}
-
+};
+\translator {\ChordNameVoiceContext}
 
 ChordNameContext = \translator {
        \type "Engraver_group_engraver";
        \name ChordNames;
+
+       Generic_property_list = #generic-chord-staff-properties
+       \consists "Property_engraver";  
+       \consists "Output_property_engraver";   
        \accepts "ChordNameVoice";
        \consistsend "Axis_group_engraver";
        };
@@ -291,47 +323,56 @@ StupidScore = \translator {
 
 BarNumberingStaffContext = \translator {
        \StaffContext
-       barColumnPriority = #0
-       marginBreakPriority = #-4
        \consists "Mark_engraver";
-       \consists "Bar_number_engraver";
 };
 
 HaraKiriStaffContext = \translator {
        \StaffContext
        \remove "Axis_group_engraver";
        \consistsend "Hara_kiri_engraver";        
+       \consists "Instrument_name_engraver";
        \accepts "Voice";
 };
+%{
+  The HaraKiriStaffContexts doesn't override \name,
+  so it is still named `Staff'.
+
+  %\translator { \HaraKiriStaffContext }
+%}
 
 OrchestralPartStaffContext = \translator {
        \StaffContext
-       barColumnPriority = #0
-       marginBreakPriority = #-4
        \consists "Mark_engraver";
-       \consists "Bar_number_engraver";
 };
 
 ScoreContext = \translator {
        \type Score_engraver;
        \name Score;
 
+       marginScriptPadding = #10  % urg, in \pt
+
        \consists "Timing_engraver";
        \consists "Output_property_engraver";   
 
-       \consists "Span_score_bar_engraver";
+       %bracketCollapseHeight = #10  % \pt
+       \consists "System_start_delimiter_engraver";
+       
 %      \consists "Score_priority_engraver";
        \consists "Break_align_engraver";
        breakAlignOrder = #'(
-         "Span_bar"
-         "Breathing_sign"
-         "Clef_item"
-         "Key_item"
-         "Staff_bar"
-         "Time_signature"
+         Instrument_name
+         Left_edge_item
+         Span_bar
+         Breathing_sign
+         Clef_item
+         Key_item
+         Staff_bar
+         Time_signature
        )
        \consists "Spacing_engraver";
+
        \consists "Vertical_align_engraver";
+       \consists "Bar_number_engraver";
        alignmentReference = \down;
        defaultClef = #"treble"
        defaultBarType = #"|"
@@ -345,8 +386,9 @@ ScoreContext = \translator {
        \accepts "PianoStaff";
        \accepts "NoteNames";
 
-       clefBreakPriority = #-2
-       breathingSignBreakPriority = #-4
+
+       markVisibilityFunction = #end-of-line-invisible
+       barNumberVisibilityFunction = #begin-of-line-visible
 };
 
 \translator { \ScoreContext }
@@ -357,10 +399,7 @@ OrchestralScoreContext= \translator {
        barScriptPadding = #2.0         % dimension \pt
        markScriptPadding = #4.0
 
-       \consists "Bar_number_engraver";
        \consists "Mark_engraver";
-
-       \accepts "HaraKiriStaff";
 };
 
 \translator {