]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/changes.tely
doc: add G clef change to Changes
[lilypond.git] / Documentation / changes.tely
index c07c270ba166035e7c83aa46adaced811face466..b3fe430955eb778f9f8f932c832d8945d433ec8a 100644 (file)
@@ -61,6 +61,29 @@ which scares away people.
 
 @end ignore
 
+@item
+The LilyPond G clef has been redesigned - upper loop is now more balanced,
+bottom crook sticks out less and the "spine" (main vertical line) is more
+evenly curved. The old and new versions can be compared by looking at the
+documentation:
+@uref{http://lilypond.org/doc/v2.14/Documentation/notation/the-feta-font.html#clef-glyphs, old version},
+@uref{http://lilypond.org/doc/v2.15/Documentation/notation/the-feta-font.html#clef-glyphs, new version}.
+
+@item
+Lilypond's stencil commands have been simplified to allow for less code
+duplication and better height approximations of graphical objects.  The
+following stencil commands have been eliminated:
+@itemize
+@item @code{beam}
+@item @code{bezier-sandwich}
+@item @code{bracket}
+@item @code{dashed-slur}
+@item @code{dot}
+@item @code{oval}
+@item @code{repeat-slash}
+@item @code{zigzag-line}
+@end itemize
+
 @item
 Flags are now treated as separate objects rather than as stem parts.
 @lilypond[fragment,quote,relative=2]
@@ -99,11 +122,16 @@ representation: Rhythmic events like @code{LyricEvent} and
 @code{NoteEvent} are no longer wrapped in @code{EventChord} unless they
 have been actually entered as part of a chord in the input.  If you
 manipulate music expressions in Scheme, the new behavior may require
-changes in your code.  The advantages of making input and music match
-more closely are numerous: music functions previously worked differently
-when used inside or outside of chords.  Now they are the same, including
-all the possibilities of argument parsing.  You can now use music
-variables inside of chords: a construct like
+changes in your code.  Calling the music function @code{\eventChords} or
+the Scheme function @code{event-chord-wrap!}  converts to the old
+representation; using one of those might be easiest for keeping legacy
+code operative.
+
+The advantages of making input and music match more closely are
+numerous: music functions previously worked differently when used inside
+or outside of chords.  Now they are the same, including all the
+possibilities of argument parsing.  You can now use music variables
+inside of chords: a construct like
 @lilypond[verbatim,quote,ragged-right]
 tonic=fis'
 { <\tonic \transpose c g \tonic> }
@@ -154,7 +182,8 @@ nomenclature.
 
 @item
 The interface for specifying string tunings in tablature has been
-simplified considerably.
+simplified considerably and employs the scheme function
+@code{\stringTuning} for most purposes.
 
 @item
 Beams can now have their slopes preserved over line breaks.
@@ -177,10 +206,11 @@ to help calculations over line breaks.  All of these functions are now
 automatically called when setting the @code{positions} parameter.
 
 @item
-In function arguments music, markups and Scheme expressions (as well
-as several other syntactic entities) have become mostly
-interchangeable and are told apart only by evaluating the respective
-predicate.
+In function arguments music, markups and Scheme expressions (as well as
+several other syntactic entities) have become mostly interchangeable and
+are told apart only by evaluating the respective predicate.  In several
+cases, the predicate is consulted by the parser, like when deciding
+whether to interpret @code{-3} as a number or a fingering event.
 
 @item
 Music functions (and their close relatives) can now be defined with
@@ -218,20 +248,27 @@ syntax.
 
 @item
 The construct @code{#@{ @dots{} #@}} can now be used not just for
-constructing sequential music lists, but also for single music events,
-void music expressions, post events, markups (mostly freeing users from
+constructing sequential music lists, but also for pitches (distinguished
+from single note events by the absence of a duration or other
+information that can't be part of a pitch), single music events, void
+music expressions, post events, markups (mostly freeing users from
 having to use the @code{markup} macro), markup lists, number
 expressions, context definitions and modifications, and a few other
 things.  If it encloses nothing or only a single music event, it no
 longer returns a sequential music list but rather a void music
 expression or just the music event itself, respectively.
 
+@item
+Pitches can be used on the right side of assignments.  They are
+distinguished from single note events by the absence of a duration or
+other information that can't be part of a pitch.
+
 @item
 New command-line option @option{--loglevel=@var{level}} to control how much output
 LilyPond creates. Possible values are ERROR, WARN, BASIC_PROGRESS, PROGRESS, DEBUG.
 
 @item
-@code{\set \once} now correctly resets the property value to the previous value.
+@code{\once \set} now correctly resets the property value to the previous value.
 @lilypond[fragment,quote,relative=2]
   \set fingeringOrientations = #'(left)
   <e-1>4