Link

Modifications to Standar Lilypond Contexts

In my experience in building and using this library for music engraving, I have slightly modified the behavior of some Lilypond standard contexts and layout objects. These modifications are presented here as a reference for you in engraving your solmisasi music.

Translation Contexts

  1. ChoirStaff
  2. GrandStaff
  3. PianoStaff
  4. Score
  5. Staff
  6. StaffGroup
  7. Voice

ChoirStaff

solmisasi-lily includes the following engravers into the ChoirStaff context:

solmisasi-lily adds the following acceptable custom contexts into the ChoirStaff context:


GrandStaff

solmisasi-lily adds the following acceptable custom contexts into the GrandStaff context:


PianoStaff

solmisasi-lily adds the following acceptable custom contexts into the PianoStaff context:


Score

solmisasi-lily includes the following engravers into the Score context:

  • \DbBars

    Automatically creates double barlines in Staff whenever time signature and key signature changes found.

  • Span_arpeggio_engraver

solmisasi-lily removes the following engravers from the Score context:

solmisasi-lily adds the following acceptable custom contexts into the Score context:

solmisasi-lily modifies/sets the following Score context properties:

  • Set translator property barNumberVisibility to all-bar-numbers-visible
  • Set translator property majorSevenSymbol to:
    \markup {
      \fontsize #3 {
        \lower #1 {
          "M" \super "7"
        }
      }
    }
    
  • Set translator property noChordSymbol to (make-bold-markup "(tacet)")
  • Set translator property scriptDefinitions to solmisasi-script-alist
  • Set translator property tieWaitForNote to #t

solmisasi-lily overrides the following settings of layout objects in Score context:

  • Overrides BarNumber.after-line-breaking to #f
  • Overrides BarNumber.extra-offset to '(-0.3 . -0.1)
  • Overrides BarNumber.font-shape to 'italic
  • Overrides BarNumber.font-size to -0.5
  • Overrides BarNumber.padding to 1
  • Overrides SpanBar.layer to -5
  • Overrides SystemStartBar.collapse-height to 4
  • Overrides SystemStartBar.thickness to 1.9
  • Overrides TextSpanner.dash-fraction to 0.35
  • Overrides TextSpanner.dash-period to 2
  • Overrides TimeSignature.style to 'numbered
  • Overrides VoltaBracket.font-size to -2.5

Staff

solmisasi-lily overrides the following settings of layout objects in Staff context:

  • Overrides InstrumentName.padding to 0.8
  • Overrides InstrumentName.self-alignment-X to RIGHT
  • Overrides VerticalAxisGroup.remove-empty to #t
  • Overrides VerticalAxisGroup.remove-first to #t

StaffGroup

solmisasi-lily adds the following acceptable custom contexts into the StaffGroup context:


Voice

solmisasi-lily overrides the following settings of layout objects in Voice context:

  • Overrides DynamicLineSpanner.direction to UP
  • Overrides DynamicLineSpanner.staff-padding to 3.0
  • Overrides DynamicLineSpanner.Y-extent to '(2.5 . -2.5)
  • Overrides DynamicText.direction to UP
  • Overrides Script.direction to UP
  • Overrides TextScript.Y-extent to '(2.5 . -2.5)
  • Overrides TupletNumber.font-size to -1