]> git.donarmstrong.com Git - lilypond.git/blobdiff - ly/engraver-init.ly
Run grand-replace for 2010.
[lilypond.git] / ly / engraver-init.ly
index ed7698ef0914c29ff3778a98574a753a5d517263..f7a58b4d01da310c224aaa6b50e56d0f858195ba 100644 (file)
@@ -1,4 +1,22 @@
-\version "2.12.0"
+%%%% This file is part of LilyPond, the GNU music typesetter.
+%%%%
+%%%% Copyright (C) 1996--2010 Han-Wen Nienhuys <hanwen@xs4all.nl>
+%%%%                          Jan Nieuwenhuizen <janneke@gnu.org>
+%%%%
+%%%% LilyPond is free software: you can redistribute it and/or modify
+%%%% it under the terms of the GNU General Public License as published by
+%%%% the Free Software Foundation, either version 3 of the License, or
+%%%% (at your option) any later version.
+%%%%
+%%%% LilyPond is distributed in the hope that it will be useful,
+%%%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+%%%% GNU General Public License for more details.
+%%%%
+%%%% You should have received a copy of the GNU General Public License
+%%%% along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+
+\version "2.13.10"
 
 \context {
   \name "Global"
   \grobdescriptions #all-grob-descriptions
 }
 
-% FIXME: replace minimum-Y-extents with proper spacing commands.
-
 \context {
   \type "Engraver_group"
   \name "FretBoards"
   \description "A context for displaying fret diagrams."
 
   \consists "Fretboard_engraver"
-  \consists "Rest_swallow_translator"
   \consists "Output_property_engraver"
-  \consists "Skip_event_swallow_translator"
   \consists "Hara_kiri_engraver"
   \consists "Separating_line_group_engraver"
   \consists "Font_size_engraver"
@@ -57,7 +71,6 @@
   \consists "Piano_pedal_engraver"
   \consists "Piano_pedal_align_engraver"
   \consists "Instrument_name_engraver"
-  \consists "String_number_engraver"
   \consists "Axis_group_engraver"
   \consists "Figured_bass_engraver"
   \consists "Figured_bass_position_engraver"
@@ -66,7 +79,6 @@
   localKeySignature = #'()
   createSpacing = ##t
   ignoreFiguredBassRest = ##t
-  \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
 
   %% explicitly set instrument, so we don't get
   %% weird effects when doing instrument names for
   \remove "Ottava_spanner_engraver"
   \remove "Key_engraver"
   \remove "Piano_pedal_engraver"
-  \remove "String_number_engraver"
 
   \description "Handles typesetting for percussion."
 
   \accepts "PianoStaff"
   \accepts "Lyrics"
   \accepts "ChordNames"
+  \accepts "FiguredBass"
   \accepts "ChoirStaff"
   \accepts "StaffGroup"
   \defaultchild "Staff"
@@ -136,7 +148,6 @@ contained staves are not connected vertically."
 \context{
   \type "Engraver_group"
 
-  \override VerticalAxisGroup #'minimum-Y-extent = ##f
   localKeySignature = #'()
   createSpacing = ##t
 
@@ -241,7 +252,6 @@ multiple voices on the same staff."
   \consists "Tuplet_engraver"
   \consists "Grace_engraver"
   \consists "Instrument_switch_engraver"
-  \consists "Skip_event_swallow_translator"
 }
 
 \context{
@@ -252,7 +262,7 @@ multiple voices on the same staff."
   fontSize = #-4
   \override Stem #'length-fraction = #(magstep -4)
   \override Beam #'length-fraction = #(magstep -4)
-  \override Beam #'thickness = #0.35
+  \override Beam #'beam-thickness = #0.35
 }
 
 \context {
@@ -274,8 +284,6 @@ multiple voices on the same staff."
   \remove "Fingering_engraver"
 
   \remove "Cluster_spanner_engraver"
-
-  \consists "Skip_event_swallow_translator"
 }
 
 \context{
@@ -311,7 +319,7 @@ instrument names at the start of each system."
   topLevelAlignment = ##f
 
   \override StaffGrouper #'between-staff-spacing #'stretchability = #5
-  
+
   instrumentName = #'()
   shortInstrumentName = #'()
 }
@@ -354,12 +362,13 @@ a collection of staves, with a bracket in front and spanning bar lines."
   \name Dynamics
   \alias Voice
   \consists "Output_property_engraver"
+  \consists "Bar_engraver"
   \consists "Piano_pedal_engraver"
   \consists "Script_engraver"
   \consists "New_dynamic_engraver"
   \consists "Dynamic_align_engraver"
   \consists "Text_engraver"
-  \consists "Skip_event_swallow_translator"
+  \consists "Text_spanner_engraver"
   \consists "Axis_group_engraver"
 
   pedalSustainStrings = #'("Ped." "*Ped." "*")
@@ -367,6 +376,7 @@ a collection of staves, with a bracket in front and spanning bar lines."
   \override VerticalAxisGroup #'staff-affinity = #CENTER
   \override VerticalAxisGroup #'inter-staff-spacing = #'((space . 5) (padding . 0.5))
   \override TextScript #'font-shape = #'italic
+  \override DynamicLineSpanner #'Y-offset = #0
 
   \description "Holds a single line of dynamics, which will be
 centered between the staves surrounding this context."
@@ -375,7 +385,6 @@ centered between the staves surrounding this context."
 
 \context{
   \type "Engraver_group"
-  \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 2.0)
 
   \description "Corresponds to a voice with lyrics.  Handles the
 printing of a single line of lyrics."
@@ -389,7 +398,6 @@ printing of a single line of lyrics."
   \consists "Hyphen_engraver"
   \consists "Stanza_number_engraver"
   \consists "Instrument_name_engraver"
-  \consists "Skip_event_swallow_translator"
   \consists "Font_size_engraver"
   \consists "Hara_kiri_engraver"
 
@@ -397,7 +405,8 @@ printing of a single line of lyrics."
   \override VerticalAxisGroup #'remove-empty = ##t
   \override VerticalAxisGroup #'staff-affinity = #UP
   \override VerticalAxisGroup #'inter-staff-spacing = #'((space . 5.5) (stretchability . 1) (padding . 0.5))
-  \override VerticalAxisGroup #'inter-loose-line-spacing = #'((space . 2) (stretchability . 0.5) (padding . 0.2))
+  \override VerticalAxisGroup #'inter-loose-line-spacing = #'((space . 0) (stretchability . 0) (padding . 0.2))
+  \override VerticalAxisGroup #'non-affinity-spacing #'padding = #1.0
   \override SeparationItem #'padding = #0.2
   \override InstrumentName #'self-alignment-Y = ##f
 
@@ -416,13 +425,9 @@ printing of a single line of lyrics."
   \description "A context for printing the names of notes."
   \consists "Axis_group_engraver"
 
-  \override VerticalAxisGroup #'minimum-Y-extent = ##f
   % FIXME: not sure what the default should be here.
   \override VerticalAxisGroup #'staff-affinity = #DOWN
 
-
-  \consists "Rest_swallow_translator"
-  \consists "Skip_event_swallow_translator"
   \consists "Tie_engraver"
   \consists "Note_name_engraver"
   \consists "Separating_line_group_engraver"
@@ -433,21 +438,20 @@ printing of a single line of lyrics."
   \name ChordNames
   \description "Typesets chord names."
 
-  \consists "Rest_swallow_translator"
   \consists "Output_property_engraver"
   \consists "Separating_line_group_engraver"
   \consists "Chord_name_engraver"
-  \consists "Skip_event_swallow_translator"
   \consists "Hara_kiri_engraver"
 %  \consists "Note_spacing_engraver"
-  \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
   \override VerticalAxisGroup #'remove-first = ##t
   \override VerticalAxisGroup #'remove-empty = ##t
   \override VerticalAxisGroup #'staff-affinity = #DOWN
+  \override VerticalAxisGroup #'inter-staff-spacing #'padding = #0.5
+  \override VerticalAxisGroup #'inter-loose-line-spacing #'padding = #0.5
 }
 
 
-RemoveEmptyStaffContext= \context {
+RemoveEmptyStaffContext = \context {
   \Staff
   \remove "Axis_group_engraver"
   \consists "Hara_kiri_engraver"
@@ -632,7 +636,7 @@ automatically when an output definition (a @code{\score} or
     (Voice Dots font-size -3)
     (Voice Stem length-fraction 0.8)
     (Voice Stem no-stem-extend #t)
-    (Voice Beam thickness 0.384)
+    (Voice Beam beam-thickness 0.384)
     (Voice Beam length-fraction 0.8)
     (Voice Accidental font-size -4)
     (Voice AccidentalCautionary font-size -4)
@@ -651,7 +655,9 @@ automatically when an output definition (a @code{\score} or
     ;; need this, as stanza numbers are items, and appear only once.
     stanza-number-interface
   )
-  quotedEventTypes = #'(
+  % \quoteDuring is supposed to quote everything, cueDuring only the essentials
+  quotedEventTypes = #'(StreamEvent)
+  quotedCueEventTypes = #'(
     note-event
     rest-event
     tie-event
@@ -674,15 +680,14 @@ automatically when an output definition (a @code{\score} or
   \description "A context for printing a figured bass line."
 
   \consists "Figured_bass_engraver"
-  \consists "Note_swallow_translator"
-  \consists "Skip_event_swallow_translator"
   \consists "Separating_line_group_engraver"
   \consists "Hara_kiri_engraver"
 
   \override VerticalAxisGroup #'remove-empty = ##t
   \override VerticalAxisGroup #'remove-first = ##t
   \override VerticalAxisGroup #'staff-affinity = #UP
-  \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
+  \override VerticalAxisGroup #'inter-staff-spacing #'padding = #0.5
+  \override VerticalAxisGroup #'inter-loose-line-spacing #'padding = #0.5
 }
 
 \context {
@@ -692,7 +697,6 @@ automatically when an output definition (a @code{\score} or
 %% don't want to route anything out of here:
   \alias "Staff"
   \alias "Voice"
-  \consists "Swallow_engraver"
   \description "Silently discards all musical information given to this
 context."
 }
@@ -713,26 +717,40 @@ context."
   %% TabStaff increase the staff-space, which in turn
   %% increases beam thickness and spacing; beams are
   %% too big. We have to adjust the beam settings:
-  \override Beam #'thickness = #0.32
+  \override Beam #'beam-thickness = #0.32
   \override Beam #'length-fraction = #0.62
 
   %% No accidental in tablature !
   \remove "Accidental_engraver"
-  %% remove stems, beams, dots and rests ...
-  \override Stem #'stencil = ##f
+  %% make the Stems as short as possible to minimize their influence
+  %% on the slur::calc-control-points routine
+  \override Stem #'length = #0
+  \override Stem #'no-stem-extend = ##t
+  \override Stem #'flag-style = #'no-flag
+  \override Stem #'details = #'((lengths 0 0 0 0 0 0)
+                                (beamed-lengths 0 0 0)
+                                (beamed-minimum-free-lengths 0 0 0)
+                                (beamed-extreme-minimum-free-lengths 0 0)
+                                (stem-shorten 0 0))
+  %% after all, the stubs of the stems may still be visible, so ...
+  \override Stem #'transparent = ##t
+  %% automatic beams should be suppressed for similar reasons ...
+  autoBeaming = ##f
+  %% remove beams, dots and rests ...
   \override Beam #'stencil = ##f
   \override Dots #'stencil = ##f
   \override Rest #'stencil = ##f
   \override MultiMeasureRest #'stencil = ##f
+  \override MultiMeasureRestNumber #'transparent = ##t
   %% ... all kinds of ties/slurs
   \override Tie  #'stencil = ##f
   \override RepeatTie #'stencil = ##f
   \override LaissezVibrerTie #'stencil = ##f
-  \override Slur #'stencil = ##f
+  \override Slur #'stencil = #slur::draw-tab-slur
   \override PhrasingSlur #'stencil = ##f
   %% 'tied to' fret numbers become invisible or parenthesized, respectively)
-  \override Tie #'after-line-breaking = #tie::handle-tab-tie
-  \override RepeatTie #'after-line-breaking = #repeat-tie::parenthesize-tab-note-head
+  \override Tie #'after-line-breaking = #tie::handle-tab-note-head
+  \override RepeatTie #'after-line-breaking = #repeat-tie::handle-tab-note-head
   %% ... and all kinds of markups, spanners etc.
   \override TupletBracket #'stencil = ##f
   \override TupletNumber #'stencil = ##f
@@ -760,12 +778,13 @@ context."
   \denies "Voice"
   \consists "Tab_staff_symbol_engraver"
 
-  \description "Context for generating tablature. [DOCME]"
+  \description "Context for generating tablature. It accepts only @code{TabVoice}
+contexts and handles the line spacing, the tablature clef etc. properly."
 
   \accepts "TabVoice"
   \defaultchild "TabVoice"
 
-  %% 6 strings
+  %% 6 strings, bigger spacing
   \override StaffSymbol #'staff-space = #1.5
 
   %% Don't draw stems over the tablature figures !
@@ -774,7 +793,8 @@ context."
   %% No accidental in tablature !
   \remove "Accidental_engraver"
   \remove "Key_engraver"
-  \remove "String_number_engraver"
+
+  \remove "Ottava_spanner_engraver"
   %% the clef handler
   \override Clef #'stencil = #clef::print-modern-tab-if-set
   %% no time signature
@@ -783,21 +803,14 @@ context."
   \override ParenthesesItem #'stencils = #parentheses-item::calc-tabstaff-parenthesis-stencils
   %% no arpeggios
   \override Arpeggio #'stencil = ##f
+  %% we ignore collision warnings that may occur due to
+  %% stem overlapping, because we have no stems ;-)
+  \override NoteColumn #'ignore-collision = ##t
   %% Special "TAB" clef
   clefGlyph = #"clefs.tab"
   clefPosition = #0
 }
 
-%% TODO: Gregorian Chant contexts should be moved to gregorian.ly,
-%% but this does not work (is this a bug or intended behaviour?):
-%%
-%% If I try to do so, I get "error: unknown escaped string:
-%% `\VaticanaStaff'" in params-init.ly.  If I also move
-%% "\context { \Vaticana*Context }" from params-init.ly to the end
-%% of gregorian.ly, then I get "error: parse error, unexpected
-%% TRANSLATOR: \context { \VaticanaStaff }" in
-%% gregorian.ly. --jr
-
 \context {
   \Voice
   \name "VaticanaVoice"
@@ -983,10 +996,24 @@ accommodated for typesetting a piece in mensural style."
   printKeyCancellation = ##f
 }
 
+RemoveEmptyDrumStaffContext = \context {
+  \DrumStaff
+  \remove "Axis_group_engraver"
+  \override VerticalAxisGroup #'remove-empty = ##t
+  \consists "Hara_kiri_engraver"
+}
 
-RemoveEmptyRhythmicStaffContext= \context {
+RemoveEmptyRhythmicStaffContext = \context {
   \RhythmicStaff
   \remove "Axis_group_engraver"
   \override VerticalAxisGroup #'remove-empty = ##t
   \consists "Hara_kiri_engraver"
 }
+
+RemoveEmptyTabStaffContext = \context {
+  \TabStaff
+  \remove "Axis_group_engraver"
+  \override VerticalAxisGroup #'remove-empty = ##t
+  \consists "Hara_kiri_engraver"
+}
+