@end ignore
+@item
+Decimal numbers can now be written directly in music,
+without a hash sign. Together with the previous change
+in the way object properties are specified, the code to
+change the length of stems has changed from this:
+@example
+\override Stem #'length = #5.6
+e' f' g' a'
+@end example
+to this:
+@example
+\override Stem.length = 5.6
+e' f' g' a'
+@end example
+
+One has to write a digit on both sides of the dot -- values like
+@code{4.} or @code{-.3} are not allowed.
+
+Decimal fractions are also not accepted in @code{\chordmode}.
+
+@item
+A number of shorthands like @code{(}, @code{)}, @code{|},
+@code{[}, @code{]}, @code{~}, @code{\(}, @code{\)} and others can
+now freely be redefined like normal commands. An example would be
+@lilypond[verbatim,quote]
+"\\{" = (
+"\\}" = )
+"(" = \melisma
+")" = \melismaEnd
+
+\new Staff <<
+ \relative c' {
+ c8 \{ d e f \} % slurred
+ g ( a b c ) % no slur, but with melisma
+ c,1 \bar "|."
+ }
+ \addlyrics { Li -- ly -- pond. }
+>>
+@end lilypond
+
+@item
+The articulation shorthand for @code{\staccatissimo} has been
+renamed from @code{-|} to@tie{}@code{-!}.
+
+@item
+Tempo change ranges are now written as @code{\tempo 4 = 60 - 68}
+rather than @code{\tempo 4 = 60 ~ 68}.
+
+@item
+Grob @code{OctavateEight} was renamed to @code{ClefModifier}.
+Related context properties were renamed from @code{xxxOctavationyyy}
+to @code{xxxTranspositionyyy}.
+
+@item
+There is a new @code{\absolute} command explicitly marking music
+as being entered in absolute pitch. While this has been the
+default previously, an explicit @code{\absolute} also prevents
+reinterpretation when the passage is placed inside of
+@code{\relative}:
+@lilypond[verbatim,quote]
+\relative c { c'4 \absolute { f'' g'' } c }
+@end lilypond
+
@item
When @code{\relative} is used without an explicit reference pitch,
the reference pitch now is the middle of the first octave, making
was equivalent to @code{\transposition f'}. Now it stays
equivalent to @code{\transposition bes'}.
+@item
+When checking for collisions, LilyPond no longer treats objects as
+rectangles. Instead, the actual shape of objects is approximated
+using an integral-like approach. This generally results in more
+even and snug positioning of objects and systems:
+
+@lilypond[relative=1]
+#(ly:set-option 'debug-skylines #t)
+\dynamicUp
+c'4\f a4\f d\f( f)
+a,4\< c c c\!
+d4-.\downbow a4^"r'venu..." c \tempo "T1" e
+@end lilypond
+
+Previously, the above snippet looked like this:
+
+@lilypond[relative=1]
+#(ly:set-option 'debug-skylines #t)
+\override Hairpin #'vertical-skylines = #'()
+\override DynamicText #'vertical-skylines = #'()
+\override TextScript #'vertical-skylines = #'()
+\override Score.MetronomeMark #'vertical-skylines = #'()
+\override Staff.Clef #'vertical-skylines = #'()
+\dynamicUp
+c'4\f a4\f d\f( f)
+a,4\< c c c\!
+d4-.\downbow a4^"r'venu..." c \tempo "T1" e
+@end lilypond
+
+Affected objects include @code{Accidentals}, @code{Beams}, @code{Clefs},
+@code{Dynamics}, @code{FiguredBass}, @code{Flags}, @code{Glissandos},
+@code{Lyrics}, @code{MetronomeMarks}, @code{OttavaBrackets},
+@code{Pedals}, @code{RehearsalMarks}, @code{Rests}, @code{Scripts},
+@code{TextScripts}, @code{Ties}, @code{Tuplets} and @code{VoltaBrackets}.
+
@item
Tuplets are now created with the @code{\tuplet} command, which
takes a fraction @code{@var{t}/@var{n}} to specify that @var{t}
@acronym{URI}s) still starts at@tie{}0.
@item
-The @code{\clef} command supports optional octavation:
+The @code{\clef} command supports optional transposition:
@lilypond[verbatim,quote,relative=1]
\clef "treble_(8)"
c2 c
@lilypond[quote,relative=0]
\override Staff.KeySignature #'flat-positions = #'((-5 . 5))
\override Staff.KeyCancellation #'flat-positions = #'((-5 . 5))
-\clef bass \key es\major es g bes d
-\clef treble \bar "||" \key es\major es g bes d
+\clef bass \key es \major es g bes d
+\clef treble \bar "||" \key es \major es g bes d
\override Staff.KeySignature #'sharp-positions = #'(2)
-\bar "||" \key d\major b fis b2
+\bar "||" \key d \major b fis b2
@end lilypond
@end itemize