]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/changes.tely
Issue 4487/4: add Changes entry for \etc
[lilypond.git] / Documentation / changes.tely
index f6137cf8f293f7adee43cf5479a9b7d705d1ec31..f706653f3dafa4da28545e5e0ef5b15b3ef2af86 100644 (file)
@@ -61,6 +61,21 @@ which scares away people.
 
 @end ignore
 
+@item
+Music (and scheme and void) functions and markup commands that
+just supply the final parameters to a chain of music and function
+and markup command calls, respectively, can now be defined in the
+form of just writing the expression cut short with @code{\etc}.
+@lilypond[verbatim,quote]
+bold-red-markup = \markup \bold \with-color #red \etc
+highlight = \tweak font-size 3 \tweak color #red \etc
+
+\markup \bold-red "text"
+\markuplist \column-lines \bold-red { One Two }
+
+{ c' \highlight d' e'2-\highlight -! }
+@end lilypond
+
 @item
 LilyPond functions defined with @code{define-music-function},
 @code{define-event-function}, @code{define-scheme-function} and
@@ -74,17 +89,32 @@ argument list for explicitly skipping a sequence of optional
 arguments, @code{*unspecified*} can be employed.
 
 @item
-The definition of LilyPond functions with
-@code{define-music-function}, @code{define-event-function},
-@code{define-scheme-function} and @code{define-void-function} no
-longer requires specification of @code{parser} and @code{location}
-arguments.  Current parser and input location are part of the
-current dynamic state and can be accessed with the function calls
-@code{(*parser*)} and @code{(*location*)} when required.
+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.
 
-LilyPond makes a best-faith attempt of recognizing legacy use of
-@code{parser} and @code{location} arguments and will provide
-backwards-compatible semantics for some time.
+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