X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fuser%2Fbasic-notation.itely;h=ad2cc92492fd2833b46cbfa6467986f8f239f2ba;hb=3113ee98e4d0c3753a2f7b60fffe5dfa47384935;hp=e19e01ef24f2e6ecbf3942440e2b79e70a65a561;hpb=9755f17b5141ae25e1ad683c445a4505702f0b1f;p=lilypond.git diff --git a/Documentation/user/basic-notation.itely b/Documentation/user/basic-notation.itely index e19e01ef24..ad2cc92492 100644 --- a/Documentation/user/basic-notation.itely +++ b/Documentation/user/basic-notation.itely @@ -1,5 +1,12 @@ @c -*- coding: utf-8; mode: texinfo; -*- @c This file is part of lilypond.tely +@ignore + Translation of GIT committish: FILL-IN-HEAD-COMMITTISH + + When revising a translation, copy the HEAD committish of the + version that you are working on. See TRANSLATION for details. +@end ignore + @c A menu is needed before every deeper *section nesting of @node's; run @c M-x texinfo-all-menus-update @@ -64,8 +71,8 @@ c1 c1 @end lilypond -@findex ' -@findex , +@funindex ' +@funindex , The optional octave specification takes the form of a series of single quote (`@code{'}') characters or a series of comma @@ -92,20 +99,21 @@ octave specifications (@code{'} and @code{,}). See @cindex note names, default A sharp is formed by adding @code{-is} to the end of a pitch name and -a flat is formed by adding @code{-es} +a flat is formed by adding @code{-es}. Double sharps and double flats +are obtained by adding @code{-isis} or @code{-eses} to a note name. @lilypond[quote,ragged-right,fragment,verbatim,relative=2] a2 ais a aes +a2 aisis a aeses @end lilypond -Double sharps and double flats -are obtained by adding @code{-isis} or @code{-eses} to a note name. These -are the Dutch note names. In Dutch, @code{aes} is contracted to +@noindent +These are the Dutch note names. In Dutch, @code{aes} is contracted to @code{as}, but both forms are accepted. Similarly, both @code{es} and @code{ees} are accepted @lilypond[fragment,quote,ragged-right,verbatim,relative=2] -a2 aisis a aeses +a2 as e es @end lilypond A natural will cancel the effect of an accidental or key signature. @@ -116,6 +124,18 @@ suffix; a natural pitch is shown as a simple note name a4 aes a2 @end lilypond +The input @code{d e f} is interpreted as ``print a D-natural, +E-natural, and an F-natural,'' regardless of the key +signature. For more information about the distinction between +musical content and the presentation of that content, see +@ref{More about pitches}. + +@lilypond[fragment,quote,ragged-right,verbatim,relative] +\key d \major +d e f g +d e fis g +@end lilypond + @commonprop @@ -144,10 +164,10 @@ Program reference: @internalsref{LedgerLineSpanner}, @cindex accidental, cautionary @cindex accidental, parenthesized @cindex reminder accidental -@findex ? +@funindex ? @cindex cautionary accidental @cindex parenthesized accidental -@findex ! +@funindex ! Normally accidentals are printed automatically, but you may also print them manually. A reminder accidental @@ -202,7 +222,7 @@ file. The available language files and the note names they define are @c what about micro-tunes, double-sharps, and double-flats? add -@c more clumns to the table? +@c more columns to the table? @c Oh, and should this be made into a multitable? @cindex note names, other languages @example @@ -270,6 +290,7 @@ Here is the relative mode shown in action @end lilypond Octave changing marks are used for intervals greater than a fourth + @lilypond[quote,ragged-right,fragment,verbatim] \relative c'' { c g c f, c' a, e'' @@ -287,7 +308,7 @@ to determine the first note of the next chord } @end lilypond -The pitch after the @code{\relative} contains a note name. +The pitch after @code{\relative} contains a note name. The relative conversion will not affect @code{\transpose}, @code{\chordmode} or @code{\relative} sections in its argument. To use @@ -321,11 +342,13 @@ There is also an octave check that produces no visible output. The syntax @end example This checks that @var{pitch} (without quotes) yields @var{pitch} (with -quotes) in @code{\relative} mode. If not, a warning is printed, and the +quotes) in @code{\relative} mode compared to the note given in the +@code{\relative} command. If not, a warning is printed, and the octave is corrected. The @var{pitch} is not printed as a note. In the example below, the first check passes without incident, since -the @code{e} (in relative mode) is within a fifth of @code{a'}. However, +the @code{e} (in @code{relative} mode) is within a fifth of +@code{a'}. However, the second check produces a warning, since the @code{e} is not within a fifth of @code{b'}. The warning message is printed, and the octave is adjusted so that the following notes are in the correct octave @@ -360,7 +383,7 @@ the output of the piece. @cindex Transpose @cindex Transposition of pitches -@findex \transpose +@funindex \transpose A music expression can be transposed with @code{\transpose}. The syntax is @@ -414,7 +437,7 @@ begins on concert D, one would write \transpose c bes @{ e4 @dots{} @} @end example -To print this music in B-flat again (i.e. producing a trumpet part, +To print this music in B-flat again (i.e., producing a trumpet part, instead of a concert pitch conductor's score) you would wrap the existing music with another @code{transpose} @@ -427,12 +450,14 @@ existing music with another @code{transpose} Program reference: @internalsref{TransposedMusic}. +Example: @inputfileref{input/@/test,smart@/-transpose@/.ly}. + @refbugs If you want to use both @code{\transpose} and @code{\relative}, you must put @code{\transpose} outside of @code{\relative}, since -@code{\relative} will have no effect music that appears inside a +@code{\relative} will have no effect on music that appears inside a @code{\transpose}. @@ -440,8 +465,8 @@ you must put @code{\transpose} outside of @code{\relative}, since @subsection Rests @cindex Rests -@findex \rest -@findex r +@funindex \rest +@funindex r Rests are entered like notes with the note name @code{r} @@ -478,8 +503,8 @@ Program reference: @internalsref{Rest}. @cindex Skip @cindex Invisible rest @cindex Space note -@findex \skip -@findex s +@funindex \skip +@funindex s An invisible rest (also called a `skip') can be entered like a note with note name `@code{s}' or with @code{\skip @var{duration}} @@ -538,16 +563,16 @@ This section discusses rhythms, durations, and bars. @subsection Durations @cindex duration -@findex \longa -@findex \breve -@findex \maxima +@funindex \longa +@funindex \breve +@funindex \maxima In Note, Chord, and Lyrics mode, durations are designated by numbers and dots: durations are entered as their reciprocal values. For example, a quarter note is entered using a @code{4} (since it is a 1/4 note), while a half note is entered using a @code{2} (since it is a 1/2 note). For -notes longer than a whole you must use the variables @code{\longa} and -@code{\breve} +notes longer than a whole you must use the @code{\longa} and +@code{\breve} commands @example c'\breve @@ -568,6 +593,11 @@ r1 r2 r4 r8 r16 r32 r64 r64 } \layout { ragged-right = ##t + indent=0\mm + \context { + \Score + \remove "Bar_number_engraver" + } \context { \Staff \remove "Clef_engraver" @@ -591,7 +621,7 @@ duration. The default for the first note is a quarter note. @node Augmentation dots @subsection Augmentation dots -@findex . +@funindex . To obtain dotted note lengths, simply add a dot (`@code{.}') to the number. Double-dotted notes are produced in a similar way. @@ -606,11 +636,11 @@ Dots are normally moved up to avoid staff lines, except in polyphonic situations. The following commands may be used to force a particular direction manually -@findex \dotsUp +@funindex \dotsUp @code{\dotsUp}, -@findex \dotsDown +@funindex \dotsDown @code{\dotsDown}, -@findex \dotsNeutral +@funindex \dotsNeutral @code{\dotsNeutral}. @seealso @@ -623,7 +653,7 @@ Program reference: @internalsref{Dots}, and @internalsref{DotColumn}. @cindex tuplets @cindex triplets -@findex \times +@funindex \times Tuplets are made out of a music expression by multiplying all durations with a fraction @@ -646,7 +676,7 @@ g'4 \times 2/3 {c'4 c' c'} d'4 d'4 Tuplets may be nested, for example, @lilypond[fragment,ragged-right,verbatim,relative=2] -\set tupletNumberFormatFunction = #fraction-tuplet-formatter +\override TupletNumber #'text = #tuplet-number::calc-fraction-text \times 4/6 { a4 a \times 3/5 { a a a a a } @@ -655,17 +685,17 @@ Tuplets may be nested, for example, @refcommands -@findex \tupletUp +@funindex \tupletUp @code{\tupletUp}, -@findex \tupletDown +@funindex \tupletDown @code{\tupletDown}, -@findex \tupletNeutral +@funindex \tupletNeutral @code{\tupletNeutral}. @commonprop -@findex tupletNumberFormatFunction +@funindex tupletNumberFormatFunction @cindex tuplet formatting The property @code{tupletSpannerDuration} specifies how long each @@ -683,11 +713,10 @@ used once For more information about @code{make-moment}, see @ref{Time administration}. -The format of the number is determined by the property -@code{tupletNumberFormatFunction}. The default prints only the -denominator, but if it is set to the Scheme function -@code{fraction-tuplet-formatter}, @var{num}:@var{den} will be printed -instead. +The format of the number is determined by the property @code{text} in +@code{TupletNumber}. The default prints only the denominator, but if +it is set to the function @code{tuplet-number::calc-fraction-text}, +@var{num}:@var{den} will be printed instead. To avoid printing tuplet numbers, use @@ -697,6 +726,26 @@ To avoid printing tuplet numbers, use \times 2/3 { c8 c c } \times 2/3 { c8 c c } @end lilypond +Tuplet brackets can be made to run to prefatory matter or +the next note + +@lilypond[ragged-right] +\new RhythmicStaff { + \set tupletFullLength = ##t + \time 4/4 + \times 4/5 { + c4 c1 + } + \set tupletFullLengthNote = ##t + \time 2/4 + \times 2/3 { + c4 c c + } + \time 3/4 + c4 +} +@end lilypond + @seealso @@ -733,8 +782,8 @@ This manual: @ref{Tuplets} @subsection Bar check @cindex Bar check -@findex barCheckSynchronize -@findex | +@funindex barCheckSynchronize +@funindex | Bar checks help detect errors in the durations. A bar check is entered using the bar symbol, `@code{|}'. Whenever it is encountered @@ -759,8 +808,8 @@ durations. Incorrect durations often completely garble up the score, especially if the score is polyphonic, so a good place to start correcting input is by scanning for failed bar checks and incorrect durations. -@findex | -@findex pipeSymbol +@funindex | +@funindex pipeSymbol It is also possible to redefine the meaning of @code{|}. This is done by assigning a music expression to @code{pipeSymbol}, @@ -811,6 +860,10 @@ ties. One of its uses is to debug complex scores: if the measures are not entirely filled, then the ties exactly show how much each measure is off. +If you want to allow line breaking on the bar lines where +@internalsref{Completion_heads_engraver} splits notes, you must +also remove @internalsref{Forbid_line_breaks_engraver}. + @refbugs @@ -852,8 +905,8 @@ one voice on the same staff. @cindex Chords -A chord is formed by a enclosing a set of pitches in @code{<} and -@code{>}. A chord may be followed by a duration, and a set of +A chord is formed by a enclosing a set of pitches between @code{<} +and @code{>}. A chord may be followed by a duration, and a set of articulations, just like simple notes @lilypond[verbatim,ragged-right,fragment,quote,relative=1] @@ -872,11 +925,11 @@ made invisible. @refcommands -@findex \stemUp +@funindex \stemUp @code{\stemUp}, -@findex \stemDown +@funindex \stemDown @code{\stemDown}, -@findex \stemNeutral +@funindex \stemNeutral @code{\stemNeutral}. @@ -902,7 +955,7 @@ The easiest way to enter fragments with more than one voice on a staff is to enter each voice as a sequence (with @code{@{...@}}), and combine them simultaneously, separating the voices with @code{\\} -@findex \\ +@funindex \\ @lilypond[quote,verbatim,fragment] \new Staff \relative c' { @@ -935,6 +988,8 @@ second voice in the first @code{<< \\ >>} construct is effective in the second @code{<< \\ >>}, and the voice is tied across the two constructs. +@cindex note heads, styles + @lilypond[quote,verbatim,fragment] \new Staff \relative c' { \override NoteHead #'style = #'cross @@ -1092,6 +1147,10 @@ Similarly, you can merge half note heads with eighth notes, by setting c8 c4. } \\ { c2 c2 } >> @end lilypond +@noindent +@code{merge-differently-headed} and @code{merge-differently-dotted} +only apply to opposing stem directions (ie. Voice 1 & 2). + LilyPond also vertically shifts rests that are opposite of a stem, for example @@ -1102,24 +1161,24 @@ for example @refcommands -@findex \oneVoice +@funindex \oneVoice @code{\oneVoice}, -@findex \voiceOne +@funindex \voiceOne @code{\voiceOne}, -@findex \voiceTwo +@funindex \voiceTwo @code{\voiceTwo}, -@findex \voiceThree +@funindex \voiceThree @code{\voiceThree}, -@findex \voiceFour +@funindex \voiceFour @code{\voiceFour}. -@findex \shiftOn +@funindex \shiftOn @code{\shiftOn}, -@findex \shiftOnn +@funindex \shiftOnn @code{\shiftOnn}, -@findex \shiftOnnn +@funindex \shiftOnnn @code{\shiftOnnn}, -@findex \shiftOff +@funindex \shiftOff @code{\shiftOff}: these commands specify in what chords of the current voice should be shifted. The outer voices (normally: voice one and two) have @code{\shiftOff}, while the inner voices (three and four) @@ -1193,7 +1252,7 @@ such as key signatures, clefs and time signatures. @node Clef @subsection Clef -@findex \clef +@funindex \clef The clef indicates which lines of the staff correspond to which pitches. The clef is set with the @code{\clef} command @@ -1289,6 +1348,8 @@ possibilities when setting properties manually. @seealso +Manual: @ref{Grace notes}. + Program reference: @internalsref{Clef}. @@ -1296,7 +1357,7 @@ Program reference: @internalsref{Clef}. @subsection Key signature @cindex Key signature -@findex \key +@funindex \key The key signature indicates the tonality in which a piece is played. It is denoted by a set of alterations (flats or sharps) at the start of the @@ -1309,16 +1370,16 @@ command @code{\key} @var{pitch} @var{type} @end example -@findex \minor -@findex \major -@findex \minor -@findex \ionian -@findex \locrian -@findex \aeolian -@findex \mixolydian -@findex \lydian -@findex \phrygian -@findex \dorian +@funindex \minor +@funindex \major +@funindex \minor +@funindex \ionian +@funindex \locrian +@funindex \aeolian +@funindex \mixolydian +@funindex \lydian +@funindex \phrygian +@funindex \dorian @cindex church modes Here, @var{type} should be @code{\major} or @code{\minor} to get @@ -1333,7 +1394,13 @@ can be specified by setting this property directly. Accidentals and key signatures often confuse new users, because unaltered notes get natural signs depending on the key signature. For -more information, see @ref{More about pitches}. +more information, see @ref{Accidentals} or @ref{More about pitches}. + +@lilypond[quote,ragged-right,verbatim,relative=2,fragment] +\key g \major +f1 +fis +@end lilypond @commonprop @@ -1366,7 +1433,7 @@ Program reference: @internalsref{KeyCancellation}, @cindex Time signature @cindex meter -@findex \time +@funindex \time Time signature indicates the metrum of a piece: a regular pattern of strong and weak beats. It is denoted by a fraction at the start of the @@ -1451,7 +1518,7 @@ Automatic beaming does not use the measure grouping specified with @cindex partial measure @cindex measure, partial @cindex shorten measures -@findex \partial +@funindex \partial Partial measures, such as an anacrusis or upbeat, are entered using the @@ -1465,6 +1532,9 @@ The syntax for this command is \partial @var{duration} @end example +where @code{duration} is the rhythmic length to be added before +the next bar. + This is internally translated into @example @@ -1472,7 +1542,9 @@ This is internally translated into @end example The property @code{measurePosition} contains a rational number -indicating how much of the measure has passed at this point. +indicating how much of the measure has passed at this point. Note +that this is a negative number; @code{\partial 4} is internally +translated to mean ``there is a quarter note left in the bar''. @refbugs @@ -1488,12 +1560,16 @@ g4 a2 g2 @end lilypond +@code{\partial} is only intended to be used at the beginning of a +piece. If you use it after the beginning, some odd warnings may +occur. + @node Bar lines @subsection Bar lines @cindex Bar lines -@findex \bar +@funindex \bar @cindex measure lines @cindex repeat bars @@ -1524,11 +1600,12 @@ To allow a line break where there is no visible bar line, use @noindent This will insert an invisible bar line and allow line breaks at this -point. +point (without increasing the bar number counter). In scores with many staves, a @code{\bar} command in one staff is automatically applied to all staves. The resulting bar lines are -connected between different staves of a StaffGroup +connected between different staves of a @code{StaffGroup}, +@code{PianoStaff}, or @code{ChoirStaff}. @lilypond[quote,ragged-right,fragment,verbatim] << @@ -1547,9 +1624,9 @@ connected between different staves of a StaffGroup @commonprop -@findex whichBar -@findex repeatCommands -@findex defaultBarType +@funindex whichBar +@funindex repeatCommands +@funindex defaultBarType The command @code{\bar }@var{bartype} is a short cut for doing @code{\set Timing.whichBar = }@var{bartype}. Whenever @code{whichBar} @@ -1572,15 +1649,13 @@ In this manual: @ref{Repeats}, @ref{System start delimiters}. Program reference: @internalsref{BarLine} (created at @internalsref{Staff} level), @internalsref{SpanBar} (across staves). -Examples: @inputfileref{input/@/test,bar@/-lines@/.ly}, - @node Unmetered music @subsection Unmetered music @cindex cadenza -@findex \cadenzaOn -@findex \cadenzaOff +@funindex \cadenzaOn +@funindex \cadenzaOff Bar lines and bar numbers are calculated automatically. For unmetered music (cadenzas, for example), this is not desirable. To turn off @@ -1599,8 +1674,9 @@ d4 e d c @refbugs -LilyPond will only insert page breaks at a barline. Unless the unmetered -music ends before the end of the staff line, you will need to insert +LilyPond will only insert line breaks and page breaks at a +barline. Unless the unmetered music ends before the end of +the staff line, you will need to insert invisible bar lines @example @@ -1608,7 +1684,7 @@ invisible bar lines @end example @noindent -to indicate where line breaks can occur. +to indicate where breaks can occur. @node System start delimiters @@ -1678,7 +1754,25 @@ The bar lines at the start of each system are @internalsref{SystemStartBar}, @internalsref{SystemStartBrace}, and @internalsref{SystemStartBracket}. Only one of these types is created in every context, and that type is determined by the property -@code{systemStartDelimiter}. +@internalsref{systemStartDelimiter}. + + +@commonprop + +System start delimiters may be deeply nested, + +@lilypond[quote,ragged-right,verbatim] +\new StaffGroup +\relative << + \set StaffGroup.systemStartDelimiterHierarchy + = #'(SystemStartSquare (SystemStartBracket a (SystemStartSquare b)) d) + \new Staff { c1 } + \new Staff { c1 } + \new Staff { c1 } + \new Staff { c1 } + \new Staff { c1 } +>> +@end lilypond @node Staff symbol @@ -1689,7 +1783,7 @@ in every context, and that type is determined by the property Notes, dynamic signs, etc., are grouped with a set of horizontal lines, called a staff (plural `staves'). In LilyPond, these lines are drawn using a separate layout object called -staff symbol. +@code{staff symbol}. The staff symbol may be tuned in the number, thickness and distance of lines, using properties. This is demonstrated in the example files @@ -1710,8 +1804,7 @@ b b @end lilypond In combination with Frenched staves, this may be used to typeset ossia -sections. An example is in @inputfileref{input/@/test@/,ossia.ly}, -shown here +sections. An example is shown here @cindex ossia @@ -1753,6 +1846,47 @@ Music for multiple parts can be interleaved >> @end lilypond +This works quite well for piano music + +@lilypond[quote,verbatim] +music = { + \key c \major + \time 4/4 + \parallelMusic #'(voiceA voiceB voiceC voiceD) { + % Bar 1 + r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' +e''] | + c'2 c'2 | + r8 a16[ d'] f'[ a d' f'] r8 a16[ d'] f'[ a d' f'] | + c2 c2 | + + % Bar 2 + a'8 b' c'' d'' e'' f'' g'' a'' | + d'4 d' d' d' | + c16 d e f d e f g e f g a f g a b | + a,4 a,4 a,4 a,4 | + + % Bar 3 ... + } +} + +\score { + \new PianoStaff << + \music + \new Staff << + \voiceA \\ + \voiceB + >> + \new Staff { + \clef bass + << + \voiceC \\ + \voiceD + >> + } + >> +} +@end lilypond @node Connecting notes @@ -1775,7 +1909,7 @@ This section deals with notation that affects groups of notes. @subsection Ties @cindex tie -@findex ~ +@funindex ~ A tie connects two adjacent note heads of the same pitch. The tie in effect extends the length of a note. Ties should not be confused with @@ -1787,7 +1921,12 @@ e' ~ e' ~ @end lilypond 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. +are connected. When no note heads match, no ties will be created. Chords +may be partially tied by placing the tie inside the chord, + +@lilypond[quote,ragged-right,fragment,verbatim,relative=1] + +@end lilypond A tie is just a way of extending a note duration, similar to the augmentation dot. The following example shows two ways of notating @@ -1813,6 +1952,8 @@ automatic note splitting (see @ref{Automatic note splitting}). This mechanism automatically splits long notes, and ties them across bar lines. +@funindex \repeatTie + When a second alternative of a repeat starts with a tied note, you have to repeat the tie. This can be achieved with @code{\repeatTie}, @@ -1830,27 +1971,40 @@ notes need not be consecutive. This can be achieved by setting the @code{tieWaitForNote} property to true. The same feature is also useful, for example, to tie a tremolo to a chord. For example, -@lilypond[fragment,verbatim,relative=1,ragged-right] +@lilypond[fragment,verbatim,relative=1,ragged-right,quote] \set tieWaitForNote = ##t \grace { c16[~ e~ g]~ } 2 \repeat "tremolo" 8 { c32~ c'~ } 1 +e8~ c~ a~ f~ 2 +@end lilypond + +Ties may be engraved manually by changing the @code{tie-configuration} +property. The first number indicates the distance from the center +of the staff in staff-spaces, and the second number indicates the +direction (1=up, -1=down). + +@lilypond[fragment,verbatim,relative=1,ragged-right,quote] +2~ | +\override TieColumn #'tie-configuration = + #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1)) +~ | @end lilypond @refcommands -@findex \tieUp +@funindex \tieUp @code{\tieUp}, -@findex \tieDown +@funindex \tieDown @code{\tieDown}, -@findex \tieNeutral +@funindex \tieNeutral @code{\tieNeutral}, -@findex \tieDotted +@funindex \tieDotted @code{\tieDotted}, -@findex \tieDashed +@funindex \tieDashed @code{\tieDashed}, -@findex \tieSolid +@funindex \tieSolid @code{\tieSolid}. @@ -1871,6 +2025,9 @@ Examples: Switching staves when a tie is active will not produce a slanted tie. +Changing clefs or octavations during a tie is not really +well-defined. In these cases, a slur may be preferable. + @node Slurs @subsection Slurs @@ -1915,17 +2072,17 @@ be achieved in LilyPond by setting @code{doubleSlurs}, @refcommands -@findex \slurUp +@funindex \slurUp @code{\slurUp}, -@findex \slurDown +@funindex \slurDown @code{\slurDown}, -@findex \slurNeutral +@funindex \slurNeutral @code{\slurNeutral}, -@findex \slurDashed +@funindex \slurDashed @code{\slurDashed}, -@findex \slurDotted +@funindex \slurDotted @code{\slurDotted}, -@findex \slurSolid +@funindex \slurSolid @code{\slurSolid}. @seealso @@ -1958,11 +2115,11 @@ You cannot have simultaneous phrasing slurs. @refcommands -@findex \phrasingSlurUp +@funindex \phrasingSlurUp @code{\phrasingSlurUp}, -@findex \phrasingSlurDown +@funindex \phrasingSlurDown @code{\phrasingSlurDown}, -@findex \phrasingSlurNeutral +@funindex \phrasingSlurNeutral @code{\phrasingSlurNeutral}. @@ -2025,8 +2182,8 @@ Program reference: @internalsref{Beam}. @subsection Manual beams @cindex beams, manual -@findex ] -@findex [ +@funindex ] +@funindex [ In some cases it may be necessary to override the automatic beaming algorithm. For example, the autobeamer will not put beams over rests @@ -2042,8 +2199,8 @@ and end point with @code{[} and @code{]} @commonprop -@findex stemLeftBeamCount -@findex stemRightBeamCount +@funindex stemLeftBeamCount +@funindex stemRightBeamCount Normally, beaming patterns within a beam are determined automatically. If necessary, the properties @code{stemLeftBeamCount} and @@ -2072,7 +2229,7 @@ c16[ c c c c c c c] \set Score.beatLength = #(ly:make-moment 1 8) c16[ c c c c c c c] @end lilypond -@findex subdivideBeams +@funindex subdivideBeams @noindent For more information about @code{make-moment}, see @@ -2081,7 +2238,7 @@ For more information about @code{make-moment}, see Line breaks are normally forbidden when beams cross bar lines. This behavior can be changed by setting @code{allowBeamBreak}. -@findex allowBeamBreak +@funindex allowBeamBreak @cindex beams and line breaks @cindex beams, kneed @cindex kneed beams @@ -2103,7 +2260,7 @@ texts and accidentals. @node Grace notes @subsection Grace notes -@findex \grace +@funindex \grace @cindex ornaments @cindex grace notes @cindex appoggiatura @@ -2171,7 +2328,7 @@ every eighth grace note \new Staff { c4 \grace { g8[ b] } c4 } >> @end lilypond -@findex \afterGrace +@funindex \afterGrace If you want to end a note with a grace, use the @code{\afterGrace} command. It takes two arguments: the main note, and the grace notes @@ -2210,6 +2367,7 @@ A @code{\grace} section will introduce special typesetting settings, for example, to produce smaller type, and set directions. Hence, when introducing layout tweaks, they should be inside the grace section, for example, + @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Voice { \acciaccatura { @@ -2226,8 +2384,8 @@ The overrides should also be reverted inside the grace section. The layout of grace sections can be changed throughout the music using the function @code{add-grace-property}. The following example -undefines the Stem direction for this grace, so stems do not always -point up. +undefines the @code{Stem} direction for this grace, so +that stems do not always point up. @example \new Staff @{ @@ -2247,6 +2405,30 @@ Another option is to change the variables @code{startGraceMusic}, The slash through the stem in acciaccaturas can be obtained in other situations by @code{\override Stem #'stroke-style = #"grace"}. + +@commonprop + +Grace notes may be forced to use floating spacing, + +@lilypond[relative=2,ragged-right] +<< + \override Score.SpacingSpanner #'strict-grace-spacing = ##t + \new Staff { + c'4 + \afterGrace + c'4 + { c'16[ c'8 c'16] } + c'4 + } + \new Staff { + c'16[ c'16 c'16 c'16] + c'16[ c'16 c'16 c'16] + c'4 + } +>> +@end lilypond + + @seealso Program reference: @internalsref{GraceMusic}. @@ -2295,6 +2477,7 @@ notes and rhythms. * Trills:: * Glissando:: * Arpeggio:: +* Falls and doits:: @end menu @@ -2460,23 +2643,23 @@ Examples: @inputfileref{input/@/regression,finger@/-chords@/.ly}. @subsection Dynamics @cindex Dynamics -@findex \pppp -@findex \ppp -@findex \pp -@findex \p -@findex \mp -@findex \mf -@findex \f -@findex \ff -@findex \fff -@findex \ffff -@findex \fp -@findex \sf -@findex \sff -@findex \sp -@findex \spp -@findex \sfz -@findex \rfz +@funindex \pppp +@funindex \ppp +@funindex \pp +@funindex \p +@funindex \mp +@funindex \mf +@funindex \f +@funindex \ff +@funindex \fff +@funindex \ffff +@funindex \fp +@funindex \sf +@funindex \sff +@funindex \sp +@funindex \spp +@funindex \sfz +@funindex \rfz Absolute dynamic marks are specified using a command after a note @code{c4\ff}. The available dynamic marks are @code{\ppppp}, @@ -2490,9 +2673,9 @@ c\ppp c\pp c \p c\mp c\mf c\f c\ff c\fff c2\fp c\sf c\sff c\sp c\spp c\sfz c\rfz @end lilypond -@findex \< -@findex \> -@findex \! +@funindex \< +@funindex \> +@funindex \! A crescendo mark is started with @code{\<} and terminated with @code{\!} or an absolute dynamic. A decrescendo is started with @@ -2507,8 +2690,16 @@ c\< c\! d\> e\! @end lilypond @noindent -A hairpin starts at the left edge of the beginning note and ends on the -right edge of the ending note. +A hairpin normally starts at the left edge of the beginning note +and ends on the right edge of the ending note. If the ending +note falls on the downbeat, the hairpin ends on the immediately +preceding barline. This may be modified by setting the +@code{hairpinToBarline} property, + +@lilypond[quote,ragged-right,fragment,verbatim,relative=2] +\set hairpinToBarline = ##f +c4\< c2. c4\! +@end lilypond In some situations the @code{\espressivo} articulation mark may be suitable to indicate a crescendo and decrescendo on the one note, @@ -2522,14 +2713,27 @@ in @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for example @example -\override Staff.Hairpin #'minimum-length = #5 +\override Voice.Hairpin #'minimum-length = #5 @end example +@cindex al niente +@cindex niente, al + +Hairpins may be printed with a circled tip (al niente notation) by +setting the @code{circled-tip} property, + +@lilypond[quote,ragged-right,fragment,relative=2,verbatim] +\override Hairpin #'circled-tip = ##t +c2\< c\! +c4\> c\< c2\! +@end lilypond + + @cindex crescendo @cindex decrescendo @cindex diminuendo -You can also use a text saying @emph{cresc.} instead of hairpins +You can also use text saying @emph{cresc.} instead of hairpins @lilypond[quote,ragged-right,fragment,relative=2,verbatim] \setTextCresc @@ -2574,7 +2778,8 @@ new line are not printed. To change this behavior, use \override Score.Hairpin #'after-line-breaking = ##t @end example -Text style dynamic changes (such as cresc. and dim.) are printed with a +Text style dynamic changes (such as @emph{cresc.} and @emph{dim.}) +are printed with a dashed line showing their extent. To surpress printing this line, use @example @@ -2584,11 +2789,11 @@ dashed line showing their extent. To surpress printing this line, use @refcommands -@findex \dynamicUp +@funindex \dynamicUp @code{\dynamicUp}, -@findex \dynamicDown +@funindex \dynamicDown @code{\dynamicDown}, -@findex \dynamicNeutral +@funindex \dynamicNeutral @code{\dynamicNeutral}. @@ -2649,7 +2854,7 @@ Long running trills are made with @code{\startTrillSpan} and Trills that should be executed on an explicitly specified pitch can be typeset with the command @code{pitchedTrill}, -@lilypond[ragged-right,verbatim,fragment,relative=1] +@lilypond[ragged-right,verbatim,fragment,relative=1,quote] \pitchedTrill c4\startTrillSpan fis f\stopTrillSpan @end lilypond @@ -2661,9 +2866,9 @@ is printed as a stemless note head in parentheses. @refcommands @code{\startTrillSpan}, -@findex \startTrillSpan +@funindex \startTrillSpan @code{\stopTrillSpan}. -@findex \stopTrillSpan +@funindex \stopTrillSpan @seealso @@ -2675,7 +2880,7 @@ Program reference: @internalsref{TrillSpanner}. @subsection Glissando @cindex Glissando -@findex \glissando +@funindex \glissando A glissando is a smooth change in pitch. It is denoted by a line or a wavy line between two notes. It is requested by attaching @@ -2705,7 +2910,7 @@ Printing text over the line (such as @emph{gliss.}) is not supported. @cindex Arpeggio @cindex broken chord -@findex \arpeggio +@funindex \arpeggio You can specify an arpeggio sign (also known as broken chord) on a chord by attaching an @code{\arpeggio} to a chord @@ -2753,13 +2958,13 @@ in both staves and set @refcommands @code{\arpeggio}, -@findex \arpeggioUp +@funindex \arpeggioUp @code{\arpeggioUp}, -@findex \arpeggioDown +@funindex \arpeggioDown @code{\arpeggioDown}, -@findex \arpeggioNeutral +@funindex \arpeggioNeutral @code{\arpeggioNeutral}, -@findex \arpeggioBracket +@funindex \arpeggioBracket @code{\arpeggioBracket}. @@ -2776,7 +2981,17 @@ It is not possible to mix connected arpeggios and unconnected arpeggios in one @internalsref{PianoStaff} at the same point in time. +@node Falls and doits +@subsection Falls and doits + +Falls and doits can be added to notes using the @code{\bendAfter} +command, +@lilypond[fragment,ragged-right,relative=2] +\override Score.SpacingSpanner #'shortest-duration-space = #3.0 +c4-\bendAfter #+5 +c4-\bendAfter #-3 +@end lilypond @node Repeats @@ -2800,7 +3015,7 @@ for repetitions. @subsection Repeat types @cindex repeats -@findex \repeat +@funindex \repeat The following types of repetition are supported @@ -2816,12 +3031,6 @@ printed, left to right with brackets. This is the standard notation for repeats with alternatives. These are not played in MIDI output by default. -@ignore -@item fold -Alternative endings are written stacked. This has limited use but may be -used to typeset two lines of lyrics in songs with repeats, see -@inputfileref{input,star-spangled-banner@/.ly}. -@end ignore @item tremolo Make tremolo beams. These are not played in MIDI output by default. @@ -2829,7 +3038,7 @@ Make tremolo beams. These are not played in MIDI output by default. @item percent Make beat or measure repeats. These look like percent signs. These are not played in MIDI output by default. Percent repeats must be -declared within a Voice context. +declared within a @code{Voice} context. @end table @@ -2837,6 +3046,10 @@ declared within a Voice context. @node Repeat syntax @subsection Repeat syntax +@cindex volta +@cindex prima volta +@cindex seconda volta + LilyPond has one syntactic construct for specifying different types of repeats. The syntax is @@ -2845,7 +3058,7 @@ repeats. The syntax is @end example If you have alternative endings, you may add -@findex \alternative +@funindex \alternative @example \alternative @{ @var{alternative1} @@ -2861,6 +3074,7 @@ give enough alternatives for all of the repeats, the first alternative is assumed to be played more than once. Standard repeats are used like this + @lilypond[quote,ragged-right,fragment,verbatim,relative=2] c1 \repeat volta 2 { c4 d e f } @@ -2868,14 +3082,15 @@ c1 @end lilypond With alternative endings + @lilypond[quote,ragged-right,fragment,verbatim,relative=2] c1 \repeat volta 2 {c4 d e f} \alternative { {d2 d} {f f,} } @end lilypond -In this example, the first ending is not a complete bar (it -only had 3 beats). The beginning of the second ending +In the following example, the first ending is not a complete +bar (it only had 3 beats). The beginning of the second ending contains the 4th beat from the first ending. This ``extra'' beat in the second ending is due to the first time ending, and has nothing to do with the @code{\partial} at the @@ -2889,6 +3104,16 @@ beginning of the example. } @end lilypond +@funindex \repeatTie + +Ties may be added to a second ending, + +@lilypond[quote,ragged-right,fragment,verbatim,relative=2] +c1 +\repeat volta 2 {c4 d e f ~ } +\alternative { {f2 d} {f\repeatTie f,} } +@end lilypond + It is possible to shorten volta brackets by setting @code{voltaSpannerDuration}. In the next example, the bracket only lasts one measure, which is a duration of 3/4. @@ -2933,20 +3158,22 @@ having the @code{\alternative} belong to the inner @code{\repeat}. For clarity, it is advisable to use braces in such situations. Timing information is not remembered at the start of an alternative, -so after a repeat timing information must be reset by hand, for -example by setting @code{Score.measurePosition} or entering +so after a repeat timing information must be reset by hand; for +example, by setting @code{Score.measurePosition} or entering @code{\partial}. Similarly, slurs or ties are also not repeated. +Volta brackets are not vertically aligned. + @node Repeats and MIDI @subsection Repeats and MIDI @cindex expanding repeats -@findex \unfoldRepeats +@funindex \unfoldRepeats With a little bit of tweaking, all types of repeats can be present in the MIDI output. This is achieved by applying the -@code{\unfoldRepeats} music function. This functions changes all +@code{\unfoldRepeats} music function. This function changes all repeats to unfold repeats. @lilypond[quote,verbatim,fragment,line-width=8.0\cm] @@ -2962,8 +3189,8 @@ repeats to unfold repeats. \bar "|." @end lilypond -When creating a score file using @code{\unfoldRepeats} for midi, then -it is necessary to make two @code{\score} blocks. One for MIDI (with +When creating a score file using @code{\unfoldRepeats} for MIDI, +it is necessary to make two @code{\score} blocks: one for MIDI (with unfolded repeats) and one for notation (with volta, tremolo, and percent repeats). For example, @@ -2982,7 +3209,7 @@ percent repeats). For example, @node Manual repeat commands @subsection Manual repeat commands -@findex repeatCommands +@funindex repeatCommands The property @code{repeatCommands} can be used to control the layout of repeats. Its value is a Scheme list of repeat commands. @@ -3061,7 +3288,7 @@ Example files: @inputfileref{input/@/regression,chord@/-tremolo@/.ly}, @subsection Tremolo subdivisions @cindex tremolo marks -@findex tremoloFlags +@funindex tremoloFlags Tremolo marks can be printed on a single note by adding `@code{:}[@var{number}]' after the note. The number indicates the @@ -3118,10 +3345,10 @@ on the @code{countPercentRepeats} property, -Isolated percents can also be printed. This is done by putting a multi -measure rest with a different print function, +Isolated percents can also be printed. This is done by putting a +multi-measure rest with a different print function, -@lilypond[fragment,verbatim] +@lilypond[fragment,verbatim,quote] \override MultiMeasureRest #'stencil = #ly:multi-measure-rest::percent R1