[icon]

GNU LilyPond

-- --

What is LilyPond
Home
Examples
Templates
Download
GNU/Linux binaries
Windows binaries
Source code
Documentation
Tutorial
Manual
Glossary
Index

Support
Mailing lists
Search
WikiWiki

External sites
lilypond.org/stable
lilypond.org/development
savannah.gnu.org
ftp.lilypond.org
Mutopia
Other music online

Node:TabVoice, Next:, Previous:TabStaff, Up:Contexts



TabVoice

This context creates the following grobs: Arpeggio, Beam, BreathingSign, Cluster, Dots, DoublePercentRepeat, DynamicLineSpanner, DynamicText, Fingering, Hairpin, MultiMeasureRestNumber, MultiMeasureRest, NoteColumn, NoteSpacing, PercentRepeat, PhrasingSlur, Porrectus, RepeatSlash, ScriptColumn, Script, Slur, StemTremolo, Stem, TabNoteHead, TextScript, TextSpanner, TieColumn, Tie and TupletBracket.

This context sets the following properties:

  • Set grob-property direction in Slur to -1
  • Set grob-property molecule-callback in Slur to hammer-molecule-callback
  • Set grob-property font-family in Slur to 'roman
  • Set translator property localKeySignature to '()

This context is a `bottom' context; it can not contain other contexts.

This context is built from the following engravers:


Engraver_group_engraver
A group of engravers taken together
Tab_note_heads_engraver
Generate one or more tablature noteheads from Music of type Note_req.

Music types accepted: busy-playing-event, string-number-event and note-event

Properties (read)


stringOneTopmost (boolean)
Whether the 1st string is printed on the top line of the tablature.
highStringOne (boolean)
Whether the 1st string is the string with highest pitch on the instrument (used by the automatic string selector).
tablatureFormat (procedure)
Function formatting a tab notehead; it takes a string number, a list of string tunings and Pitch object. It returns the text as a string.
minimumFret (number)
The tablature auto string-selecting mechanism selects the highest string with a fret not less than minimumFret
stringTunings (list)
The tablature strings tuning. Must be a list of the different semitons pitch of each string (starting by the lower one).
centralCPosition (number)
Place of the central C, measured in half staffspaces. Usually determined by looking at clefPosition and clefGlyph.
This engraver creates the following grobs: Dots and TabNoteHead.
Skip_req_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)
                 [c8 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.
Porrectus_engraver
Join adjacent notes to a porrectus ligature.

Music types accepted: porrectus-event

This engraver creates the following grobs: Porrectus.

New_tie_engraver
Generate ties between noteheads of equal pitch.

Music types accepted: new-tie-event

Properties (read)


tieMelismaBusy (boolean)
Signal ties when automaticMelismata is set.
This engraver creates the following grobs: Tie and TieColumn.
Tie_engraver
Generate ties between noteheads of equal pitch.

Music types accepted: tie-event

Properties (read)


tieMelismaBusy (boolean)
Signal ties when automaticMelismata is set.
sparseTies (boolean)
only create one tie per chord.
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_engraver
engraves a cluster

Music types accepted: cluster-event

This engraver creates the following grobs: Cluster.

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.
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.

Percent_repeat_engraver
Make beat, 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, PercentRepeat and RepeatSlash.
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.

Music types accepted: text-script-event

Properties (read)


fingerHorizontalDirection (integer)
If set, put the middle fingerings to the side of the note head. Use LEFT, RIGHT or unset.
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: new-beam-event, 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.
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, new-beam-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.

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-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 and MultiMeasureRestNumber.
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.

Go back to index of LilyPond.

Please send GNU LilyPond questions and comments to lilypond-user@gnu.org.

Please send comments on these web pages to (address unknown)

Copyright (c) 1997--2002 Han-Wen Nienhuys and Jan Nieuwenhuizen.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.


This page was built from LilyPond-1.7.14 (development-branch) by

Buchan Milne <(address unknown)>, Thu Mar 6 21:11:35 2003 CET.