Node:GregorianTranscriptionVoice, Next:, Previous:GregorianTranscriptionStaff, Up:Contexts



GregorianTranscriptionVoice

Corresponds to a voice on a staff. This context handles the conversion of dynamic signs, stems, beams, super- and subscripts, slurs, ties, and rests.

You have to instantiate this explicitly if you want to have multiple voices on the same staff.

This context is also known as:

Voice

This context creates the following grobs: Arpeggio, Beam, BreathingSign, ClusterSpannerBeacon, ClusterSpanner, DoublePercentRepeat, DynamicLineSpanner, DynamicText, Fingering, Glissando, Hairpin, MultiMeasureRestNumber, MultiMeasureRestText, MultiMeasureRest, NoteColumn, NoteSpacing, PercentRepeat, PhrasingSlur, RepeatSlash, ScriptColumn, Script, Slur, StemTremolo, Stem, TextScript, TextSpanner, TieColumn, Tie, TupletBracket and VoiceFollower.

This context sets the following properties:

Context GregorianTranscriptionVoice can contain Thread

This context is built from the following engravers:


Engraver_group_engraver
A group of engravers taken together
Skip_event_swallow_translator
Swallow \skip.

Music types accepted: skip-event

A2_engraver
Part combine engraver for orchestral scores. The markings a2, Solo and Solo II, are created by this engraver. It also acts upon instructions of the part combiner. Another thing that the this engraver, is forcing of stem, slur and tie directions, always when both threads are not identical; up for the musicexpr called one, down for the musicexpr called two.

Properties (read)


unirhythm (boolean)
set if unirhythm is detected by the part combiner.
unisilence (boolean)
set if unisilence is detected by the part combiner.
solo (boolean)
set if solo is detected by the part combiner.
unison (boolean)
set if unisono is detected by the part combiner. .
split-interval (boolean)
set if part-combiner separated voices based on splitInterval.
aDueText (string)
text for begin of a due
soloIIText (string)
text for begin of solo for voice "two" when part-combining.
soloText (string)
text for begin of solo when part-combining.
soloADue (boolean)
set Solo/A due texts in the part combiner?.
noDirection (boolean)
Don't set directions by a2-engraver when part-combining.
combineParts (boolean)
try to combine parts?
This engraver creates the following grobs: TextScript.
Tuplet_engraver
Catch Time_scaled_music and generate appropriate bracket

Music types accepted: time-scaled-music

Properties (read)


tupletInvisible (boolean)
If set to true, tuplet bracket creation is switched off entirely. This has the same effect as setting both tupletNumberVisibility and tupletBracketVisibility to #f, but as this does not even create any grobs, this setting uses less memory and time.
tupletSpannerDuration (moment)
Normally a tuplet bracket is as wide as the imes expression that gave rise to it. By setting this property, you can make brackets last shorter. Example
               @lilypond[verbatim,fragment]
               context Voice 	imes 2/3 {
                 property Voice.tupletSpannerDuration = #(ly:make-moment 1 4)
                 c-[8 c c-] c-[ c c-]
               }
               @end lilypond
               
.
tupletNumberFormatFunction (procedure)
Function taking a music as input, producing a string. This function is called to determine the text to print on a tuplet bracket.
This engraver creates the following grobs: TupletBracket.
Tie_engraver
Generate ties between noteheads of equal pitch.

Music types accepted: tie-event

Properties (read)


tieMelismaBusy (boolean)
Signal ties when automaticMelismata is set.
This engraver creates the following grobs: Tie and TieColumn.
Slur_engraver
Build slurs from Slur_evs

Music types accepted: slur-event

Properties (read)


slurMelismaBusy (boolean)
Signal a slur if automaticMelismata is set.
This engraver creates the following grobs: Slur.
Cluster_spanner_engraver
Engraves a cluster using Spanner notation

Music types accepted: abort-event and cluster-note-event

This engraver creates the following grobs: ClusterSpanner and ClusterSpannerBeacon.

Phrasing_slur_engraver
Print phrasing slurs. Similar to Slur_engraver

Music types accepted: phrasing-slur-event

This engraver creates the following grobs: PhrasingSlur.

Rhythmic_column_engraver
Generates NoteColumn, an objects that groups stems, noteheads and rests.

This engraver creates the following grobs: NoteColumn and NoteSpacing.

Script_column_engraver

This engraver creates the following grobs: ScriptColumn.

Script_engraver
Handles note scripted articulations.

Music types accepted: articulation-event and script-event

Properties (read)


scriptDefinitions (list)
Description of scripts. This is used by Script_engraver for typesetting note-super/subscripts. See scm/script.scm for more information
This engraver creates the following grobs: Script.
Fingering_engraver
Create fingering-scripts

Music types accepted: fingering-event

This engraver creates the following grobs: Fingering.

Dynamic_engraver
This engraver creates hairpins, dynamic texts, and their vertical alignments. The symbols are collected onto a DynamicLineSpanner grob which takes care of vertical positioning.

Music types accepted: decrescendo-event, crescendo-event and absolute-dynamic-event

This engraver creates the following grobs: DynamicLineSpanner, DynamicText, Hairpin and TextSpanner.

Text_engraver
Create text-scripts

Music types accepted: text-script-event

Properties (read)


scriptHorizontal (boolean)
Put scripts left or right of note heads. Support for this is limited. Accidentals will collide with scripts.
This engraver creates the following grobs: TextScript.
Melisma_engraver

Music types accepted: melisma-playing-event

Properties (read)


beamMelismaBusy (boolean)
Signal if a beam is set when automaticMelismata is set
tieMelismaBusy (boolean)
Signal ties when automaticMelismata is set.
slurMelismaBusy (boolean)
Signal a slur if automaticMelismata is set.
melismaBusyProperties (list)
List of properties (symbols) to determine whether a melisma is playing.
melismaBusy (boolean)
Signifies whether a melisma is active. This can be used to signal melismas on top of those automatically detected.
Properties (write)

melismaEngraverBusy (boolean)
See melismaBusy. This is set automatically.

Slash_repeat_engraver
Make beat repeats.

Music types accepted: repeated-music

Properties (read)


currentCommandColumn (grob (GRaphical OBject))
Grob that is X-parent to all current breakable (clef, key signature, etc.) items.
measureLength (moment)
Length of one measure in the current time signature last?
This engraver creates the following grobs: RepeatSlash.
Percent_repeat_engraver
Make whole bar and double bar repeats.

Music types accepted: repeated-music

Properties (read)


currentCommandColumn (grob (GRaphical OBject))
Grob that is X-parent to all current breakable (clef, key signature, etc.) items.
measureLength (moment)
Length of one measure in the current time signature last?
This engraver creates the following grobs: DoublePercentRepeat and PercentRepeat.
Chord_tremolo_engraver
Generates beams for tremolo repeats.

Music types accepted: repeated-music

This engraver creates the following grobs: Beam.

New_fingering_engraver
Create fingering-scripts for notes in a new chord.

Properties (read)


fingeringOrientations (list)
List of symbols, containing left, right, up and/or down. This list determines where fingerings are put wrt. to the chord being fingered.
This engraver creates the following grobs: Fingering.
Auto_beam_engraver
Generate beams based on measure characteristics and observed Stems. Uses beatLength, measureLength and measurePosition to decide when to start and stop a beam. Overriding beaming is done through Stem_engraver properties stemLeftBeamCount and stemRightBeamCount.

Properties (read)


subdivideBeams (boolean)
If set, multiple beams will be subdivided at beat positions - by only drawing one beam over the beat.
beatLength (moment)
The length of one beat in this time signature.
autoBeamSettings (list)
Specifies when automatically generated beams should begin and end. The elements have the format:
               
                  function shortest-duration-in-beam time-signature
               
               where
               
                   function = begin or end
                   shortest-duration-in-beam = numerator denominator; eg: 1 16
                   time-signature = numerator denominator, eg: 4 4
               
               unspecified or wildcard entries for duration or time-signature
               are given by * *
               
               The user can override beam begin or end time by pushing a wildcard entries
               '(begin * * * *) or '(end * * * *) resp., eg:
               
                   property Voice.autoBeamSettings push #'(end * * * *) = #(ly:make-moment 1 4)
               
               The head of the list:
                   '(
               ((end * * 3 2) . ,(ly:make-moment 1 2))
               ((end 1 16 3 2) . ,(ly:make-moment 1 4))
               ((end 1 32 3 2) . ,(ly:make-moment 1 8))
                    ...
                   )
               
               

autoBeaming (boolean)
If set to true then beams are generated automatically.
This engraver creates the following grobs: Beam.
Grace_beam_engraver
Handles Beam events by engraving Beams. If omitted, then notes will be printed with flags instead of beams. Only engraves beams when we are at grace points in time.

Music types accepted: abort-event and beam-event

Properties (read)


subdivideBeams (boolean)
If set, multiple beams will be subdivided at beat positions - by only drawing one beam over the beat.
allowBeamBreak (boolean)
If true allow line breaks during beams.
beatLength (moment)
The length of one beat in this time signature.
beamMelismaBusy (boolean)
Signal if a beam is set when automaticMelismata is set
This engraver creates the following grobs: Beam.
Beam_engraver
Handles Beam events by engraving Beams. If omitted, then notes will be printed with flags instead of beams.

Music types accepted: abort-event and beam-event

Properties (read)


subdivideBeams (boolean)
If set, multiple beams will be subdivided at beat positions - by only drawing one beam over the beat.
beatLength (moment)
The length of one beat in this time signature.
beamMelismaBusy (boolean)
Signal if a beam is set when automaticMelismata is set
This engraver creates the following grobs: Beam.
Stem_engraver
Create stems and single-stem tremolos. It also works together with the beam engraver for overriding beaming.

Music types accepted: tremolo-event

Properties (read)


stemRightBeamCount (integer)
idem, for the right side.
stemLeftBeamCount (integer)
Specify the number of beams to draw on the left side of the next note. Overrides automatic beaming. The value is only used once, and then it is erased. .
tremoloFlags (integer)
Number of tremolo flags to add if none is specified.
This engraver creates the following grobs: Stem and StemTremolo.
Breathing_sign_engraver

Music types accepted: breathing-event

This engraver creates the following grobs: BreathingSign.

Ligature_bracket_engraver
Handles Ligature_events by engraving Ligature brackets.

Music types accepted: abort-event and ligature-event

This engraver creates the following grobs: TupletBracket.

Glissando_engraver
Engrave a glissandi

Music types accepted: glissando-event

Properties (read)


followVoice (boolean)
if set, note heads are tracked across staff switches by a thin line
This engraver creates the following grobs: Glissando.
Note_head_line_engraver
Engrave a line between two note heads, for example a glissando. If followVoice is set, staff switches also generate a line.

Music types accepted: glissando-event

Properties (read)


followVoice (boolean)
if set, note heads are tracked across staff switches by a thin line
This engraver creates the following grobs: Glissando and VoiceFollower.
Grob_pq_engraver
Administrate when certain grobs (eg. note heads) stop playing; this engraver is a sort-of a failure, since it doesn't handle all sorts of borderline cases very well.

Properties (read)


busyGrobs (list)
a queue of (END-MOMENT . GROB) conses. This is for internal (C++) use only. Use at your own risk. This property contains the grobs for which END-MOMENT >= NOW.
Properties (write)

busyGrobs (list)
a queue of (END-MOMENT . GROB) conses. This is for internal (C++) use only. Use at your own risk. This property contains the grobs for which END-MOMENT >= NOW.

Text_spanner_engraver
Create text spanner from a Music.

Music types accepted: text-span-event

This engraver creates the following grobs: TextSpanner.

Multi_measure_rest_engraver
Engraves multi-measure rests that are produced with R. Reads measurePosition and currentBarNumber to determine what number to print over the MultiMeasureRest. Reads measureLength to determine if it should use a whole rest or a breve rest to represent 1 measure

Music types accepted: multi-measure-text-event and multi-measure-rest-event

Properties (read)


measureLength (moment)
Length of one measure in the current time signature last?
measurePosition (moment)
How much of the current measure (measured in whole notes) have we had. This can be set manually to create incomplete measures (anacrusis, upbeat), the start of the music.
currentCommandColumn (grob (GRaphical OBject))
Grob that is X-parent to all current breakable (clef, key signature, etc.) items.
restNumberThreshold (number)
If a multimeasure rest takes less than this number of measures, no number is printed.
currentBarNumber (integer)
Contains the current barnumber. This property is incremented at every barline.
This engraver creates the following grobs: MultiMeasureRest, MultiMeasureRestNumber and MultiMeasureRestText.
Arpeggio_engraver
Generate an Arpeggio from a Arpeggio_req

Music types accepted: arpeggio-event

This engraver creates the following grobs: Arpeggio.

Output_property_engraver
Interpret Music of Output_property type, and apply a function to any Graphic objects that satisfies the predicate.

Music types accepted: layout-instruction

Voice_devnull_engraver
Kill off certain items and spanners if we're Voice `two' and unison or unisilence is set.

Music types accepted: general-music

Font_size_engraver
Puts fontSize into font-relative-size grob property.

Properties (read)


fontSize (integer)
Used to set the relative size of all grobs in a context. This is done using the Font_size_engraver.

This page is for LilyPond-2.0.0 (stable-branch).

Report errors to <bug-lilypond@gnu.org>.