@end macro
@end ifnothtml
-
@macro textanchor{NAME}
@html
<a name="\NAME\"></a>
@node Top
@top
@end ifnottex
-@unnumbered New features in 2.9 since 2.8
+@unnumbered New features in 2.11 since 2.10
@ifhtml
This document is also available in @uref{NEWS.pdf,PDF}. It's part of
-the @uref{../,LilyPond Documentation}
+the @uref{../,LilyPond Documentation} .
@end ifhtml
@end ignore
@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'\!
-}
+Arpeggios may now use ``parenthesis'' style brackets:
+
+@lilypond[relative,ragged-right]
+ \override Arpeggio #'stencil = #ly:arpeggio::brew-chord-slur
+
+ % Note: does not work for cross staff arpeggios.
+ \override Arpeggio #'X-extent = #ly:grob::stencil-width
+ <c g' c>2\arpeggio ~ c
@end lilypond
-This feature was contributed by Erlend Aasland.
+@item
+Enclosing text within boxes with rounded corners is now possible,
+using the @code{rounded-box} command.
@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
+@command{lilypond-book} can run any program instead of @command{latex}
+to guess the line width, thanks to @code{--latex-program} command line
+option.
-This feature was contributed by Erlend Aasland.
+@item
+@code{\setEasyHeads} has been renamed to @code{\easyHeadsOn}, and a new
+command @code{\easyHeadsOff} reverts note heads to normal heads.
-@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
+@code{\fatText}, @code{\emptyText} and @code{\compressMusic} have been
+renamed to @code{\textLengthOn}, @code{\textLengthOff} and
+@code{\scaleDurations}, respectively.
@item
-The beam printing code has been completely rewritten, and now includes
-support for feathered beaming,
+Underlining is now possible with the @code{\underline} markup command.
-@lilypond[ragged-right,fragment,relative=2]
-\featherDurations #(ly:make-moment 5 4)
-{
- \override Beam #'grow-direction = #LEFT
- c16[
- c c c
- c c c c ]
- }
-@end lilypond
+@item
+It is now possible to specify, using the @code{page-count} variable in
+the paper block, the number of pages that will be used.
-This feature was sponsored by Jamie Bullock.
+@item
+A new page breaking function, @code{ly:minimal-breaking}, is dedicated
+to books with many pages or a lot of texts.
@item
-The @code{\note} markup command now also accepts note head styles.
+A table of contents is included using @code{\markuplines \table-of-contents}.
+Elements are added to it using the @code{\tocItem} command.
-@lilypond[ragged-right,fragment,relative=2]
-c4^\markup {
- \override #'(style . triangle) \note-by-number #2 #1 #1 = 100
+@item
+Text spreading over several pages is entered using the
+@code{\markuplines} keyword. Builtin markup list commands, such as
+@code{\justified-lines} or @code{\wordwrap-lines} may be used, and new
+ones created using the @code{define-markup-list-command} Scheme macro.
+
+@item
+Particular points of a book may be marked with the @code{\label}
+command. Then, the page where these points are placed can be refered to
+using the @code{\page-ref} markup command.
+
+@item
+Page breaking and page turning commands (@code{\pageBreak},
+@code{\noPageBreak}, etc) can be used at top-level, between scores and
+top-level markups.
+
+@item
+The following options are now changed as a @code{-d} sub-option:
+@code{--backend}, @code{--safe}, @code{--preview} and
+@code{--no-pages} (which became @code{-dno-print-pages}). The @code{-b}
+option does not exist any more.
+
+@item
+Improved testing procedure now catch changes in CPU and memory
+performance, page layout, MIDI results and warnings. This helps to
+reduce the number of regression errors during development, resulting
+in more stable releases.
+
+See @uref{INSTALL.html#testing} for more information.
+@item
+Nested properties, such as @code{details} in @code{Slur}, can be
+reverted as well. The syntax for this is
+
+@example
+\revert Slur #'(details closeness-factor)
+@end example
+
+@item
+All line spanners are more flexible now in the configuration of
+their end points. This includes glissando, voice followers, text
+crescendos and other text spanners. The old syntax for setting
+text on line spanners is no longer valid.
+
+@c with ragged-right we can't see the gliss.
+@lilypond[]
+\relative c'' {
+ \override Glissando #'bound-details #'right #'text = \markup { \hcenter \bold down }
+ \override Glissando #'bound-details #'right #'Y = #-4
+ \override Glissando #'bound-details #'right #'padding = #0.0
+ \override Glissando #'bound-details #'left #'arrow = ##t
+ \override Glissando #'bound-details #'left #'padding = #3.0
+ \override Glissando #'style = #'trill
+
+ c1 \glissando c'
}
@end lilypond
-This feature was sponsored by Jamie Bullock.
+This feature was sponsored by Trevor Bača.
+
@item
-Tie chord formatting also works with arpegiated
-ties.
+The environment variable LILYPONDPREFIX has been renamed to
+LILYPOND_DATADIR.
+
+@item
+Notes or rests, such as a typical end note, that fill an entire
+measure are preceded by some more space.
@lilypond[ragged-right]
-\relative c'' {
- <e c a f>2~ <e c a f> |
- \set tieWaitForNote = ##t
- e8~ c~ a~ f~ <e' c a f>2 |
- f,8~ a~ c~ e~ <f, a c e>2 |
+\relative c' {
+ \time 4/4
+ s1
+ c2. c4
+ \time 3/4
+ c2.
+}
+@end lilypond
+
+@item All @code{\score}s in a lilypond-book fragment are now inserted
+into the document. Also, toplevel markups don't result in an entire
+page.
+
+@item Alterations (such as a sharp and flat) may now be arbitrary
+fractions. This allows some forms of microtonal music. For example,
+Turkish makam music uses 1/9th tone alterations.
+
+@lilypondfile{makam.ly}
+
+
+
+@item Tie directions may be set with @code{^~} and @code{_~}
+
+@item Tablature now supports harmonics and slides,
+
+@lilypond[fragment,ragged-right,relative=1]
+\new TabVoice
+{
+ <c g'\harmonic> d\2\glissando e\2
+}
+@end lilypond
+
+This feature was sponsored by Mike Amundsen
+
+@item Horizontal spacing now follows object outlines more
+accurately. This allows tighter horizontal spacing.
+
+@lilypond[fragment,ragged-right]
+{
+ \stemUp c''4...*1/2
+ ceses'!
}
@end lilypond
-This feature was sponsored by Steve Doonan.
+@item Objects that belong outside of the staff are
+now positioned automatically to avoid collisions.
+
+@lilypond[fragment,ragged-right,relative=1]
+ c''
+ \once \override TextScript #'self-alignment-X = #CENTER
+ a,^"this doesn't collide with the c"
+ b^"this goes above the previous markup"
+ a8_"this goes below the dynamic"
+ a\f
+@end lilypond
+
+@item Staves are spaced vertically using a skyline algorithm. This helps to avoid
+uneven vertical spacing.
+@lilypond[ragged-right]
+
+%% todo: fix 'landscape PDF.
+#(set-default-paper-size "a6" )
+\header {
+ tagline = ##f
+}
+
+\book {
+ \score {
+ {
+ a,,1 | a'4 b' c'' d'' \break
+ \repeat unfold 2 {a' b' c'' d''} | b''''1
+ }
+ }
+}
+@end lilypond
@end itemize
@ifhtml
For older news, go to
-@uref{http://lilypond.org/doc/v2.8/Documentation/topdocs/NEWS.html},
+@uref{http://lilypond.org/doc/v2.10/Documentation/topdocs/NEWS.html},
or @uref{../,go back} to the Documentation index.