X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fchanges.tely;h=45fbb4f885ae1eddf00440c97e376e3a5a7c4924;hb=66a7d343eb27beccd73f8b579d5ef5a635b7e542;hp=1dd439dfb0b601b2d7f85e9830d3a8abd4885023;hpb=6a3232e75d94f1b0c72c2fc986bc2c65d7e51823;p=lilypond.git diff --git a/Documentation/changes.tely b/Documentation/changes.tely index 1dd439dfb0..45fbb4f885 100644 --- a/Documentation/changes.tely +++ b/Documentation/changes.tely @@ -29,7 +29,7 @@ See user manual, \NAME\ @end macro -@documentencoding utf-8 +@documentencoding UTF-8 @documentlanguage en @afourpaper @@ -61,6 +61,87 @@ which scares away people. @end ignore +@item +LilyPond functions defined with @code{define-music-function}, +@code{define-event-function}, @code{define-scheme-function} and +@code{define-void-function} can now be directly called from Scheme +as if they were genuine Scheme procedures. Argument checking and +matching will still be performed in the same manner as when +calling the function through LilyPond input. This includes the +insertion of defaults for optional arguments not matching their +predicates. Instead of using @code{\default} in the actual +argument list for explicitly skipping a sequence of optional +arguments, @code{*unspecified*} can be employed. + +@item +Current input location and parser are now stored in GUILE fluids +and can be referenced via the function calls @code{(*location*)} +and @code{(*parser*)}. Consequently, a lot of functions +previously taking an explicit @code{parser} argument no longer do +so. + +Functions defined with @code{define-music-function}, +@code{define-event-function}, @code{define-scheme-function} and +@code{define-void-function} no longer use @code{parser} and +@code{location} arguments. + +With those particular definitions, LilyPond will try to recognize +legacy use of @code{parser} and @code{location} arguments, +providing backwards-compatible semantics for some time. + +@item +The @code{whiteout} grob property and @code{\whiteout} markup command +now create a white background built from multiple displaced copies of +the glyph in order to approximate the contours of its outline. +The previous rounded box white background can be achieved with the +new @code{whiteout-box} grob property and @code{\whiteout-box} markup +command. Setting the @code{whiteout} property to a number now sets +the thickness of the white outline as a multiple of staff-line +thickness. Similarly, overriding the @code{thickness} property of +the @code{\whiteout} markup command sets the thickness of the white +outline it produces. + +@item +In the "english" notename language, the long notenames for pitches +with accidentals now contain a hyphen for better readability. You +now have to write +@example +\key a-flat \major +@end example +instead of the previous +@example +\key aflat \major +@end example + +Double accidentals do not get another hyphen, so the Dutch +@code{cisis} has the long English notename @code{c-sharpsharp}. + +@item +The visual style of tremolo slashes (shape, style and slope) +is now more finely controlled. +@lilypond[quote,relative=2] + a8:32 b: c: d: + \override StemTremolo.shape = #'beam-like + a: b: c: d: + \override StemTremolo.style = #'constant + a: b: c: d: + g,2 +@end lilypond + + +@item +Multi-measure rests have length according to their total duration, +under the control of @code{MultiMeasureRest.space-increment}. +@lilypond[quote] +{ \compressFullBarRests + \override Staff.MultiMeasureRest.space-increment = 3.0 + R1*2 R1*12 R1*64 } +@end lilypond + +@item +Page numbers may now be printed in roman numerals, by setting the +@code{page-number-type} paper variable. + @item It is now possible to use @code{\time} and @code{\partial} together to change the time signature in mid measure. @@ -504,6 +585,15 @@ examples where this makes for readable input: \new Staff { r16 c'16 ~ 8 ~ 4 ~ 2 | } @end lilypond +@item +@code{\displayLilyMusic} and its underlying Scheme functions no +longer omit redundant note durations. This makes it easier to +reliably recognize and format standalone durations in expressions +like +@example +@{ c4 d4 8 @} +@end example + @item Beaming exceptions can now be constructed using the @code{\beamExceptions} scheme function. One can now write