@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 Slurs now avoid clefs and key changes.
-
-@lilypond[fragment,ragged-right]
-\new Staff { \clef bass c^( \clef "G" g') }
-@end lilypond
-
-@item The @code{FretBoards} context will generate guitar frettings
-automatically,
-
-@lilypond[fragment,relative=0,verbatim,ragged-right]
-\new FretBoards { <d\5 fis a d fis> }
-@end lilypond
-
-This feature was sponsored by Rick Hansen.
-
-@item Horizontal and vertical spacing are now done at the same time
-so that pages are filled more evenly.
-
-@item The page breaking algorithm is capable of detecting page turns
-and formatting the music accordingly.
-
-@c Insert any new material above this line. -gp
-
-@item Guitar right hand fingerings may
-now also be added,
-
-@lilypond[fragment,relative=1,ragged-right]
-\relative
-{
- \set strokeFingerOrientations = #'(right) % up left down
- \set fingeringOrientations = #'(down left up) % up left down
- \set stringNumberOrientations = #'(down up left) % (up right down)
- <c-1\4
- -\rightHandFinger #1
- e-2\5
- -\rightHandFinger #2
- g-3\6
- -\rightHandFinger #3
- >
-}
-@end lilypond
-
-This feature was sponsored by William Wilson.
-
-@item By defining a clip region, a cutout EPS file of a number of measures
-may be generated from the complete score. Hence, it is no longer
-necessary to create separate files to create extracts of (long)
-scores. An example is shown in
-@file{input/regression/clip-systems.ly}.
-
-This feature was sponsored by Rick Hansen.
-
-
-@item Lyric texts may include tie symbols by using the @code{~}
-symbol,
-
-@lilypond[relative=1,fragment,ragged-right]
- { c4 f2 g4 }
- \addlyrics {
- o la~oo ah
- }
-@end lilypond
-
-@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
-
-@item Chords can now be partially tied,
-
-@lilypond[ragged-right,relative,fragment]
-<c~ e g~ b> <c e g b>
-@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.
+@code{\setEasyHeads} has been renamed to @code{\easyHeadsOn}, and a new
+command @code{\easyHeadsOff} reverts note heads to normal heads.
@item
-Barlines can be dashed now,
-
-@lilypond[relative,ragged-right,fragment]
-c4 \bar "dashed" c4
-@end lilypond
-
-This feature was sponsored by Kieren MacMillan.
+@code{\fatText} and @code{\emptyText} have been renamed to
+@code{\textLengthOn} and @code{\textLengthOff}, respectively.
@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.
-
+Underlining is now possible with the @code{\underline} markup command.
@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.
+It is now possible to specify, using the @code{page-count} variable in
+the paper block, the number of pages that will be used.
@item
-Tuplet brackets can be made to run to prefatory matter or
-the next note
+A new page breaking function, @code{ly:minimal-breaking}, is dedicated
+to books with many pages or a lot of texts.
-@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
+@item
+A table of contents is included using @code{\markuplines \table-of-contents}.
+Elements are added to it using the @code{\tocItem} command.
+@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.
-This feature was sponsored by Trevor Bača.
+@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
-Falls and doits can be added to notes
+Page breaking and page turning commands (@code{\pageBreak},
+@code{\noPageBreak}, etc) can be used at top-level, between scores and
+top-level markups.
-@lilypond[fragment,ragged-right,relative=2]
-\override Score.SpacingSpanner #'shortest-duration-space = #3.0
-c4-\bendAfter #+5
-c4-\bendAfter #-3
-@end lilypond
+@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.
-This feature was sponsored by Anthony Youngman and Paul Scott.
+@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
-@code{lilypond-book} now includes support for PDF@TeX{}.
+Nested properties, such as @code{details} in @code{Slur}, can be
+reverted as well. The syntax for this is
-This feature was sponsored by David Roundy.
+@example
+\revert Slur #'(details closeness-factor)
+@end example
@item
-Nested tuplets can have different formatting for each nesting level,
+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.
-@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]
- }
- }
+@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 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.
+The environment variable LILYPONDPREFIX has been renamed to
+LILYPOND_DATADIR.
@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}.
+Notes or rests, such as a typical end note, that fill an entire
+measure are preceded by some more space.
-@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>
- }
->>
+@lilypond[ragged-right]
+\relative c' {
+ \time 4/4
+ s1
+ c2. c4
+ \time 3/4
+ c2.
+}
@end lilypond
-This feature was sponsored by Trent Johnston.
+@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
-Beams may be put on isolated stems, and beamlets may be paired by
-setting the @code{max-beam-connect} property,
+@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.
-@lilypond[ragged-right,relative=2,fragment]
- \override Stem #'max-beam-connect = #1
- c16[ c16] c32[]
-@end lilypond
+@lilypondfile{makam.ly}
-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 Tie directions may be set with @code{^~} and @code{_~}
-@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.
+@item Tablature now supports harmonics and slides,
-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]
+@lilypond[fragment,ragged-right,relative=1]
+\new TabVoice
{
- \override Hairpin #'rotation = #'(20 -1 0)
- g4\<^\markup { \rotate #180 "test" } b d f'\!
+ <c g'\harmonic> d\2\glissando e\2
}
@end lilypond
-This feature was contributed by Erlend Aasland.
+This feature was sponsored by Mike Amundsen
-@item
-Hairpins now support circled tips (al niente notation).
-@lilypond[ragged-right,fragment,relative=2]
+@item Horizontal spacing now follows object outlines more
+accurately. This allows tighter horizontal spacing.
+
+@lilypond[fragment,ragged-right]
{
- \override Hairpin #'circled-tip = ##t
- c2\< c\!
- c4\> c\< c2\!
+ \stemUp c''4...*1/2
+ ceses'!
}
@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
+@item Objects that belong outside of the staff are
+now positioned automatically to avoid collisions.
-Known bug: the \featherDuration command only works with very short music
-snippets.
+@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
-This feature was sponsored by Jamie Bullock.
+@item Staves are spaced vertically using a skyline algorithm. This helps to avoid
+uneven vertical spacing.
-@item
-The @code{\note} markup command now also accepts note head styles.
+@lilypond[ragged-right]
-@lilypond[ragged-right,fragment,relative=2]
-c4^\markup {
- \override #'(style . triangle) \note-by-number #2 #1 #1 = 100
+%% todo: fix 'landscape PDF.
+#(set-default-paper-size "a6" )
+\header {
+ tagline = ##f
}
-@end lilypond
-
-This feature was sponsored by Jamie Bullock.
-
-@item
-Tie chord formatting also works with arpegiated
-ties.
-@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 |
+\book {
+ \score {
+ {
+ a,,1 | a'4 b' c'' d'' \break
+ \repeat unfold 2 {a' b' c'' d''} | b''''1
+ }
+ }
}
@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},
+@uref{http://lilypond.org/doc/v2.10/Documentation/topdocs/NEWS.html},
or @uref{../,go back} to the Documentation index.