X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=ly%2Fengraver-init.ly;h=8522001347483a13b834f34ea04dcc2d21922dac;hb=d7c0f4263534307616c82d9b2ce6fdef9472456f;hp=01ba26235f4dc6f5a0a4787d555c61cddc803c35;hpb=b7a0cffbf9d1069860368f289a5b50e9d1d90ba8;p=lilypond.git diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly index 01ba26235f..8522001347 100644 --- a/ly/engraver-init.ly +++ b/ly/engraver-init.ly @@ -1,6 +1,6 @@ %%%% This file is part of LilyPond, the GNU music typesetter. %%%% -%%%% Copyright (C) 1996--2009 Han-Wen Nienhuys +%%%% Copyright (C) 1996--2010 Han-Wen Nienhuys %%%% Jan Nieuwenhuizen %%%% %%%% LilyPond is free software: you can redistribute it and/or modify @@ -16,7 +16,7 @@ %%%% You should have received a copy of the GNU General Public License %%%% along with LilyPond. If not, see . -\version "2.12.0" +\version "2.13.27" \context { \name "Global" @@ -34,9 +34,7 @@ \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" @@ -73,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" @@ -81,7 +78,7 @@ localKeySignature = #'() createSpacing = ##t - ignoreFiguredBassRest = ##t + ignoreFiguredBassRest = ##f %% explicitly set instrument, so we don't get %% weird effects when doing instrument names for @@ -109,7 +106,6 @@ \remove "Ottava_spanner_engraver" \remove "Key_engraver" \remove "Piano_pedal_engraver" - \remove "String_number_engraver" \description "Handles typesetting for percussion." @@ -141,6 +137,7 @@ \accepts "PianoStaff" \accepts "Lyrics" \accepts "ChordNames" + \accepts "FiguredBass" \accepts "ChoirStaff" \accepts "StaffGroup" \defaultchild "Staff" @@ -255,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{ @@ -288,8 +284,6 @@ multiple voices on the same staff." \remove "Fingering_engraver" \remove "Cluster_spanner_engraver" - - \consists "Skip_event_swallow_translator" } \context{ @@ -325,7 +319,7 @@ instrument names at the start of each system." topLevelAlignment = ##f \override StaffGrouper #'between-staff-spacing #'stretchability = #5 - + instrumentName = #'() shortInstrumentName = #'() } @@ -374,7 +368,7 @@ a collection of staves, with a bracket in front and spanning bar lines." \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." "*") @@ -382,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." @@ -403,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" @@ -411,9 +405,11 @@ 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 . 0) (stretchability . 0) (padding . 0.2)) + \override VerticalAxisGroup #'inter-loose-line-spacing = #'((space . 0) + (stretchability . 0) + (padding . 0.2) + (minimum-distance . 2.8)) \override VerticalAxisGroup #'non-affinity-spacing #'padding = #1.0 - \override SeparationItem #'padding = #0.2 \override InstrumentName #'self-alignment-Y = ##f %% sync with define-grobs.scm ; @@ -434,9 +430,6 @@ printing of a single line of lyrics." % 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" @@ -447,11 +440,9 @@ 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 #'remove-first = ##t @@ -462,22 +453,14 @@ printing of a single line of lyrics." } -RemoveEmptyStaffContext= \context { - \Staff +RemoveEmptyStaves = \with { \remove "Axis_group_engraver" + \remove "Hara_kiri_engraver" \consists "Hara_kiri_engraver" \override Beam #'auto-knee-gap = #'() \override VerticalAxisGroup #'remove-empty = ##t } -AncientRemoveEmptyStaffContext = \context { -%% why not add by default? - - \RemoveEmptyStaffContext - \accepts "VaticanaVoice" - \accepts "GregorianTranscriptionVoice" - \accepts "MensuralVoice" -} \context { \type "Score_engraver" @@ -538,6 +521,7 @@ automatically when an output definition (a @code{\score} or noteToFretFunction = #determine-frets + predefinedDiagramTable = ##f soloText = #"Solo" soloIIText = #"Solo II" aDueText = #"a2" @@ -568,9 +552,19 @@ automatically when an output definition (a @code{\score} or repeatCountVisibility = #all-repeat-counts-visible - beamSettings = #default-beam-settings + timeSignatureSettings = #default-time-signature-settings + timeSignatureFraction = #'(4 . 4) + +%% These defaults should be the same as the rules established in +%% scm/time-signature-settings.scm for 4/4 time + measureLength = #(ly:make-moment 4 4) + baseMoment = #(ly:make-moment 1 4) + beatStructure = #'(1 1 1 1) + beamExceptions = #'((end . (((1 . 8) . (4 4)) + ((1 . 12) . (3 3 3 3))))) autoBeaming = ##t autoBeamCheck = #default-auto-beam-check + scriptDefinitions = #default-script-alist pedalSustainStrings = #'("Ped." "*Ped." "*") @@ -611,6 +605,7 @@ automatically when an output definition (a @code{\score} or %% chord names: chordNameFunction = #ignatzek-chord-names majorSevenSymbol = #whiteTriangleMarkup + chordNameLowercaseMinor = ##f chordNameSeparator = #(make-simple-markup "/") chordNameExceptions = #ignatzekExceptions chordNoteNamer = #'() @@ -628,10 +623,11 @@ automatically when an output definition (a @code{\score} or stringOneTopmost = ##t highStringOne = ##t -%% One may change the strings tuning as following : -%% The lenght of the list must be equal to the number of string +%% One may change the string tunings as follows : +%% The length of the list must be equal to the number of strings stringTunings = #guitar-tuning tablatureFormat = #fret-number-tablature-format + tabStaffLineLayoutFunction = #tablature-position-on-lines %% figuredBassFormatter = #format-bass-figure @@ -666,7 +662,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 @@ -689,8 +687,6 @@ 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" @@ -708,7 +704,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." } @@ -734,7 +729,7 @@ context." %% No accidental in tablature ! \remove "Accidental_engraver" - %% make the Stems as short as possible to minimize their influence + %% 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 @@ -806,7 +801,6 @@ contexts and handles the line spacing, the tablature clef etc. properly." \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 @@ -836,6 +830,8 @@ of Editio Vaticana." \remove "Stem_engraver" \remove "Ligature_bracket_engraver" \consists "Vaticana_ligature_engraver" + \remove "Text_spanner_engraver" + \consists "Episema_engraver" %% Set default head for notes outside of \[ \]. \override NoteHead #'style = #'vaticana.punctum @@ -846,15 +842,6 @@ of Editio Vaticana." %% There are no beams in Gregorian Chant notation. autoBeaming = ##f - - %% Prepare TextSpanner for \episem{Initium|Finis} use. - %% - %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is - %% required to force the articulation signs being placed vertically - %% tightly to the correpsonding note heads. - %% - \override TextSpanner #'style = #'line - \override TextSpanner #'padding = #-0.1 } \context { @@ -903,6 +890,7 @@ of Editio Vaticana." \Voice \name "GregorianTranscriptionVoice" \alias "Voice" + \consists "Episema_engraver" %% Removing ligature bracket engraver without replacing it by some %% other ligature engraver would cause a "Junking event: `LigatureEvent'" @@ -917,18 +905,6 @@ of Editio Vaticana." %% There are no beams in Gregorian Chant notation. autoBeaming = ##f - %% Prepare TextSpanner for \episem{Initium|Finis} use. - %% - %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will - %% always produce dashed lines, regardless of the style property. - %% - %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is - %% required to force the articulation signs being placed vertically - %% tightly to the correpsonding note heads. - %% - \override TextSpanner #'dash-fraction = #'() - \override TextSpanner #'style = #'line - \override TextSpanner #'padding = #-0.1 } \context { @@ -1010,9 +986,34 @@ accommodated for typesetting a piece in mensural style." } -RemoveEmptyRhythmicStaffContext= \context { +%% Keep the old definitions in here for compatibility (they erase previous +%% settings to the corresponding context!). +%% For new scores, one should simply insert the \RemoveEmptyStaves settings +%% into the desired context. That's just as easy, requires only one line more +%% (the \*Staff), but preserves previous context mods. +%% TODO: DEPRECATED_2.13.17, remove at some point in the future +RemoveEmptyStaffContext = \context { + \Staff + \RemoveEmptyStaves +} + +AncientRemoveEmptyStaffContext = \context { + \VaticanaStaff + \RemoveEmptyStaves +} + +RemoveEmptyDrumStaffContext = \context { + \DrumStaff + \RemoveEmptyStaves +} + +RemoveEmptyRhythmicStaffContext = \context { \RhythmicStaff - \remove "Axis_group_engraver" - \override VerticalAxisGroup #'remove-empty = ##t - \consists "Hara_kiri_engraver" + \RemoveEmptyStaves } + +RemoveEmptyTabStaffContext = \context { + \TabStaff + \RemoveEmptyStaves +} +