[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Rhythms ] | [ Up : Rhythms ] | [ Durations > ] |
1.2.1 Writing rhythms
Durations | ||
Tuplets | ||
Scaling durations | ||
Ties |
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Writing rhythms ] | [ Up : Writing rhythms ] | [ Tuplets > ] |
Durations
The durations of notes are entered using numbers and dots. The number
entered is based on the reciprocal value of the length of the note. For
example, a quarter note is designated using the numerical value of
4
as it is a 1/4 note, a half note using 2
, an eighth
using 8
and so on. Durations as short as 1024
notes can be
entered but shorter values, while possible, can only be entered as
beamed notes. Also see Beams.
For notes longer than a whole use the \longa
– double breve –
and \breve
commands. A note with the duration of a quadruple
breve is possible using the \maxima
command but is only supported
within ancient music notation. See Ancient notation.
\relative { \time 8/1 c''\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128 }
Here are the same durations with automatic beaming turned off.
\relative { \time 8/1 \autoBeamOff c''\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128 }
Isolated durations – durations without a pitch – that occur within a music sequence will take their pitch from the preceding note or chord.
\relative { \time 8/1 c'' \longa \breve 1 2 4 8 16 32 64 128 128 }
Isolated pitches – pitches without a duration – that occur within a
music sequence will take their duration from the preceding note or
chord. If there is no preceding duration, then default for the note is
always 4
, a quarter note.
\relative { a' a a2 a a4 a a1 a }
Place a dot (.
) after the duration to obtain ‘dotted’ note
lengths. Double-dotted notes are specified by appending two dots,
and so on.
\relative { a'4 b c4. b8 a4. b4.. c8. }
To avoid clashing with staff lines, dots on notes are normally moved up. In polyphonic situations however, they can be placed, manually, above or below the staff as required. See Direction and placement.
Some note durations cannot be represented using just numbers and dots but only by tying two or more notes together. See Ties.
To specify durations that align the syllables of lyrics and notes together see Vocal music.
Notes can also be spaced proportionately to their duration, see Proportional notation.
Predefined commands
\autoBeamOn
,
\autoBeamOff
,
\dotsUp
,
\dotsDown
,
\dotsNeutral
.
Selected Snippets
Alternative breve notes
Breve notes are also available with two vertical lines on each side of the notehead instead of one line and in baroque style.
\relative c'' { \time 4/2 c\breve | \override Staff.NoteHead.style = #'altdefault b\breve \override Staff.NoteHead.style = #'baroque b\breve \revert Staff.NoteHead.style a\breve }
Changing the number of augmentation dots per note
The number of augmentation dots on a single note can be changed independently of the dots placed after the note.
\relative c' { c4.. a16 r2 | \override Dots.dot-count = #4 c4.. a16 r2 | \override Dots.dot-count = #0 c4.. a16 r2 | \revert Dots.dot-count c4.. a16 r2 | }
See also
Music Glossary: breve, longa, maxima, note value, Duration names notes and rests.
Notation Reference: Beams, Ties, Stems, Writing rhythms, Writing rests, Vocal music, Ancient notation, Proportional notation.
Snippets: Rhythms.
Internals Reference: Dots, DotColumn.
Known issues and warnings
While there is no fundamental limit to rest durations (longest or
shortest), there is a limit to the number of glyphs possible so only
rests between 1024
and \maxima
may be printed.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Durations ] | [ Up : Writing rhythms ] | [ Scaling durations > ] |
Tuplets
Tuplets are made from a music expression with the \tuplet
command, multiplying the speed of the music expression by a fraction:
\tuplet fraction { music }
The fraction’s numerator will be printed over or under the notes, optionally with a bracket. The most common tuplets are triplets (3 notes played within the duration normally allowed for 2).
\relative { a'2 \tuplet 3/2 { b4 4 4 } c4 c \tuplet 3/2 { b4 a g } }
When entering long passages of tuplets, having to write a separate
\tuplet
command for each group is inconvenient. It is possible
to specify the duration of one tuplet group directly before the music
in order to have the tuplets grouped automatically:
\relative { g'2 r8 \tuplet 3/2 8 { cis16 d e e f g g f e } }
Tuplet brackets may be manually placed above or below the staff:
\relative { \tupletUp \tuplet 3/2 { c''8 d e } \tupletNeutral \tuplet 3/2 { c8 d e } \tupletDown \tuplet 3/2 { f,8 g a } \tupletNeutral \tuplet 3/2 { f8 g a } }
Tuplets may be nested:
\relative { \autoBeamOff c''4 \tuplet 5/4 { f8 e f \tuplet 3/2 { e[ f g] } } f4 }
Modifying nested tuplets which begin at the same musical moment must be
done with \tweak
; see The \tweak
command.
Tuplet brackets may be replaced with slurs, as is preferred in many older editions:
\relative { \tuplet 3/2 4 { \override TupletBracket.tuplet-slur = ##t c'4 e8 d4 f8 \override TupletBracket.bracket-visibility = ##t e f g f e d } c1 }
By default, a bracket is only printed if all of the notes it spans
are not beamed together; in some cases (for example with slurs, as
in the example above) it may be preferrable to change that behavior,
through the bracket-visibility
property as detailed in
one of the following snippets.
More generally, either or both the TupletBracket
and
TupletNumber
objects may be hidden or shown as explained in
Visibility of objects; however, a more flexible way of
modifying the duration of notes without printing a tuplet
bracket is also introduced in Scaling durations.
Predefined commands
\tupletUp
,
\tupletDown
,
\tupletNeutral
.
Selected Snippets
Entering several tuplets using only one tuplet command
The property tupletSpannerDuration
sets how long each of the
tuplets contained within the brackets after \tuplet
should
last. Many consecutive tuplets can then be placed within a single
\tuplet
expression, thus saving typing.
There are several ways to set tupletSpannerDuration
. The
command \tupletSpan
sets it to a given duration, and clears it
when instead of a duration \default
is specified. Another way
is to use an optional argument with \tuplet
.
\relative c' { \time 2/4 \tupletSpan 4 \tuplet 3/2 { c8^"\\tupletSpan 4" c c c c c } \tupletSpan \default \tuplet 3/2 { c8^"\\tupletSpan \\default" c c c c c } \tuplet 3/2 4 { c8^"\\tuplet 3/2 4 {...}" c c c c c } }
Changing the tuplet number
By default, only the numerator of the tuplet number is printed over the
tuplet bracket, i.e., the numerator of the argument to the
\tuplet
command.
Alternatively, num:den of the tuplet number may be printed, or the tuplet number may be suppressed altogether.
\relative c'' { \tuplet 3/2 { c8 c c } \tuplet 3/2 { c8 c c } \override TupletNumber.text = #tuplet-number::calc-fraction-text \tuplet 3/2 { c8 c c } \omit TupletNumber \tuplet 3/2 { c8 c c } }
Non-default tuplet numbers
LilyPond also provides formatting functions to print tuplet numbers different than the actual fraction, as well as to append a note value to the tuplet number or tuplet fraction.
\relative c'' { \once \override TupletNumber.text = #(tuplet-number::non-default-tuplet-denominator-text 7) \tuplet 3/2 { c4. c4. c4. c4. } \once \override TupletNumber.text = #(tuplet-number::non-default-tuplet-fraction-text 12 7) \tuplet 3/2 { c4. c4. c4. c4. } \once \override TupletNumber.text = #(tuplet-number::append-note-wrapper (tuplet-number::non-default-tuplet-fraction-text 12 7) (ly:make-duration 3 0)) \tuplet 3/2 { c4. c4. c4. c4. } \once \override TupletNumber.text = #(tuplet-number::append-note-wrapper tuplet-number::calc-denominator-text (ly:make-duration 2 0)) \tuplet 3/2 { c8 c8 c8 c8 c8 c8 } \once \override TupletNumber.text = #(tuplet-number::append-note-wrapper tuplet-number::calc-fraction-text (ly:make-duration 2 0)) \tuplet 3/2 { c8 c8 c8 c8 c8 c8 } \once \override TupletNumber.text = #(tuplet-number::fraction-with-notes (ly:make-duration 2 1) (ly:make-duration 3 0)) \tuplet 3/2 { c4. c4. c4. c4. } \once \override TupletNumber.text = #(tuplet-number::non-default-fraction-with-notes 12 (ly:make-duration 3 0) 4 (ly:make-duration 2 0)) \tuplet 3/2 { c4. c4. c4. c4. } }
Controlling tuplet bracket visibility
The default behavior of tuplet bracket visibility is to print a bracket unless there is a beam of the same length as the tuplet.
To control the visibility of tuplet brackets, set the property
'bracket-visibility
to either #t
(always print a
bracket), 'if-no-beam
(only print a bracket if there is no
beam), or #f
(never print a bracket). The latter is in fact
equivalent to omitting the TupletBracket
object altogether
from the printed output.
music = \relative c'' { \tuplet 3/2 { c16[ d e } f8] \tuplet 3/2 { c8 d e } \tuplet 3/2 { c4 d e } } \new Voice { \relative c' { \override Score.TextMark.non-musical = ##f \textMark "default" \music \override TupletBracket.bracket-visibility = #'if-no-beam \textMark \markup \typewriter "'if-no-beam" \music \override TupletBracket.bracket-visibility = ##t \textMark \markup \typewriter "#t" \music \override TupletBracket.bracket-visibility = ##f \textMark \markup \typewriter "#f" \music \omit TupletBracket \textMark \markup \typewriter "omit" \music } }
Printing tuplet brackets on the note head side
Whichever option you choose for controlling the tuplet bracket
visibility, it will show or hide the tuplet bracket irrespectively
of tuplet bracket placement (stem side or note head side).
However, when placing the tuplet bracket on the note head side some
authors recommend always printing the tuplet bracket. The option
visible-over-note-heads
can be used to achieve this.
music = \relative c'' { \tupletNeutral \tuplet 3/2 { c16[ d e } f8] \tupletUp \tuplet 3/2 { c8 d e } } \new Voice { \relative c' { \time 2/4 \override TupletBracket.visible-over-note-heads = ##t \override Score.TextMark.non-musical = ##f { \textMark \markup "default" \music } \override TupletBracket.bracket-visibility = #'if-no-beam { \textMark \markup \typewriter "'if-no-beam" \music } } }
Permitting line breaks within beamed tuplets
This artificial example shows how both manual and automatic line breaks may be permitted to within a beamed tuplet. Note that such off-beat tuplets have to be beamed manually.
\layout { \context { \Voice % Permit line breaks within tuplets \remove "Forbid_line_break_engraver" % Allow beams to be broken at line breaks \override Beam.breakable = ##t } } \relative c'' { a8 \repeat unfold 5 { \tuplet 3/2 { c[ b a] } } % Insert a manual line break within a tuplet \tuplet 3/2 { c[ b \bar "" \break a] } \repeat unfold 5 { \tuplet 3/2 { c[ b a] } } c8 }
See also
Music Glossary: triplet, tuplet, polymetric.
Learning Manual: Tweaking methods.
Notation Reference:
Direction and placement,
Visibility of objects,
Time administration,
Scaling durations,
The \tweak
command,
Polymetric notation.
Snippets: Rhythms.
Internals Reference: TupletBracket, TupletNumber, TimeScaledMusic.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Tuplets ] | [ Up : Writing rhythms ] | [ Ties > ] |
Scaling durations
The duration of single notes, rests or chords may be multiplied by
a fraction N/M
by appending *N/M
(or *N
if
M
is 1) to the duration. Factors may also be added by
using Scheme expressions evaluating to a number or musical length
like *#(ly:music-length music)
. This is convenient
for scaling a duration of ‘1’ to let a note or multi-measure
rest stretch to a length derived from a music variable.
Adding a factor will not affect the appearance of the
notes or rests produced, but the altered duration will be used in
calculating the position within the measure and setting the duration
in the MIDI output. Multiplying factors may be combined like
*L*M/N
. Factors are part of the duration: if a duration is
not specified for subsequent notes, the default duration taken from
the preceding note will include any scaling factor.
In the following example, the first three notes take up exactly two beats, but no triplet bracket is printed.
\relative { \time 2/4 % Alter durations to triplets a'4*2/3 gis a % Normal durations a4 a % Double the duration of chord <a d>4*2 % Duration of quarter, appears like sixteenth b16*4 c4 }
The duration of spacer rests may also be modified by
a multiplier. This is useful for skipping many measures, e.g.,
s1*23
.
Longer stretches of music may be compressed by a fraction in the same way, as if every note, chord or rest had the fraction as a multiplier. This leaves the appearance of the music unchanged but the internal duration of the notes will be multiplied by the given scale factor, usually num/den. Here is an example showing how music can be compressed and expanded:
\relative { \time 2/4 % Normal durations <c'' a>4 c8 a % Scale music by *2/3 \scaleDurations 2/3 { <c a f>4. c8 a f } % Scale music by *2 \scaleDurations 2 { <c' a>4 c8 b } }
One application of this command is in polymetric notation, see Polymetric notation.
See also
Notation Reference: Tuplets, Invisible rests, Polymetric notation.
Snippets: Rhythms.
Known issues and warnings
The calculation of the position within a measure must take into account all the scaling factors applied to the notes within that measure and any fractional carry-out from earlier measures. This calculation is carried out using rational numbers. If an intermediate numerator or denominator in that calculation exceeds 2^30 the execution and typesetting will stop at that point without indicating an error.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Scaling durations ] | [ Up : Writing rhythms ] | [ Writing rests > ] |
Ties
A tie connects two adjacent note heads of the same pitch. The tie in effect extends the duration of a note.
Ties that connect notes to nothing are called laissez vibrer
articulation; see Laissez vibrer for the \laissezVibrer
command. Ties that connect nothing to notes (as needed in seconda
volta sections, for example), can be entered with the \repeatTie
command; see Repeat tie.
Note: Ties should not be confused with slurs, which indicate articulation, or phrasing slurs, which indicate musical phrasing. A tie is just a way of extending a note duration, similar to the augmentation dot.
A tie is entered by appending a tilde symbol (~
) to the first
of each pair of notes being tied. This indicates that the note
should be tied to the following note, which must be at the same pitch.
{ a'2~ 4~ 16 r r8 }
Ties can make use of the ‘last explicit pitch’ interpretation of isolated durations:
{ a'2~ 4~ 16 r r8 }
Ties are used either when the note crosses a bar line, or when dots cannot be used to denote the rhythm. Ties should also be used when note values cross larger subdivisions of the measure:
\relative { r8 c'4.~ 4 r4 | r8^"not" c2~ 8 r4 }
If you need to tie many notes across bar lines, it may be easier to use automatic note splitting, see Automatic note splitting. This mechanism automatically splits long notes, and ties them across bar lines.
When a tie is applied to a chord, all note heads whose pitches match are connected. When no note heads match, no ties will be created. Chords may be partially tied by placing the ties inside the chord.
\relative c' { <c e g>2~ 2 | <c e g>4~ <c e g c> <c~ e g~ b> <c e g b> | }
When a tie continues into alternative endings, you have to specify the repeated tie as follows:
\relative { \repeat volta 2 { c'' g <c e>2~ } \alternative { % the following note is tied normally \volta 1 { <c e>2. r4 } % the following note has a repeated tie \volta 2 { <c e>2\repeatTie d4 c } } }
L.v. ties (laissez vibrer) indicate that notes must not be damped at the end. It is used in notation for piano, harp and other string and percussion instruments. They can be entered as follows:
<c' f' g'>1\laissezVibrer
Ties may be made to curve up or down manually; see Direction and placement.
Ties may be made dashed, dotted, or a combination of solid and dashed.
\relative c' { \tieDotted c2~ 2 \tieDashed c2~ 2 \tieHalfDashed c2~ 2 \tieHalfSolid c2~ 2 \tieSolid c2~ 2 }
Custom dash patterns can be specified:
\relative c' { \tieDashPattern #0.3 #0.75 c2~ 2 \tieDashPattern #0.7 #1.5 c2~ 2 \tieSolid c2~ 2 }
Dash pattern definitions for ties have the same structure as dash pattern definitions for slurs. For more information about complex dash patterns, see Slurs.
Override whiteout and layer layout properties of objects that should cause a gap in ties.
\relative { \override Tie.layer = #-2 \override Staff.TimeSignature.layer = #-1 \override Staff.KeySignature.layer = #-1 \override Staff.TimeSignature.whiteout = ##t \override Staff.KeySignature.whiteout = ##t b'2 b~ \time 3/4 \key a \major b r4 }
Predefined commands
\tieUp
,
\tieDown
,
\tieNeutral
,
\tieDotted
,
\tieDashed
,
\tieDashPattern
,
\tieHalfDashed
,
\tieHalfSolid
,
\tieSolid
.
Selected Snippets
Using ties with arpeggios
Ties are sometimes used to write out arpeggios. In this case, two tied
notes need not be consecutive. This can be achieved by setting the
tieWaitForNote
property to #t
. The same feature is also
useful, for example, to tie a tremolo to a chord, but in principle, it
can also be used for ordinary consecutive notes.
\relative c' { \set tieWaitForNote = ##t \grace { c16[ ~ e ~ g] ~ } <c, e g>2 \repeat tremolo 8 { c32 ~ c' ~ } <c c,>1 e8 ~ c ~ a ~ f ~ <e' c a f>2 \tieUp c8 ~ a \tieDown \tieDotted g8 ~ c g2 }
Engraving ties manually
Ties may be engraved manually by changing the tie-configuration
property of the TieColumn
object. The first number indicates the
distance from the center of the staff in half staff-spaces, and the
second number indicates the direction (1 = up, -1 = down).
Note that LilyPond makes a distinction between exact and inexact values
for the first number. If using an exact value (i.e., either an integer
or a fraction like (/ 4 5)
), the value serves as a rough
vertical position that gets further tuned by LilyPond to make the tie
avoid staff lines. If using an inexact value like a floating point
number, it is taken as the vertical position without further
adjustments.
\relative c' { <c e g>2~ <c e g> \override TieColumn.tie-configuration = #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1)) <c e g>2~ <c e g> \override TieColumn.tie-configuration = #'((0 . 1) (-2 . 1) (-4 . 1)) <c e g>2~ <c e g> }
See also
Music Glossary: tie, laissez vibrer.
Notation Reference: Slurs, Automatic note splitting.
Snippets: Expressive marks, Rhythms.
Internals Reference: LaissezVibrerTie, LaissezVibrerTieColumn, TieColumn, Tie.
Known issues and warnings
Switching staves when a tie is active will not produce a slanted tie.
Changing clefs or ottavations during a tie is not really well-defined. In these cases, a slur may be preferable.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Scaling durations ] | [ Up : Writing rhythms ] | [ Writing rests > ] |