Guide, node Updating translation committishes..
@end ignore
-@c \version "2.13.36"
+@c \version "2.19.21"
@node Music engraving
@chapter Music engraving
while the newer edition seems cold and mechanical.
It is hard to immediately see what makes the difference with the newer
-edition. Everything looks neat and tiny, possibly even @qq{better}
+edition. Everything looks neat and tidy, possibly even @qq{better}
because it looks more computerized and uniform. This really puzzled us
for quite a while. We wanted to improve computer notation, but we first
had to figure out what was wrong with it.
In spacing, the distribution of space should reflect the durations
between notes. However, as we saw in the Bach Suite above, many modern
scores adhere to the durations with mathematical precision, which leads
-to poor results. In the next example a motive is printed twice: the
+to poor results. In the next example a motif is printed twice: the
first time using exact mathematical spacing, and the second with
corrections. Which do you prefer?
\layout {
\context {
\Staff
- \override NoteSpacing #'stem-spacing-correction = #0.0
- \override NoteSpacing #'same-direction-correction = #0.0
- \override StaffSpacing #'stem-spacing-correction = #0.0
+ \override NoteSpacing.stem-spacing-correction = #0.0
+ \override NoteSpacing.same-direction-correction = #0.0
+ \override StaffSpacing.stem-spacing-correction = #0.0
}
}
}
\layout {
\context {
\Staff
- \override NoteSpacing #'stem-spacing-correction = #0.6
+ \override NoteSpacing.stem-spacing-correction = #0.6
}
}
}
At smaller sizes, LilyPond uses proportionally heavier lines so the
music will still read well.
-@ignore
This also allows staves of different sizes to coexist peacefully when
used together on the same page:
-@c TODO: are the stems in this example the right thickness? How should
-@c line weights be scaled for small staves?
-
@c Grieg's Violin Sonata Op. 45
-@lilypond[indent=1.5cm]
+@lilypond[indent=1.5\cm]
global = {
\time 6/8
\key c \minor
\score {
<<
\new Staff \with {
- fontSize = #-4
- \override StaffSymbol #'staff-space = #(magstep -4)
- \override StaffSymbol #'thickness = #(magstep -3)
+ \magnifyStaff #2/3
}
\relative c' {
\global
\clef "bass"
<<
{
- \once \override DynamicText #'X-offset = #-3
+ \once \override DynamicText.X-offset = #-3
<ees g c>2.~->^\f
<ees g c>4.~ <ees g c>8
} \\ {
>>
}
@end lilypond
-@end ignore
+
@node Why work so hard?
@unnumberedsubsec Why work so hard?
@lilypond
\relative c {
\clef bass
- \once \override Slur #'positions = #'(1.5 . 1)
+ \once \override Slur.positions = #'(1.5 . 1)
e8[( f] g[ a b d,)] r4
- \once \override Slur #'positions = #'(2 . 3)
+ \once \override Slur.positions = #'(2 . 3)
e8[( f] g[ a b d,)] r4
e8[( f] g[ a b d,)] r4
}
@lilypond
\relative c {
\clef bass
- \once \override Slur #'positions = #'(1.5 . 1)
+ \once \override Slur.positions = #'(1.5 . 1)
e8[(_"15.39" f] g[ a b d,)] r4
}
@end lilypond
@lilypond
\relative c {
\clef bass
- \once \override Slur #'positions = #'(2 . 3)
+ \once \override Slur.positions = #'(2 . 3)
e8[(_"13.08" f] g[ a b d,)] r4
}
@end lilypond
selects this one:
@lilypond
-\relative c {
+\relative {
\clef bass
e8[(_"12.04" f] g[ a b d,)] r4
}
automatically by comparing LilyPond's output to the output of a
commercial software product. In this case we have chosen Finale 2008,
which is one of the most popular commercial score writers, particularly
-in North America. Sibelius is their major rival and they appear to be
+in North America. Sibelius is its major rival and appears to be
especially strong in the European market.
For our comparison we selected Bach's Fugue in G minor from the
Well-Tempered Clavier, Book I, BWV 861, whose opening subject is
@lilypond
-\relative c' {
+\relative {
\key g \minor
\clef "treble_8"
- r8 d ees g, fis4 g
+ r8 d' ees g, fis4 g
r8 a16 bes c8 bes16 a bes8
}
@end lilypond
}
\context {
\PianoStaff
- \override StaffGrouper #'between-staff-spacing #'padding = #1
+ \override StaffGrouper.staff-staff-spacing.padding = #1
}
}
}
@item Most of the beams extend too far off the staff. A beam that points
towards the center of the staff should have a length of about one
octave, but engravers shorten this when the beam points away from the
-staff in multi-voice music. The Finale beaming can be easily improved
+staff in multi-voice music. The Finale beaming can easily be improved
with their Patterson Beams plug-in, but we elected to skip that step for
this example.
@item Finale doesn't adjust the positions of interlocking note heads,
lower voices exchange positions temporarily:
@lilypond
-collide = \once \override NoteColumn #'force-hshift = #0
+collide = \once \override NoteColumn.force-hshift = #0
\score {
<<
\new Voice { \voiceTwo bes \collide bes }
>>
}
- \new Lyrics \lyricsto "sample" \lyricmode { "good " " bad" }
+ \new Lyrics \lyricsto "sample" { "good " " bad" }
>>
}
@end lilypond
@lilypond[quote,fragment]
<<
- \new Staff \relative c'' {
+ \new Staff \relative {
\key g \major
\time 3/4
- d4 g,8 a b c d4 g, g
+ d''4 g,8 a b c d4 g, g
}
- \new Staff \relative c' {
+ \new Staff \relative {
\clef "bass"
\key g \major
<g b d>2 a4 b2.
\new Voice = "I" \relative c''' {
\time 3/4
\voiceOne
- \times 6/7 { g8 g g g g g g }
+ \tuplet 7/6 { g8 g g g g g g }
\oneVoice
r4 <b,, fis' g bes> r4\fermata
}
\new Voice = "II" \relative c' {
\voiceTwo
c4
- \times 4/5 {
+ \tuplet 5/4 {
<c ees>8 f g
\change Staff = "LH" \oneVoice
\stemUp g,( c}
r4
- \override Stem #'cross-staff = ##t
- \override Stem #'length = #12
+ \override Stem.cross-staff = ##t
+ \override Stem.length = #12
<fis, b>) r\fermata
}
>>
\new Staff = "LH" <<
- \new Voice = "III" \relative c' {
+ \new Voice = "III" \relative {
\time 2/4
\clef "bass"
g4 \stopStaff s
\remove "Phrasing_slur_engraver"
\remove "Slur_engraver"
\remove "Script_engraver"
+ \remove "New_fingering_engraver"
\remove "Beam_engraver"
\remove "Auto_beam_engraver"
}
\remove "Phrasing_slur_engraver"
\remove "Slur_engraver"
\remove "Script_engraver"
+ \remove "New_fingering_engraver"
\remove "Beam_engraver"
\remove "Auto_beam_engraver"
}
\remove "Phrasing_slur_engraver"
\remove "Slur_engraver"
\remove "Script_engraver"
+ \remove "New_fingering_engraver"
\remove "Beam_engraver"
\remove "Auto_beam_engraver"
}
\remove "Phrasing_slur_engraver"
\remove "Slur_engraver"
\remove "Script_engraver"
+ \remove "New_fingering_engraver"
\remove "Beam_engraver"
\remove "Auto_beam_engraver"
}
\score {
\relative c' {
\stemDown <e g b>4_>-\arpeggio
- \override Arpeggio #'direction = #RIGHT
+ \override Arpeggio.direction = #RIGHT
\stemUp <e g b>4^>-\arpeggio
}
\layout {
\context {
\Score
- \override SpacingSpanner #'spacing-increment = #3
- \override TimeSignature #'transparent = ##t
+ \override SpacingSpanner.spacing-increment = #3
+ \hide TimeSignature
}
}
}
<<
\new Staff \fragment
\new Staff \with {
- \override Beam #'beam-thickness = #0.3
- \override Stem #'thickness = #0.5
- \override Bar #'thickness = #3.6
- \override Tie #'thickness = #2.2
- \override StaffSymbol #'thickness = #3.0
- \override Tie #'extra-offset = #'(0 . 0.3)
+ \override Beam.beam-thickness = #0.3
+ \override Stem.thickness = #0.5
+ \override Bar.thickness = #3.6
+ \override Tie.thickness = #2.2
+ \override StaffSymbol.thickness = #3.0
+ \override Tie.extra-offset = #'(0 . 0.3)
}
\fragment
>>
\set autoBeaming = ##f
\time 2/4
<d f g>4
- \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
- \once \override NoteHead #'font-size = #-7
- \once \override NoteHead #'font-family = #'sans
- \once \override NoteHead #'font-series = #'bold
+ \once \override NoteHead.stencil = #note-head::brew-ez-stencil
+ \once \override NoteHead.font-size = #-7
+ \once \override NoteHead.font-family = #'sans
+ \once \override NoteHead.font-series = #'bold
<d f g>4
- \once \override NoteHead #'style = #'cross
+ \once \override NoteHead.style = #'cross
<d f g>4
\applyOutput #'Voice #mc-squared
<d f g>4
<<
\chords { c2 c f2 c }
\new Staff
- \relative c' {
+ \relative {
\time 2/4
- c4 c g' g a a g2
+ c'4 c g' g a a g2
}
\addlyrics { twin -- kle twin -- kle lit -- tle star }
>>
\time 4/8
\key c \minor
<< {
- \revert Stem #'direction
+ \revert Stem.direction
\change Staff = down
\set subdivideBeams = ##t
g16.[
\set followVoice = ##t
c'''32([ b''16 a''16 gis''16 g''32)]
} \\ {
- s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
+ s4 \tuplet 3/2 { d'16[ f' g'] } as'32[ b''32 e'' d'']
} \\ {
s4 \autoBeamOff d''8.. f''32
} \\ {
\clef bass
\key c \minor
\set subdivideBeams = ##f
- \override Stem #'french-beaming = ##t
- \override Beam #'beam-thickness = #0.3
- \override Stem #'thickness = #4.0
+ \override Stem.french-beaming = ##t
+ \override Beam.beam-thickness = #0.3
+ \override Stem.thickness = #4.0
g'16[ b16 fis16 g16]
<< \makeClusters {
as16 <as b>
<g b>
<g cis>
} \\ {
- \override Staff.Arpeggio #'arpeggio-direction =#down
+ \override Staff.Arpeggio.arpeggio-direction =#down
<cis, e, gis, b, cis>4\arpeggio
}
>> }
>>
\midi {
- \context {
- \Score
- tempoWholesPerMinute = #(ly:make-moment 60 8)
- }
+ \tempo 8 = 60
}
\layout {
\context {
\Staff
- \consists Horizontal_bracket_engraver
+ \consists "Horizontal_bracket_engraver"
}
}
}
@command{lilypond-book} program, included with LilyPond, the input
fragments can be replaced by music images in the resulting PDF or HTML
output files. Another example is the third-party OOoLilyPond extension
-for OpenOffice.org, which makes it extremely easy to embed musical
-examples in documents.
+for OpenOffice.org or LibreOffice, which makes it extremely easy to
+embed musical examples in documents.
For more examples of LilyPond in action, full documentation, and the
software itself, see our main website: www.lilypond.org.
fis8 d' ees g, fis4 g
r8 a16 bes c8 bes16 a d8 r r4
r2 r8 d16 ees f8 ees16 d
- ees4 ~ ees16 d c bes a4 r8 ees'16 d
+ ees4 ~ 16 d c bes a4 r8 ees'16 d
c8 d16 ees d8 e16 fis g8 fis16 g a4 ~
- a8 d, g f ees d c bes
+ 8 d, g f ees d c bes
a2 g\fermata \bar "|."
}
d4 r4 r8 d'16 c bes8 c16 d
ees8 d c ees a, r r4
r8 fis16 g a8 g16 fis g2 ~
- g2 r8 d' ees g,
+ 2 r8 d' ees g,
fis4 g r8 a16 bes c8 bes16 a
bes4. <g b>8 <a c> r <d, g> r
<ees g>4 <d fis> d2
partIII = \relative c' {
\voiceOne
r2 r8 d ees g, fis4 g r8 a16 bes c8 bes16 a
- bes2 ~ bes8 b16 a g8 a16 b
+ bes2 ~ 8 b16 a g8 a16 b
c4 r r2
R1
r8 d ees g, fis4 g
d4 r r2
r8 d ees g, fis4 a
d,8 d'16 c bes8 c16 d ees2 ~
- ees8 ees16 d c8 d16 ees fis,8 a16 g fis8 g16 a
+ 8 ees16 d c8 d16 ees fis,8 a16 g fis8 g16 a
d,8 d'16 c bes8 c16 d ees8 c a fis'
g f ees d c bes a g
c a d d, g2\fermata
}
\context {
\PianoStaff
- \override StaffGrouper #'between-staff-spacing #'padding = #1
+ \override StaffGrouper.staff-staff-spacing.padding = #1
}
}
}