Link

Custom Contexts Implemented in solmisasi-lily Library

The following custom translation contexts are created by solmisasi-lily when it is included in a Lilypond file. They are based on standard Lilypond contexts, with some customized context properties and layout object settings in order to be used in solmisasi music engraving.

Custom Translation Contexts

  1. GlobalTempo
  2. SolmisasiChoirStaff
  3. SolmisasiLyrics
  4. SolmisasiStaff
  5. SolmisasiTimeAndKeySignature
  6. SolmisasiVoice

GlobalTempo

Type: Engraver_group (See 5.1.6 Defining new contexts)

This context is built from the following engravers:

This context sets the following property:

  • Sets translator property keepAliveInterfaces to
    '( metronome-mark-interface
       text-script-interface
       line-spanner-interface )
    

This context sets the following settings to the layout objects within:

  • Sets BarLine.bar-extent to '(-0.5 . 0.5)
  • Sets BarLine.transparent to #t
  • Sets MetronomeMark.break-align-symbols to #f
  • Sets MetronomeMark.direction to UP
  • Sets MetronomeMark.extra-spacing-width to '(+inf.0 . -inf.0)
  • Sets MetronomeMark.Y-offset to (/ 12 11)
  • Sets TextSpanner.direction to UP
  • Sets TextSpanner.Y-offset to 0
  • Sets TimeSignature.break-align-symbol to #f
  • Sets TimeSignature.stencil to #f
  • Sets VerticalAxisGroup.nonstaff-nonstaff-spacing.padding to 0.5
  • Sets VerticalAxisGroup.nonstaff-relatedstaff-spacing.padding to 0.5
  • Sets VerticalAxisGroup.remove-empty to #t
  • Sets VerticalAxisGroup.remove-first to #f
  • Sets VerticalAxisGroup.staff-affinity to DOWN

SolmisasiChoirStaff

Based on: ChoirStaff

This context also accepts commands for the following context:

This context accepts the following contexts:

This context denies the following context:

This context overrides the following settings to the layout objects within:

  • Overrides StaffGrouper.staff-staff-spacing to
    `((basic-distance . 0.5)
      (minimum-distance . 0.25)
      (padding . 0.75))
    

SolmisasiLyrics

Based on: Lyrics

This context also accepts commands for the following context:

This context is also built from the following engravers:

This context overrides the following settings to the layout objects within:

  • Overrides BarLine.bar-extent to '(0 . 1.5)
  • Overrides BarLine.transparent to #t
  • Overrides BarLine.gap to 1.0
  • Overrides LyricText.layer to -2
  • Overrides LyricText.whiteout to 2
  • Overrides LyricText.whiteout-style to 'outline
  • Overrides LyricText.word-space to 1
  • Overrides LyricExtender.layer to -4
  • Overrides LyricHyphen.layer to -3
  • Overrides LyricHyphen.minimum-distance to 0.4
  • Overrides VerticalAxisGroup.nonstaff-relatedstaff-spacing.padding to 0.75
  • Overrides VerticalAxisGroup.nonstaff-unrelatedstaff-spacing.padding to 2.5

SolmisasiStaff

Based on: Staff

This context also accepts commands for the following context:

This context also accepts the following context:

This context is also built from the following engravers:

This context removes the following engravers:

This context omits the following layout objects:

This context sets the following properties:

  • Sets translator property explicitKeySignatureVisibility to begin-of-line-invisible
  • Sets custom solmisasi translator property male-vocal to #f

This context overrides the following settings to the layout objects within:

  • Overrides BarLine.bar-extent to '(-2 . 2)
  • Overrides BarLine.gap to 0.8
  • Overrides BarLine.space-alist.next-note to '(semi-fixed-space . 1.5)
  • Overrides Beam.beam-thickness to 0.15
  • Overrides Beam.length-fraction to 0.5
  • Overrides Beam.transparent to #f
  • Overrides Dots.staff-position to 2
  • Overrides InstrumentName.extra-offset to '(0 . -0.35)
  • Overrides NoteHead.Y-offset to -0.65
  • Overrides Slur.direction to DOWN
  • Overrides StaffSymbol.line-count to 5
  • Overrides StaffSymbol.transparent to #t
  • Overrides Stem.color to blue
  • Overrides Stem.direction to UP
  • Overrides Stem.length-fraction to 0.8
  • Overrides Stem.thickness to 14
  • Overrides Stem.transparent to #t
  • Overrides Stem.X-offset to 0.65
  • Overrides TextScript.direction to UP
  • Overrides TextSpanner.direction to UP
  • Overrides Tie.details.height-limit to 1.1
  • Overrides TupletBracket.bracket-visibility to #t
  • Overrides TupletBracket.direction to UP
  • Overrides VerticalAxisGroup.default-staff-staff-spacing to
    '((basic-distance . 0)
      (padding . 0.5))
    

SolmisasiTimeAndKeySignature

Type: Engraver_group (See 5.1.6 Defining new contexts)

This context is built from the following engravers:

This context omits the following layout objects:

This context sets the following properties:

  • Sets translator property explicitKeySignatureVisibility to end-of-line-invisible
  • Sets translator property keepAliveInterfaces to
    '( key-signature-interface
       time-signature-interface )
    

This context overrides the following settings to the layout objects within:

  • Overrides BarLine.transparent to #t
  • Overrides BarLine.bar-extent to '(-0.5 . 0.5)
  • Overrides TimeSignature.self-alignment-X to CENTER
  • Overrides KeySignature.self-alignment-X to CENTER
  • Overrides TimeSignature.break-visibility to end-of-line-invisible
  • Overrides VerticalAxisGroup.staff-affinity to DOWN
  • Overrides VerticalAxisGroup.nonstaff-relatedstaff-spacing.padding to 0.5
  • Overrides VerticalAxisGroup.nonstaff-nonstaff-spacing.padding to 0.5
  • Overrides VerticalAxisGroup.remove-empty to #t
  • Overrides VerticalAxisGroup.remove-first to #f

SolmisasiVoice

Based on: Voice

This context also accepts commands for the following context:

This context is also built from the following engravers:

This context sets the following properties:

  • Sets translator property squashedPosition to 0

This context overrides the following settings to the layout objects within:

  • Overrides DynamicLineSpanner.staff-padding to 1.75
  • Overrides DynamicLineSpanner.Y-extent to '(1.5 . -1.5)
  • Overrides DynamicText.extra-offset to '(0 . -0.5)
  • Overrides Hairpin.extra-offset to '(0 . -0.5)
  • Overrides Hairpin.whiteout to 1.5
  • Overrides TextScript.Y-extent to '(1.5 . -1.5)
  • Overrides Beam.extra-offset to '(0 . -0.2)
  • Overrides TupletBracket.shorten-pair to '(0 . 0)
  • Overrides TupletNumber.font-size to 0
  • Overrides Glissando.bound-details.left.Y to -1.2
  • Overrides Glissando.bound-details.right.Y to 0.8
  • Overrides Glissando.bound-details.left.padding to 0.2
  • Overrides Glissando.bound-details.right.padding to 0.2
  • Overrides TieColumn.tie-configuration to '((-2.65 . -1))
  • Overrides BreathingSign.text to
    \markup {
      \translate #'(0 . -1.5)
      \musicglyph #"comma"
    }