Subject: LilyPond 2.0 - make beautiful music prints Dear music enthousiasts, LilyPond version 2.0 was released today. LilyPond is an automated music notation system: it is used to make gorgeous sheet music. It is libre software ("open source"), and available for most Unix flavors, including Linux and MacOS X, and MS Windows. Use it for your music too! For this version, we have dramatically simplified many parts of the syntax, making it easier to use than ever before. Other improvements include quarter-tone accidentals, and conditional inclusion of music fragments. With version 2.0, we have a solid platform for working on notation and typography features for coming versions. Downloads, examples and documentation are available from the website, http://lilypond.org A big thank-you goes out to our hackers and bughunters: Mats Bengtsson, Heikki Junes, Juergen Reuter, Antonio Palama, Benjamin Milde, Daniel Berjon Diez, David Bobroff, David Rayleigh Arnold, Erik Ronstroem, Fabio dos Santos, Fodor Bertalan, Frederic Bron, Graham Percival, Ian Bailey-Mortimer, John Williams, Josza Marton, Marco Caliari, Matthieu Amiguet, Michael Welsh Duggan, Patrick Atamaniuk, Paul Scott, Pedro Kroeger, Peter Lutek, Richard Schoeller, Thorkil Wolvendans, and Werner Trobin Happy music printing, Han-Wen Nienhuys & Jan Nieuwenhuizen (core development team)
ih
for a half-sharp and eh
for a half-flat. Hence, the
following is an ascending list of pitches:
ceses ceseh ces ceh c cih cis cisih cisis
\duration #SCHEME-DURATION \pitch #SCHEME-PITCH \outputproperty func symbol = value
For \outputproperty
, the following may be substituted:
\applyoutput #(outputproperty-compatibility func symbol value)
\clef "G_8" \clef "G_15" \clef "G_9"
<pitches>
while simultaneous music is entered as
<<..music list..>>
In effect, the meanings of both have been swapped relative to their 1.8
definition. The syntax for lists in \markup
has changed
alongside, but figured bass mode was not changed, i.e.:
\markup { \center <..list of markups..> } \figure { <figures> }
As chords the more often used than simultaneous music, this change will save keystrokes.
<< \tag #'part << { c4 f2 g4 } % in the part, we have cue-notes \\ R1 >> \tag #'score R1 % in the score: only a rest >>
The same can be applied to articulations, texts, etc.: they are made by prepending
-\tag #your-tags
to an articulation, for example,
c4-\tag #'with-fingerings -4 -\tag #'with-strings \6
This defines a note, which has a conditional fingering and a string-number indication.
\property Voice.fingeringOrientations = #'(left down)
This will put the fingering for the lowest note below the chord, and the rest to the left.
ly2dvi
has been renamed to
lilypond
. The binary itself is now installed as
lilypond-bin
.
\acciaccatura
and \appoggiatura
,
\appoggiatura f8 e4 \acciaccatura g8 f4
Both reflect the traditional meanings of acciaccatura and appogiatura, and both insert insert a slur from the first grace note to the main note.
\new
command will create a context with a unique
name automatically. Hence, for multi-staff scores, it is no longer
necessary to invent arbitrary context names. For example, a two-staff
score may be created by
\simultaneous { \new Staff { notes for 1st staff } \new Staff { notes for 2nd staff } }
\octave pitch
This checks that pitch (without octave) yields pitch (with octave) in \relative mode. If not, a warning is printed, and the octave is corrected.
c8[( d8])
is a pair of beamed slurred eighth notes.
\relative
has been simplified. Octaves are
now always propagated in the order that music is entered. In the
following example,
PRE \repeat "unfold" 3 BODY \alternative { ALT1 ALT2 } POST
the octave of BODY is based on PRE, the starting octave of ALT1 on BODY, the starting octave of ALT2 on ALT1, and the starting octave of POST on ALT2.
The same mechanism is used for all other music expressions, except the chord. Backwards compatibility is retained through a special program option, which is set through
#(ly:set-option 'old-relative)
.ly
file to process and view
it automagically through the new lily-wins
frontend.