1 \input texinfo @c -*-texinfo-*-
8 @chapter New features in 1.9 since 1.8
13 The syntax for chords and simultaneous music have changed.
20 while simultaneous music is entered
23 <<@var{..music list..}>>
26 In effect, the meanings of both have been swapped relative to their 1.8
27 definition. The syntax for lists in @code{\markup} has changed
28 alongside, but figured bass mode was not changed, i.e.:
31 \markup @{ \center <@var{..list of markups..}> @}
32 \figure @{ <@var{figures> @}
35 As chords the more often used than simultaneous music, this change will
39 Each music expression can now be tagged, to make different printed
40 versions from the same music expression. In the following example,
41 we see two versions of a piece of music, one for the full score, and
42 one with cue notes for the instrumental part:
46 @{ c4 f2 g @} % in the part, we have cue-notes
48 \tag #'score R1 % in the score: only a rest
52 The same can be applied to articulations, texts, etc.: they are
56 -\tag #@var{your-tags}
59 to an articulation, for example,
62 c4-\tag #'with-fingerings -4 -\tag #'with-strings \6
65 This defines a note, which has a conditional fingering and a
66 string-number indication.
69 The settings for chord-fingering are more flexible. You can specify a
70 list where fingerings may be placed, eg.
73 \property Voice.fingeringOrientations = #'(left down)
76 This will put the fingering for the lowest note below the chord, and the
80 The script previously known as @file{ly2dvi} has been renamed to
81 @file{lilypond}. The binary itself is now installed as
85 Markup text (ie. general text formatting) may now be used for lyrics too.
88 Two new commands for grace notes have been added, @code{\acciaccatura}
89 and @code{\appoggiatura},
96 Both reflect the traditional meanings of acciaccatura and appogiatura,
97 and both insert insert a slur from the first grace note to the main
101 Layout options for grace notes are now stored in a context property,
102 and may now be set separately from musical content.
105 The @code{\new} command will create a context with a unique
106 name automatically. Hence, for multi-staff scores, it is no longer
107 necessary to invent arbitrary context names. For example, a two-staff
108 score may be created by
112 \new Staff @{ @var{notes for 1st staff} @}
113 \new Staff @{ @var{notes for 2nd staff} @}
120 Octave checks make octave errors easier to correct.
127 This checks that @var{pitch} (without octave) yields @var{pitch} (with
128 octave) in \relative mode. If not, a warning is printed, and the
132 All articulations must now be entered postfix. For example,
139 is a pair of beamed slurred eighth notes.
142 The definition of @code{\relative} has been simplified. Octaves are
143 now always propagated in the order that music is entered. In the
148 \repeat "unfold" 3 BODY \alternative @{ ALT1 ALT2 @}
153 the octave of BODY is based on PRE, the starting octave of ALT1 on
154 BODY, the starting octave of ALT2 on ALT1, and the starting octave of
157 The same mechanism is used for all other music expressions, except the
158 chord. Backwards compatibility is retained through a special program option,
162 #(ly:set-option 'old-relative)
170 @chapter New features in 1.8 since 1.6
175 The chord entry code has been completely rewritten. It is now
176 cleaner and more flexible.
179 A new syntax has been added for text entry. This syntax is more
180 friendly than the old mechanism, and it is implemented in a more
181 robust and modular way. For more information, refer to the section on
182 "Text markup" in the notation manual.
185 The integration of the input language and Scheme has been made deeper:
186 you can now use LilyPond identifiers in Scheme, and use Scheme
187 expressions instead of LilyPond identifiers.
190 The internal representation of music has been cleaned up completely
191 and converted to Scheme data structures. The representation may be
195 A new uniform postfix syntax for articulation has been introduced.
196 A beamed slurred pair of eighth notes can be entered as
202 In version 2.0, postfix syntax will be the only syntax
203 available, and the dashes will become optional.
205 This will simplify the language: all articulations can be entered as
206 postfix, in any order.
209 A new syntax has been added for chords:
216 It is not necessary to update files to this syntax, but it will be for
217 using LilyPond version 2.0. In version 2.0, this syntax will be
227 \simultaneous @{ .. @}
230 for simultaneous music.
232 To convert your files from <PITCHES> to <<PITCHES>>, use the script
233 included in buildscripts/convert-new-chords.py
235 This change was introduced for the following reasons
239 It solves the "start score with chord" problem, where you have to
240 state \context Voice explicitly when a chord was the start of a
243 With the new syntax, it is possible to distinguish between
244 articulations (or fingerings) which are for a single chord note,
245 and which are for the entire chord. This allows for per-note
246 fingerings, and is more logical on the whole.
250 User code may now be executed during interpreting. The syntax for
254 \applycontext #SCHEME-FUNCTION
258 User code may now be executed on arbitrary grobs during interpreting.
259 The syntax for this feature is
262 \applyoutput #SCHEME-FUNCTION
266 SCHEME-FUNCTION takes a single argument, and is called for every grob
267 that is created in the current context.
270 New algorithms for chord-name formatting have been installed. They
271 can be tuned and have ergonomic syntax for entering exceptions.
274 Texts may now be put on multimeasure rests, e.g.
277 R1*20^\markup @{ "GP" @}
281 Ancient notation now prints ligatures in Gregorian square neumes
282 notation, roughly following the typographical style of the Liber
283 hymnarius of Solesmes, published in 1983. Ligatures are still printed
284 without the proper line breaking and horizontal spacing.
287 Glissandi can now be printed using the zigzag style.
290 LilyPond can now print clusters. The syntax is
293 \apply #notes-to-clusters @{ NOTE NOTE .. @}
297 For irregular meters, beat grouping marks can be printed. The
301 #(set-time-signature 7 8 '(3 2 2))
306 Nested horizontal brackets for music analysis can now be printed:
315 @item Ottava brackets are now fully supported as a feature. The syntax
323 @item Metronome markings are printed when a \tempo command is processed.
327 @item Fingerings can be put on chords horizontally.
331 @item The appearance of various glyphs has been fine-tuned.
335 @item Different types of percent style repeats may now be nested.
339 @item The emacs support has been extended.
343 The manual has been completely revised and extended.
347 @chapter New features in 1.6 since 1.4
353 Support for figured bass and tablature.
356 Completely rewritten beam formatting: provides much better output
361 Completely revised and improved music font.
365 Completely rewritten MIDI import support.
368 Completely rewritten grace note support. Practically speaking this
369 means that grace notes can be slurred to normal normal notes.
373 Improved accidental handling and formatting: styles for producing
374 cautionaries may vary, and complex collisions between accidentals of a
375 chord are handled much better.
378 Better spacing: both globally and locally. This includes subtle
379 details like optical stem spacing.
382 More support for ancient notation: mensural ligatures, ambitus
383 (pitch range) of voices, more shapes, etc.
386 More support for piano notation: bracket pedals, directed arpeggios,
390 Easier music polyphonic music entry.
393 More extensibility, many speedups and bugfixes
396 The manual has been thoroughly revised.
399 Development is now hosted at http://savannah.gnu.org, and sources
400 can be downloaded through anonymous CVS.
403 Support for windows: LilyPond is part of the cygwin distribution,
404 which comes with a user-friendly installer.