New features in 1.8 since 1.6
=============================
-** There chord entry code has been completely rewritten. It is now
+** The chord entry code has been completely rewritten. It is now
cleaner and more flexible.
-** A new syntax has been added for text entry.
-
-This syntax is more friendly than the old mechanism, and it is
-implemented in a more robust and modular way.
+** A new syntax has been added for text entry. This syntax is more
+friendly than the old mechanism, and it is implemented in a more
+robust and modular way. For more information, refer to the section on
+"Text markup" in the notation manual.
** Deeper integration of the input language and Scheme. You can now use
LilyPond identifiers in Scheme, and use Scheme expressions instead of
LilyPond identifiers.
** The internal representation of music has been cleaned up completely
-converted to Scheme data structure. The representation may be
+and converted to Scheme data structures. The representation may be
exported as XML.
** A new syntax has been added for chords:
<< PITCHES >>
-In version 2.0, this syntax will be changed to
+It is not necessary to update files to this syntax, but it will be for
+using LilyPond version 2.0. In version 2.0, this syntax will be
+changed to
< PITCHES > for chords
\simultaneous { .. } for simultaneous music.
+To convert your files from <PITCHES> to <<PITCHES>>, use the script
+included in buildscripts/convert-new-chords.py
+
** A new uniform postfix syntax for articulation has been introduced.
A beamed slurred pair of eighth notes can be entered as
In version 2.0, postfix syntax will be the only syntax
available, and the dashes will become optional.
-** User code may now be executed during interpreting.
-
-The syntax for this code is
+** User code may now be executed during interpreting. The syntax for
+this code is
\applycontext #SCHEME-FUNCTION
-** New algorithms for chord-name formatting have been installed. This
-algorithm can be tuned and has an ergonomic syntax for entering
-exceptions.
+** User code may now be executed on arbitrary grobs during interpreting.
+The syntax for this feature is
+
+ \applyoutput #SCHEME-FUNCTION
+
+SCHEME-FUNCTION takes a single argument, and is called for every grob
+that is created in the current context.
+
+** New algorithms for chord-name formatting have been installed. They
+can be tuned and have ergonomic syntax for entering exceptions.
** Texts may now be put on multimeasure rests, eg.
** Clusters may now be printed. The syntax is:
- NOTE-\startCluster
-
- ..
- NOTE-\stopCluster
+ \apply #clusters-to-notes { NOTE NOTE .. }
** For irregular meters, beat grouping marks can be printed. The
syntax for this is
..
NOTE-\stopGroup
-** Ottava brackets are now fully supported as a feature.
-The syntax is
+** Ottava brackets are now fully supported as a feature. The syntax
+is
#(set-octavation 1)
-** Metronome markings are printed when a
-\tempo command is processed.
+** Metronome markings are printed when a \tempo command is processed.
-** Fingerings can be horizontally on chords.
+** Fingerings can be put on chords horizontally.
-** The appearance of various glyphs has been fine-tuned
+** The appearance of various glyphs has been fine-tuned.
-** Different types of percent style repeats may now be nested
+** Different types of percent style repeats may now be nested.
** The emacs support has been extended.