1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. For details, see the Contributors'
7 Guide, node Updating translation committishes..
12 @node Editorial annotations
13 @section Editorial annotations
15 @lilypondfile[quote]{editorial-headword.ly}
17 This section discusses the various ways to change the appearance of
18 notes and add analysis or educational emphasis.
26 @node Inside the staff
27 @subsection Inside the staff
29 This section discusses how to add emphasis to elements that are
33 * Selecting notation font size::
34 * Fingering instructions::
41 @node Selecting notation font size
42 @unnumberedsubsubsec Selecting notation font size
44 @cindex font size (notation) scaling
45 @cindex font size (notation)
46 @cindex selecting font size (notation)
47 @cindex notation font size
66 The font size of notation elements may be altered. It does not
67 change the size of variable symbols, such as beams or slurs.
69 @warning{For font sizes of text, see
70 @ref{Selecting font and font size}.}
72 @lilypond[verbatim,quote,relative=2]
87 Internally, this sets the @code{fontSize} property. This in turn
88 causes the @code{font-size} property to be set in all layout
89 objects. The value of @code{font-size} is a number indicating the
90 size relative to the standard size for the current staff height.
91 Each step up is an increase of approximately 12% of the font size.
92 Six steps is exactly a factor of two. The Scheme function
93 @code{magstep} converts a @code{font-size} number to a scaling
94 factor. The @code{font-size} property can also be set directly,
95 so that only certain layout objects are affected.
97 @lilypond[verbatim,quote,relative=2]
100 \override NoteHead #'font-size = #-4
102 \override Script #'font-size = #2
104 \override Stem #'font-size = #-5
108 @cindex standard font size (notation)
109 @cindex font size (notation), standard
111 @funindex font-interface
114 Font size changes are achieved by scaling the design size that is
115 closest to the desired size. The standard font size (for
116 @w{@code{font-size = #0}}) depends on the standard staff height.
117 For a 20pt staff, a 10pt font is selected.
119 The @code{font-size} property can only be set on layout objects
120 that use fonts. These are the ones supporting the
121 @code{font-interface} layout interface.
135 @rlsr{Editorial annotations}.
138 @rinternals{font-interface}.
141 @node Fingering instructions
142 @unnumberedsubsubsec Fingering instructions
145 @cindex finger change
150 Fingering instructions can be entered using
151 @samp{@var{note}-@var{digit}}:
153 @lilypond[verbatim,quote,relative=2]
157 Markup texts may be used for finger changes.
159 @lilypond[verbatim,quote,relative=2]
160 c4-1 d-2 f-4 c^\markup { \finger "2 - 3" }
168 A thumb-script can be added (e.g. cello music) to indicate
169 that a note should be played with the thumb.
171 @lilypond[verbatim,quote,relative=2]
172 <a_\thumb a'-3>2 <b_\thumb b'-3>
175 @cindex fingering chords
176 @cindex fingering instructions for chords
177 @cindex chords, fingering
179 Fingerings for chords can also be added to individual notes by
180 adding them after the pitches.
182 @lilypond[verbatim,quote,relative=2]
183 <c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>
186 Fingering instructions may be manually placed above or below the
187 staff, see @ref{Direction and placement}.
191 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
192 {controlling-the-placement-of-chord-fingerings.ly}
194 @lilypondfile[verbatim,quote,texidoc,doctitle]
195 {allowing-fingerings-to-be-printed-inside-the-staff.ly}
197 @lilypondfile[verbatim,quote,texidoc,doctitle]
198 {avoiding-collisions-with-chord-fingerings.ly}
202 @ref{Direction and placement}.
205 @rlsr{Editorial annotations}.
208 @rinternals{FingeringEvent},
209 @rinternals{fingering-event},
210 @rinternals{Fingering_engraver},
211 @rinternals{New_fingering_engraver},
212 @rinternals{Fingering}.
215 By default, numbers greater than 9 are not supported using
216 @samp{@var{note}-@var{digit}}.
220 @unnumberedsubsubsec Hidden notes
223 @cindex invisible notes
224 @cindex transparent notes
225 @cindex notes, hidden
226 @cindex notes, invisible
227 @cindex notes, transparent
231 @funindex \unHideNotes
232 @funindex unHideNotes
234 Hidden (or invisible or transparent) notes can be useful in
235 preparing theory or composition exercises.
237 @lilypond[verbatim,quote,relative=2]
249 Note heads, stems, and flags, and rests are invisible. Beams
250 are invisible if they start on a hidden note. Objects that are
251 attached to invisible notes are still visible.
253 @lilypond[verbatim,quote,relative=2]
267 @rlearning{Visibility and color of objects}.
270 @ref{Invisible rests},
271 @ref{Visibility of objects},
275 @rlsr{Editorial annotations}.
278 @rinternals{Note_spacing_engraver},
279 @rinternals{NoteSpacing}.
282 @node Coloring objects
283 @unnumberedsubsubsec Coloring objects
285 @cindex colored objects
286 @cindex objects, colored
288 @cindex coloring objects
289 @cindex colored notes
290 @cindex coloring notes
291 @cindex notes, colored
297 @funindex \with-color
301 Individual objects may be assigned colors. Valid color names
302 are listed in the @ref{List of colors}.
304 @lilypond[verbatim,quote,relative=2]
305 \override NoteHead #'color = #red
307 \override NoteHead #'color = #(x11-color 'LimeGreen)
309 \override Stem #'color = #blue
314 The full range of colors defined for X11 can be accessed by using
315 the Scheme function @code{x11-color}. The function takes one
316 argument; this can be a symbol in the form @code{'@var{FooBar}} or
317 a string in the form @code{"@var{FooBar}"}. The first form is
318 quicker to write and is more efficient. However, using the second
319 form it is possible to access X11 colors by the multi-word form of
322 If @code{x11-color} cannot make sense of the parameter then the
323 color returned defaults to black.
325 @lilypond[verbatim,quote,relative=2]
326 \override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
327 \set Staff.instrumentName = \markup {
328 \with-color #(x11-color 'navy) "Clarinet"
332 \override Beam #'color = #(x11-color "medium turquoise")
334 \override Accidental #'color = #(x11-color 'DarkRed)
336 \override NoteHead #'color = #(x11-color "LimeGreen")
338 % this is deliberate nonsense; note that the stems remain black
339 \override Stem #'color = #(x11-color 'Boggle)
349 Exact RGB colors can be specified using the Scheme function
352 @lilypond[verbatim,quote,relative=2]
353 \override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
354 \set Staff.instrumentName = \markup {
355 \with-color #(x11-color 'navy) "Clarinet"
358 \override Stem #'color = #(rgb-color 0 0 0)
360 \override Stem #'color = #(rgb-color 1 1 1)
362 \override Stem #'color = #(rgb-color 0 0 0.5)
368 @ref{List of colors}, @ref{The
372 @rlsr{Editorial annotations}.
375 @cindex colored notes in chords
376 @cindex notes, colored in chords
377 @cindex color in chords
382 An X11 color is not necessarily exactly the same shade as a
383 similarly named normal color.
385 Not all X11 colors are distinguishable in a web browser, i.e.,
386 a web browser might not display a difference between @code{LimeGreen}
387 and @code{ForestGreen}. For web use normal colors are recommended
388 (i.e., @code{blue}, @code{green}, @code{red}).
390 Notes in a chord cannot be colored with @code{\override}; use
391 @code{\tweak} instead, see @ref{The tweak command}.
395 @unnumberedsubsubsec Parentheses
399 @cindex notes, parenthesized
402 @funindex \parenthesize
403 @funindex parenthesize
405 Objects may be parenthesized by prefixing @code{\parenthesize} to
406 the music event. When prefixed to a chord, it parenthesizes every
407 note. Individual notes inside a chord may also be parenthesized.
409 @lilypond[verbatim,quote,relative=2]
411 c2 \parenthesize <c e g>
412 c2 <c \parenthesize e g>
415 Non-note objects may be parenthesized as well. For articulations,
416 a hyphen is needed before the @code{\parenthesize} command.
418 @lilypond[verbatim,quote,relative=2]
419 c2-\parenthesize -. d
425 @rlsr{Editorial annotations}.
428 @rinternals{Parenthesis_engraver},
429 @rinternals{ParenthesesItem},
430 @rinternals{parentheses-interface}.
433 Parenthesizing a chord prints parentheses around each individual
434 note, instead of a single large parenthesis around the entire
439 @unnumberedsubsubsec Stems
442 @cindex stem, invisible
443 @cindex invisible stem
449 @funindex \stemNeutral
450 @funindex stemNeutral
451 @cindex stem, direction
454 @cindex stem, neutral
456 Whenever a note is found, a @code{Stem} object is created
457 automatically. For whole notes and rests, they are also created but
460 Stems may be manually placed to point up or down; see
461 @ref{Direction and placement}.
473 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
474 {default-direction-of-stems-on-the-center-line-of-the-staff.ly}
478 @ref{Direction and placement}.
481 @rlsr{Editorial annotations}.
484 @rinternals{Stem_engraver},
486 @rinternals{stem-interface}.
489 @node Outside the staff
490 @subsection Outside the staff
492 This section discusses how to add emphasis to elements in the staff
493 from outside of the staff.
498 * Analysis brackets::
502 @unnumberedsubsubsec Balloon help
505 @cindex notation, explaining
507 @cindex help, balloon
509 @funindex \balloonGrobText
510 @funindex \balloonText
511 @funindex Balloon_engraver
512 @funindex balloonGrobText
513 @funindex balloonText
514 @funindex \balloonLengthOn
515 @funindex balloonLengthOn
516 @funindex \balloonLengthOff
517 @funindex balloonLengthOff
519 Elements of notation can be marked and named with the help of a
520 square balloon. The primary purpose of this feature is to explain
523 @lilypond[verbatim,quote,relative=2]
524 \new Voice \with { \consists "Balloon_engraver" }
526 \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
528 \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
530 <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2.
535 There are two music functions, @code{balloonGrobText} and
536 @code{balloonText}; the former is used like
537 @w{@code{\once \override}} to attach text to any grob, and the
538 latter is used like @code{\tweak}, typically within chords, to
539 attach text to an individual note.
541 Balloon text normally influences note spacing, but this can be
544 @lilypond[verbatim,quote,relative=2]
545 \new Voice \with { \consists "Balloon_engraver" }
548 \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
550 \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
553 <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2.
558 @code{\balloonLengthOn},
559 @code{\balloonLengthOff}.
564 @rlsr{Editorial annotations}.
567 @rinternals{Balloon_engraver},
568 @rinternals{BalloonTextItem},
569 @rinternals{balloon-interface}.
573 @unnumberedsubsubsec Grid lines
577 @cindex vertical lines between staves
578 @cindex lines, vertical between staves
580 @funindex Grid_point_engraver
581 @funindex Grid_line_span_engraver
582 @funindex gridInterval
584 Vertical lines can be drawn between staves synchronized with the
587 The @code{Grid_point_engraver} must be used to create the end
588 points of the lines, while the @code{Grid_line_span_engraver} must
589 be used to actually draw the lines. By default this centers grid
590 lines horizontally below and to the left side of each note head.
591 Grid lines extend from the middle lines of each staff. The
592 @code{gridInterval} must specify the duration between the grid
595 @lilypond[verbatim,quote]
599 \consists "Grid_point_engraver"
600 gridInterval = #(ly:make-moment 1 4)
604 \consists "Grid_line_span_engraver"
610 \new Staff \relative c'' {
614 \new Staff \relative c {
625 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
626 {grid-lines--changing-their-appearance.ly}
630 @rlsr{Editorial annotations}.
633 @rinternals{Grid_line_span_engraver},
634 @rinternals{Grid_point_engraver},
635 @rinternals{GridLine},
636 @rinternals{GridPoint},
637 @rinternals{grid-line-interface},
638 @rinternals{grid-point-interface}.
641 @node Analysis brackets
642 @unnumberedsubsubsec Analysis brackets
645 @cindex bracket, phrasing
646 @cindex phrasing bracket
647 @cindex musicological analysis
648 @cindex analysis, musicological
649 @cindex note grouping bracket
650 @cindex horizontal bracket
651 @cindex bracket, horizontal
653 @funindex Horizontal_bracket_engraver
654 @funindex \startGroup
659 Brackets are used in musical analysis to indicate structure in musical
660 pieces. Simple horizontal brackets are supported.
662 @lilypond[verbatim,quote]
666 \consists "Horizontal_bracket_engraver"
675 Analysis brackets may be nested.
677 @lilypond[verbatim,quote]
681 \consists "Horizontal_bracket_engraver"
685 c4\startGroup\startGroup
688 d4\stopGroup\stopGroup
694 @rlsr{Editorial annotations}.
697 @rinternals{Horizontal_bracket_engraver},
698 @rinternals{HorizontalBracket},
699 @rinternals{horizontal-bracket-interface},