- Global font styles (roman, sans, typewriter) can be defined for each
\paper
block, with
#(define fonts
(make-pango-font-tree
"Times New Roman" "Helvetica" "Courier"
(/ myStaffSize 20)))
- Newly created staves and lyric lines, can be put in any vertical order,
by setting
alignBelowContext
or alignAboveContext
properties in the newly created context. An example of the use of this
is in input/regression/alignment-order.ly.
This feature has been sponsored by Bertalan Fodor.
- Staves may be stopped and started halfway a line, e.g.
b4 b \stopStaff b \startStaff b
This feature has been sponsored by Hans Forbrich.
- Grid lines, vertical lines synchronized with notes, can be drawn across
staves, by adding suitable engravers.
An example is in input/regression/grid-lines.ly,
- Lines, such as glissandi or Text-spanner lines, can have arrows at the
end, e.g.
\override Glissando #'arrow = ##t
b''2 \glissando b'
- Chord names may now be rendered in Italian and French.
- lilypond-book now makes lilypond print line numbers
relative to the input file for every error message.
- The command
\epsfile
allows inclusion of EPS graphics into
markup texts.
- There is a music function
\displayMusic
, which will display a
music expression as indented Scheme code.
- Automatic beaming is now specified explicitly for each moment
throughout a measure, which enables automatic beaming in compound
measures, as demonstrated in the following item.
- A plus sign was added to the number font. This enables printing of
compound time signatures
- A new
\circle
markup command allows for all kinds of circled
texts
- String numbers are now printed on chords as well
<c\1 e\2 g\3>
See also input/regression/string-number.ly.
This feature was sponsored by Gunther Strube.
- Notes with ledger lines will be kept at a distance, so they never
disappear.
- Clefs that are below notes of other staves are now spaced according to
engraving conventions.
- Markup texts can be appended to a
\score
block or toplevel
music expression, for example,
\relative { c' d e }
\markup { first text }
\markup { second text }
See input/regression/score-text.ly.
- TeX's
kpathsea
library is loaded dynamically, so installing
LilyPond does not require installing TeX anymore.
- Point and click editing is now supported in the PS/PDF backend as
well.
See
Point and click.
- White mensural ligatures now conform more closely to Renaissance
usage.
- With the new
tieWaitForNote
property, arpeggios may be written
out using ties, for example,
\set tieWaitForNote = ##t
\grace { c16[~ e~ g]~ } <c, e g>4
Thanks to Steve Doonan for funding development of this feature.
- Individual objects may be assigned colors, for example,
\override NoteHead #'color = #red
c4
- The PostScript backend is now used by default. This backend requires
less machinery to run, and gives more consistent results.
Ghostscript 8.x is required for PDF output. Earlier versions may hang
while converting PostScript to PDF.
- Separator slashes may be inserted between systems in a score. For an
example, see input/regression/system-separator.ly:
- Locations of errors in the input are now calculated more precisely.
- LilyPond now uses Pango and FontConfig for selecting and rendering
UTF-8 input in non-TeX backends. A font may be selected by using a
FontConfig name,
\override TextScript #'font-name = #"Serif"
or using the classic font selection mechanism
\override TextScript #'font-family = #'roman
\override TextScript #'font-series = #'bold
Any Type1 and TrueType font recognized by FontConfig is available in
LilyPond as well.
- Metrics of blocks of text can be retrieved from (La)TeX directly,
using the
-f texstr
output backend. This provides exact metrics
for texts, including kerning and accents.
- LilyPond now uses FreeType to read the Feta font as an OpenType
font. This is a cleaner design and more robust. Recent versions of
FontForge (2004 1211 or newer) and Freetype are required.
- The SVG backend is now a fully functional backend.
- A new script,
\espressivo
has been added, for a combination of
crescendo and decrescendo on a single note.
- In markups, expressions stacked with
\column
,
\center-align
, etc, are not grouped with < ... >
anymore,
but with { ... }
, eg:
\markup \column {
\line { first line }
\line { second line }
}
- LilyPond will now avoid line breaks that cause long texts to stick
outside of the page staff.
- Grace notes following a main note, used to be entered by letting the
grace notes follow a skip in a parallel expression, for example,
<< { d1 }
{ s2 \grace { c16[ d] } } >>
c4
This can now be shortened by doing
\afterGrace { d1 } { c16[ d] }
- Pagebreaks can now be forced or forbidden after title blocks. This is
achieved by setting
breakbefore
in the \header
block to
true or false.
- Shaped note heads. This feature has been sponsored by Jonathan Walther,
\set shapeNoteStyles = ##(do re mi fa #f la ti)
c d e f g a b c d e f g a b c
- Layout for titles, page header and footer can now be entered as
\markup
commands.
- Positioning of slurs can now be adjusted manually
- Grace notes are correctly quoted and formatted when using cue notes.
- Cue notes can now be created with
\cueDuring #voice-name #direction { music }
This will set stem directions and put the cue notes in the cue
Voice
.
- Stemlets, short stems over beamed rests, have been added.
\override Stem #'stemlet-length = #0.75
c8[ r8 c16 r16 c8]