- * Rehearsal marks at the beginning of a line are now placed to the
- right of the clef and key signature by default. As in previous
- versions, the `break-alignable-interface' controls the behavior.
-
- [image of music]
-
-
- * 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:
- \override Stem #'length = #5.6
- e' f' g' a'
- to this:
- \override Stem.length = 5.6
- e' f' g' a'
-
- One has to write a digit on both sides of the dot - values like
- `4.' or `-.3' are not allowed.
-
- Decimal fractions are also not accepted in `\chordmode'.
-
- * A number of shorthands like `(', `)', `|', `[', `]', `~', `\(',
- `\)' and others can now freely be redefined like normal commands.
- An example would be
-
- "\\{" = (
- "\\}" = )
- "(" = \melisma
- ")" = \melismaEnd
+ \markup {
+ \combine
+ \filled-box #'(-1 . 15) #'(-3 . 4) #1
+ \override #'(thickness . 3)
+ \whiteout whiteout-box
+ }
+ \markup {
+ \combine
+ \filled-box #'(-1 . 24) #'(-3 . 4) #1
+ \override #'(style . rounded-box)
+ \override #'(thickness . 3)
+ \whiteout whiteout-rounded-box
+ }
+ \markup {
+ \combine
+ \filled-box #'(-1 . 18) #'(-3 . 4) #1
+ \override #'(style . outline)
+ \override #'(thickness . 3)
+ \whiteout whiteout-outline
+ }
+ \relative {
+ \override Staff.Clef.whiteout-style = #'outline
+ \override Staff.Clef.whiteout = 3
+ g'1
+ }
+ image of music
+
+ • All of ‘\override’, ‘\revert’, ‘\set’, and ‘\unset’ now work with
+ the ‘\once’ prefix for making one-time settings.
+ \relative {
+ c'4 d
+ \override NoteHead.color = #red
+ e4 f |
+ \once \override NoteHead.color = #green
+ g4 a
+ \once \revert NoteHead.color
+ b c |
+ \revert NoteHead.color
+ f2 c |
+ }
+ image of music
+
+ • When outputting MIDI, LilyPond will now store the ‘title’ defined
+ in a score’s ‘\header’ block (or, if there is no such definition on
+ the ‘\score’ level, the first such definition found in a ‘\header’
+ block of the score’s enclosing ‘\bookpart’, ‘\book’, or top-level
+ scope) as the name of the MIDI sequence in the MIDI file.
+ Optionally, the name of the MIDI sequence can be overridden using
+ the new ‘midititle’ ‘\header’ field independently of ‘title’ (for
+ example, in case ‘title’ contains markup code which does not render
+ as plain text in a satisfactory way automatically).
+
+ • Music (and scheme and void) functions and markup commands that just
+ supply the final parameters to a chain of overrides, music function
+ and markup command calls can now be defined in the form of just
+ writing the expression cut short with ‘\etc’.
+
+ 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 -! }
+ image of music
+
+ • LilyPond functions defined with ‘define-music-function’,
+ ‘define-event-function’, ‘define-scheme-function’ and
+ ‘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 ‘\default’ in the actual argument list for
+ explicitly skipping a sequence of optional arguments,
+ ‘*unspecified*’ can be employed.
+
+ • Current input location and parser are now stored in GUILE fluids
+ and can be referenced via the function calls ‘(*location*)’ and
+ ‘(*parser*)’. Consequently, a lot of functions previously taking
+ an explicit ‘parser’ argument no longer do so.
+
+ Functions defined with ‘define-music-function’,
+ ‘define-event-function’, ‘define-scheme-function’ and
+ ‘define-void-function’ no longer use ‘parser’ and ‘location’
+ arguments.
+
+ With those particular definitions, LilyPond will try to recognize
+ legacy use of ‘parser’ and ‘location’ arguments, providing
+ backwards-compatible semantics for some time.
+
+ • In the "english" notename language, the long notenames for pitches
+ with accidentals now contain a hyphen for better readability. You
+ now have to write
+ \key a-flat \major
+ instead of the previous
+ \key aflat \major
+
+ Double accidentals do not get another hyphen, so the Dutch ‘cisis’
+ has the long English notename ‘c-sharpsharp’.
+
+ • The visual style of tremolo slashes (shape, style and slope) is now
+ more finely controlled.
+ image of music
+
+ • Multi-measure rests have length according to their total duration,
+ under the control of ‘MultiMeasureRest.space-increment’.
+ image of music
+
+ • Page numbers may now be printed in roman numerals, by setting the
+ ‘page-number-type’ paper variable.
+
+ • It is now possible to use ‘\time’ and ‘\partial’ together to change
+ the time signature in mid measure.
+
+ \override Score.BarNumber.break-visibility = #end-of-line-invisible
+ \partial 4 \time 3/4 f4 | 2 4 | 2 \bar "||"
+ \time 9/8 \partial 4. f8 8 8 | 2. 8 8 8 |
+ image of music
+
+ • It is now possible to override the ‘text’ property of chord names.