%%%% 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.17.6"
+\version "2.17.29"
\context {
\name "Global"
\defaultchild "Score"
\description "Hard coded entry point for LilyPond. Cannot be tuned."
\grobdescriptions #all-grob-descriptions
- EventClasses = #all-event-classes
}
\context {
\consists "Fretboard_engraver"
\consists "Output_property_engraver"
- \consists "Hara_kiri_engraver"
+ \consists "Axis_group_engraver"
\consists "Separating_line_group_engraver"
\consists "Font_size_engraver"
\consists "Instrument_name_engraver"
\consists "Figured_bass_position_engraver"
\consists "Script_row_engraver"
\consists "Cue_clef_engraver"
+ \consists "Fingering_column_engraver"
localKeySignature = #'()
createSpacing = ##t
\defaultchild "Voice"
\accepts "Voice"
\accepts "CueVoice"
+ \accepts "NullVoice"
\description "Handles clefs, bar lines, keys, accidentals. It can contain
@code{Voice} contexts."
\name RhythmicStaff
\alias "Staff"
- \override BarLine.bar-extent = #'(-2 . 2)
\override VoltaBracket.staff-padding = #3
\override StaffSymbol.line-count = #1
\consists "Note_heads_engraver"
\consists "Dots_engraver"
\consists "Rest_engraver"
- \consists "Tweak_engraver"
%% switch on to make stem directions interpolate for the
%% center line.
\consists "Beam_engraver"
\consists "Grace_beam_engraver"
\consists "Auto_beam_engraver"
+ \consists "Grace_auto_beam_engraver"
%% must come before Script_column_engraver.
\consists "New_fingering_engraver"
\consists "Part_combine_engraver"
\consists "Text_engraver"
- \consists "New_dynamic_engraver"
+ \consists "Dynamic_engraver"
\consists "Dynamic_align_engraver"
-% \consists "Dynamic_engraver"
\consists "Fingering_engraver"
\consists "Bend_engraver"
\consists "Script_engraver"
\consists "Script_column_engraver"
- \consists "Fingering_column_engraver"
\consists "Rhythmic_column_engraver"
\consists "Note_spacing_engraver"
\consists "Spanner_break_forbid_engraver"
\consists "Bar_engraver"
\consists "Piano_pedal_engraver"
\consists "Script_engraver"
- \consists "New_dynamic_engraver"
+ \consists "Dynamic_engraver"
\consists "Dynamic_align_engraver"
\consists "Text_engraver"
\consists "Text_spanner_engraver"
\consists "Font_size_engraver"
\consists "Axis_group_engraver"
- \consists "Tweak_engraver"
pedalSustainStrings = #'("Ped." "*Ped." "*")
pedalUnaCordaStrings = #'("una corda" "" "tre corde")
(padding . 0.5))
\override TextScript.font-shape = #'italic
\override DynamicLineSpanner.Y-offset = #0
+ \override DynamicLineSpanner.outside-staff-priority = ##f
+ \override DynamicText.outside-staff-priority = ##f
+ \override Hairpin.outside-staff-priority = ##f
\override DynamicText.X-offset =
#(ly:make-simple-closure
`(,+
\consists "Lyric_engraver"
\consists "Extender_engraver"
\consists "Hyphen_engraver"
- \consists "Tweak_engraver"
\consists "Stanza_number_engraver"
\consists "Instrument_name_engraver"
\consists "Font_size_engraver"
- \consists "Hara_kiri_engraver"
+ \consists "Axis_group_engraver"
\consists "Pure_from_neighbor_engraver"
searchForVoice = ##f
%% explicitly set instrument, so it is not inherited from the parent
\consists "Output_property_engraver"
\consists "Separating_line_group_engraver"
\consists "Chord_name_engraver"
- \consists "Hara_kiri_engraver"
+ \consists "Axis_group_engraver"
% \consists "Note_spacing_engraver"
+
\override VerticalAxisGroup.remove-first = ##t
\override VerticalAxisGroup.remove-empty = ##t
\override VerticalAxisGroup.staff-affinity = #DOWN
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
\consists "Output_property_engraver"
+ \consists "Tweak_engraver"
\consists "System_start_delimiter_engraver"
\consists "Mark_engraver"
\consists "Volta_engraver"
doubleRepeatType = #":..:"
startRepeatType = #".|:"
endRepeatType = #":|."
+ alternativeRestores = #'(measurePosition measureLength)
barNumberVisibility = #first-bar-number-invisible-and-no-parenthesized-bar-numbers
barNumberFormatter = #robust-bar-number-function
- clefOctavationFormatter = #clef-octavation-markup
- cueClefOctavationFormatter = #clef-octavation-markup
+ clefTranspositionFormatter = #clef-transposition-markup
+ cueClefTranspositionFormatter = #clef-transposition-markup
automaticBars = ##t
explicitClefVisibility = #all-visible
repeatCountVisibility = #all-repeat-counts-visible
+%% Other Timing variables are derived and set by the Timing_translator
+%% at initialization time by calling the functions in
+%% scm/time-signature-settings.scm
+
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)))))
beamHalfMeasure = ##t
autoBeaming = ##t
autoBeamCheck = #default-auto-beam-check
+ completionFactor = #unity-if-multimeasure
+
scriptDefinitions = #default-script-alist
pedalSustainStrings = #'("Ped." "*Ped." "*")
figuredBassFormatter = #format-bass-figure
metronomeMarkFormatter = #format-metronome-markup
-
%% See also make-voice-props-set
- graceSettings = #`(
- (Voice Stem direction ,UP)
- (Voice Stem font-size -3)
- (Voice Flag font-size -3)
- (Voice NoteHead font-size -3)
- (Voice TabNoteHead font-size -4)
- (Voice Dots font-size -3)
- (Voice Stem length-fraction 0.8)
- (Voice Stem no-stem-extend #t)
- (Voice Beam beam-thickness 0.384)
- (Voice Beam length-fraction 0.8)
- (Voice Accidental font-size -4)
- (Voice AccidentalCautionary font-size -4)
- (Voice Slur direction ,DOWN)
- (Voice Script font-size -3)
- (Voice Fingering font-size -8)
- (Voice StringNumber font-size -8)
- )
+ graceSettings = #score-grace-settings
keepAliveInterfaces = #'(
bass-figure-interface
\consists "Figured_bass_engraver"
\consists "Separating_line_group_engraver"
- \consists "Hara_kiri_engraver"
+ \consists "Axis_group_engraver"
\override VerticalAxisGroup.remove-empty = ##t
\override VerticalAxisGroup.remove-first = ##t
context."
}
+\context {
+ \name "NullVoice"
+ \type "Engraver_group"
+
+ \description "Non-printing context, typically used for aligning
+lyrics in polyphonic situations, or with @code{\partcombine}."
+
+ %% don't route anything out of here
+ \alias "Staff"
+ \alias "Voice"
+
+ %% all three are needed for ties to work with lyrics
+ \consists "Note_heads_engraver"
+ \consists "Rhythmic_column_engraver"
+ \consists "Tie_engraver"
+
+ %% both are needed for melismas to work with \autoBeamOff
+ \consists "Beam_engraver"
+ \consists "Stem_engraver"
+
+ %% needed for slurs to work with lyrics
+ \consists "Slur_engraver"
+
+ %% keep noteheads inside the staff
+ \consists "Pitch_squash_engraver"
+ squashedPosition = 0
+
+ %% `\omit NoteHead' would give slur attachment errors
+ \omit Accidental
+ \omit Beam
+ \omit Dots
+ \omit Flag
+ \omit Rest
+ \omit Slur
+ \omit Stem
+ \omit Tie
+
+ %% let these take up space (for lyric extenders, etc.)
+ \override NoteHead.transparent = ##t
+ \override TabNoteHead.transparent = ##t
+
+ %% don't let notes shift
+ \override NoteHead.X-offset = 0
+ \override NoteColumn.ignore-collision = ##t
+
+ %% keep beams and stems inside the staff
+ \override Beam.positions = #'(1 . 1)
+ \override Stem.length = 0
+
+ %% prevent "weird stem size" warnings
+ \override Stem.direction = #UP
+}
+
\context {
\Voice
\name "TabVoice"
\description "Context for drawing notes in a Tab staff."
+ %% No accidental in tablature !
+ \remove "Accidental_engraver"
+}
+
+\context {
+ \Staff
+ \alias "Staff"
+ \name "TabStaff"
+ \denies "Voice"
+ \consists "Tab_staff_symbol_engraver"
+
+ \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, bigger spacing
+ \override StaffSymbol.staff-space = #1.5
+
+ %% Don't draw stems over the tablature figures !
+ \override Stem.avoid-note-head = ##t
+
+ %% No accidental in tablature !
+ \remove "Accidental_engraver"
+ \remove "Key_engraver"
+
+ \remove "Ottava_spanner_engraver"
+ %% the clef handler
+ \override Clef.stencil = #clef::print-modern-tab-if-set
+ %% no time signature
+ \override TimeSignature.stencil = ##f
+ %% 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
+ %% Change string if note results in negative fret number
+ handleNegativeFrets = #'recalculate
+ %% Allow open strings even if minimumFret is set
+ restrainOpenStrings = ##f
+
%% TabStaff increase the staff-space, which in turn
%% increases beam thickness and spacing; beams are
%% too big. We have to adjust the beam settings:
(/ 1 (ly:staff-symbol-staff-space grob)))
\override StemTremolo.beam-width = #stem-tremolo::calc-tab-width
- %% No accidental in tablature !
- \remove "Accidental_engraver"
%% make the Stems as short as possible to minimize their influence
%% on the slur::calc-control-points routine
\override Stem.no-stem-extend = ##t
\override TabNoteHead.stencil = #tab-note-head::whiteout-if-style-set
}
-\context {
- \Staff
- \alias "Staff"
- \name "TabStaff"
- \denies "Voice"
- \consists "Tab_staff_symbol_engraver"
-
- \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, bigger spacing
- \override StaffSymbol.staff-space = #1.5
-
- %% Don't draw stems over the tablature figures !
- \override Stem.avoid-note-head = ##t
-
- %% No accidental in tablature !
- \remove "Accidental_engraver"
- \remove "Key_engraver"
-
- \remove "Ottava_spanner_engraver"
- %% the clef handler
- \override Clef.stencil = #clef::print-modern-tab-if-set
- %% no time signature
- \override TimeSignature.stencil = ##f
- %% 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
- %% Change string if note results in negative fret number
- handleNegativeFrets = #'recalculate
- %% Allow open strings even if minimumFret is set
- restrainOpenStrings = ##f
-}
-
\context {
\Voice
\name "VaticanaVoice"
middleCPosition = #1
middleCClefPosition = #1
clefPosition = #1
- clefOctavation = #0
+ clefTransposition = #0
%% Select vaticana style font.
\override KeySignature.glyph-name-alist = #alteration-vaticana-glyph-name-alist
middleCClefPosition = #-6
middleCPosition = #-6
clefPosition = #-2
- clefOctavation = #0
+ clefTransposition = #0
%% Select mensural style font.
\override TimeSignature.style = #'mensural
middleCClefPosition = #-6
middleCPosition = #-6
clefPosition = #-2
- clefOctavation = #0
+ clefTransposition = #0
\override Custos.style = #'mensural
\override Custos.neutral-position = #3
\description "Same as @code{Voice} context, except that it is
accommodated for typesetting a piece in Kievan style."
+ \remove "Ligature_bracket_engraver"
+ \consists "Kievan_ligature_engraver"
+
%% Set glyph styles.
\override NoteHead.style = #'kievan
\override Stem.X-offset = #stem::kievan-offset-callback
middleCClefPosition = #0
middleCPosition = #0
clefPosition = #0
- clefOctavation = #0
+ clefTransposition = #0
%% Accidentals are valid only once (if the following note is different)
extraNatural = ##f