NEWS
****

New features in 2.5 since 2.4
*****************************

   * 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
     [image of music]

     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',

     [image of music]

   * Lines, such as glissandi or Text-spanner lines, can have arrows at
     the end, e.g.

     \override Glissando #'arrow = ##t
     b''2 \glissando b'
     [image of music]

   * 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

     [image of music]

   * A new `\circle' markup command allows for all kinds of circled
     texts

     [image of music]

   * String numbers are now printed on chords as well

     <c\1 e\2 g\3>
     [image of music]

     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 }

          [image of music]


     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 the section Point and click in he user manual.

   * 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
     [image of music]

     Thanks to Steve Doonan for funding development of this feature.

   * Individual objects may be assigned colors, for example,

     	\override NoteHead #'color = #red
     	c4
     [image of music]

   * 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
     [image of music]

   * 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]
     [image of music]




Local Variables:
coding: utf-8
End:
