\input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
@setfilename NEWS.info
@settitle NEWS
@ifhtml
@macro inputfileref{DIR,NAME}
@uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
@end macro
@macro usermanref{NAME}
@inforef{\NAME\,,../user/lilypond/lilypond}@c
@end macro
@end ifhtml
@ifnothtml
@macro inputfileref{DIR,NAME}
@file{\DIR\/\NAME\}@c
@end macro
@macro usermanref{NAME}
See user manual, \NAME\
@end macro
@end ifnothtml
@macro textanchor{NAME}
@html
@end html
@end macro
@documentencoding utf-8
@documentlanguage en
@finalout
@ifnottex
@node Top
@top
@end ifnottex
@unnumbered New features in 2.9 since 2.8
@ifhtml
This document is also available in @uref{NEWS.pdf,PDF}. It's part of
the @uref{../,LilyPond Documentation}
@end ifhtml
@itemize @bullet
@ignore
HINTS
* only show verbatim input for syntax/input changes
* try to be as brief possible in those cases
* don't try to provide real-world examples, they often get too big,
which scares away people.
* Write complete sentences.
* only show user-visible changes.
@end ignore
@item Calculation of note head durations is now softcoded.
@lilypond[relative=1,fragment,ragged-right]
%% use half heads for whole notes.
\override NoteHead #'duration-log = 1
c1 c2 c4 c8[ c16 c]
@end lilypond
@c Please insert any new material above this line. -gp
@item Chords can now be partially tied,
@lilypond[ragged-right,relative,fragment]
@end lilypond
This feature was sponsored by Steve Doonan.
@item Lyric extenders now have tunable padding.
This feature was sponsored by David Griffel.
@item
Instrument changes are better supported: names in the margin can be
changed half-way during a staff, and cues are printed automatically.
This feature was sponsored by Kieren MacMillan.
@item
Barlines can be dashed now,
@lilypond[relative,ragged-right,fragment]
c4 \bar "dashed" c4
@end lilypond
This feature was sponsored by Kieren MacMillan.
@item
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
This feature was sponsored by Trevor Bača.
@item
Durations of grace notes are taken into account for spacing,
@lilypond[relative=2,ragged-right,fragment]
c
\grace { c8[ c16 d c8] }
c
@end lilypond
This feature was sponsored by Trevor Bača.
@item
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
This feature was sponsored by Trevor Bača.
@item
Falls and doits can be added to notes
@lilypond[fragment,ragged-right,relative=2]
\override Score.SpacingSpanner #'shortest-duration-space = #3.0
c4-\bendAfter #+5
c4-\bendAfter #-3
@end lilypond
This feature was sponsored by Anthony Youngman and Paul Scott.
@item
@code{lilypond-book} now includes support for PDF@TeX{}.
This feature was sponsored by David Roundy.
@item
Nested tuplets can have different formatting for each nesting level,
@lilypond[ragged-right]
\new Staff {
\time 5/4
\tweak #'text #tuplet-number::calc-fraction-text
\times 5/3 {
\tweak #'text #tuplet-number::calc-denominator-text
\times 2/3 {
c'8[ c'8 c'8]
}
\times 2/3 {
c'8[ c'8 c'8]
}
\times 2/3 {
c'8[ c'8 c'8]
}
}
}
@end lilypond
This feature was sponsored by Trevor Bača.
@item
New sections with different spacing parameters can be started with
@code{newSpacingSection}. This is useful when there are
sections with a different notions of long and short notes.
In the following example, the time signature change introduces a new
section, and hence the 16ths notes are spaced wider.
@lilypond[relative,fragment]
\time 2/4
c4 c8 c
c8 c c4 c16[ c c8] c4
\newSpacingSection
\time 4/16
c16[ c c8]
@end lilypond
This feature was sponsored by Trevor Bača, Michael Meixner and Vivian
Barty-Taylor.
@item
A new, automated testing technique has been added. It will detect
changes in the formatting automatically, which will make it easier to
spot regression errors in the future.
View @uref{../../test-results.html,test results}.
@item
Figured bass can also be added to @code{Staff} contexts directly. In
this case, their vertical position is adjusted automatically.
@lilypond[ragged-right,fragment]
<<
\new Staff = someUniqueName
\relative c'' {
c4 c'8 r8 c,4 c'
}
%% send to existing Staff.
\context Staff = someUniqueName
\figuremode {
<4>4 <6 10>8 s8
\set Staff.useBassFigureExtenders = ##t
<4 6>4 <4 6>
}
>>
@end lilypond
This feature was sponsored by Trent Johnston.
@item
Beams may be put on isolated stems, and beamlets may be paired by
setting the @code{max-beam-connect} property,
@lilypond[ragged-right,relative=2,fragment]
\override Stem #'max-beam-connect = #1
c16[ c16] c32[]
@end lilypond
This feature was sponsored by Trevor Bača.
@item
Beaming patterns obey the @code{beatGrouping} property.
@lilypond[ragged-right,relative=2,fragment]
\time 5/16
\set beatGrouping = #'(2 3)
c8[^"(2+3)" c16 c8]
\set beatGrouping = #'(3 2)
c8[^"(3+2)" c16 c8]
@end lilypond
This feature was sponsored by Trevor Bača.
@item
With the command @code{\transposedCueDuring} a cue's transposition can
be changed locally. This can be used to prevent excessive ledger
lines on cues.
This feature was contributed by Werner Lemberg
@item
By setting @code{hairpinToBarline}, hairpins will stop at
the barline preceding the ending note.
@lilypond[relative=2,fragment,ragged-right]
\set hairpinToBarline = ##t
\override Hairpin #'bound-padding = #1.0
c4\< c2. c4\!
@end lilypond
This feature was sponsored by Andrew Sidwell and Trevor Bača.
@item
Objects may be rotated using the @code{rotation} property.
@lilypond[ragged-right,fragment,relative=1]
{
\override Hairpin #'rotation = #'(20 -1 0)
g4\<^\markup { \rotate #180 "test" } b d f'\!
}
@end lilypond
This feature was contributed by Erlend Aasland.
@item
Hairpins now support circled tips (al niente notation).
@lilypond[ragged-right,fragment,relative=2]
{
\override Hairpin #'circled-tip = ##t
c2\< c\!
c4\> c\< c2\!
}
@end lilypond
This feature was contributed by Erlend Aasland.
@item
The MusicXML convertor has been sped up, and has rudimentary support
for percussion notation. It will also condense multi-bar rests to
enable part extraction.
@item
The beam printing code has been completely rewritten, and now includes
support for feathered beaming,
@lilypond[ragged-right,fragment,relative=2]
\featherDurations #(ly:make-moment 5 4)
{
\override Beam #'grow-direction = #LEFT
c16[
c c c
c c c ]
}
@end lilypond
Known bug: the \featherDuration command only works with very short music
snippets.
This feature was sponsored by Jamie Bullock.
@item
The @code{\note} markup command now also accepts note head styles.
@lilypond[ragged-right,fragment,relative=2]
c4^\markup {
\override #'(style . triangle) \note-by-number #2 #1 #1 = 100
}
@end lilypond
This feature was sponsored by Jamie Bullock.
@item
Tie chord formatting also works with arpegiated
ties.
@lilypond[ragged-right]
\relative c'' {
2~ |
\set tieWaitForNote = ##t
e8~ c~ a~ f~ 2 |
f,8~ a~ c~ e~ 2 |
}
@end lilypond
This feature was sponsored by Steve Doonan.
@end itemize
@ifhtml
For older news, go to
@uref{http://lilypond.org/doc/v2.8/Documentation/topdocs/NEWS.html},
or @uref{../,go back} to the Documentation index.
@end ifhtml
@bye