]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/topdocs/NEWS.texi
($(outdir)/%.pdf): add DVIPS_FLAGS. This will
[lilypond.git] / Documentation / topdocs / NEWS.texi
index e73e449985ace49b43eba6ac42a5000576e8e759..81db48e9556b219bc106bad604070bc182df0a02 100644 (file)
 
 @chapter New features in 2.1 since 2.0
 
+@ignore
+Unreleased:
+
 @itemize
+@end itemize
+
+Version 2.1.13
+@end ignore
+
+@itemize @bullet
+
+@item The syntax for setting properties has been simplified:
+the following table lists the differences:
+
+@example
+\property A.B = #C                \set A.B = #C
+\property A.B \unset              \unset A.B
+\property A.B \set #C = #D        \override A.B #C = #D 
+\property A.B \override #C = #D   (removed)
+\property A.B \revert #C          \revert A.B #C
+@end example
+
+Furthermore, if @code{A} is left out, the bottommost context is used
+by default.  In other words, it is no longer necessary to explicitly
+mention @code{Voice}, @code{Lyrics} or @code{ChordNames}. 
+
+Old:
+
+@example
+   \property Voice.autoBeaming = ##f
+   \property Staff.TimeSignature \set #'style = #'C
+@end example
+
+New:
+
+@example
+   \set autoBeaming = ##f
+   \override Staff.TimeSignature #'style = #'C
+@end example
+
+
+@item Tweaks  made with @code{\override} and @code{\revert} no longer
+hide tweaks at higher context levels.
+
+@item Melismata in lyrics are also properly handled  in the MIDI output.
+
+@item The lilypond-book script has been rewritten.
+It is shorter, cleaner and faster.  The special construct
+@code{mbinclude} has been removed, plain @code{@@include} or
+@code{\\input} can be used now.
+
+@ignore
+It now supports
+running convert-ly on the lilypond snippets like so:
+@example
+    lilypond-book --filter='convert-ly --from=2.0.0' my-book.tely
+@end example
+@end ignore
+
+@item The @code{LyricsVoice} context has been removed. Lyrics should only
+be constructed in @code{Lyrics}.
+
+@item The @code{Thread} context has been removed. Note heads and rests
+are now constructed at @code{Voice} level.
+
+@item  Harmonic notes can now be entered as
+
+@example
+   <c' g''\harmonic>
+@end example
+
+@item Drum notation is now supported  as a regular feature:
+percussion may be entered in @code{\drums} mode, and printed or
+performed in a @code{DrumStaff} context:
+
+@example
+  \score @{
+    \drums \new DrumStaff @{ hihat4 cowbell8 @}
+  @}
+@end example
+
+@item The automatic staff changer was internally rewritten. As a
+result, the syntax has been simplified as well:
+
+@example
+  \autochange @var{the music}
+@end example
+
+@item The ergonomic syntax of @code{\markup} now has an equivalent in
+Scheme. The @code{markup*} macro creates such objects; the following
+two markup commands are equivalent:
+@example
+ f4^#(markup* #:raise 0.2 #:bold "hi")
+ f4^\markup @{ \raise #0.2 \bold hi  @}
+@end example
+
+@item Voice names, for vocal lines, have been added. They are similar
+to instrument names.   They can be set by defining @code{vocalName}
+and @code{vocNam}.
+
+@item Safe mode has been reinstated for lilypond.
+When lilypond is invoked with @code{--safe-mode}, @TeX{} and
+PostScript file output is disallowed, and lilypond-bin is invoked with
+@code{--safe-mode}, the user's Guile expressions are evaluated in a
+safe environment and file inclusion is not allowed.
+
+Warning: this does not protect against denial-of-service attacks using
+Guile, @TeX{} or PostScript.
+
+(This feature is still experimental.)
+
+@item There is now a Scheme macro for defining markup
+commands. Special mark-up commands can be defined in user-files too.
+
+@item Many fixes for dimension scaling have been made,
+resulting in correct results for scores that mix staves in different
+sizes.
+
+@item Improved robustness when  layout properties are accidentally removed.  
+
+@item A  more cleanly constructed part combiner has been installed.
+It is more robust and less buggy. The part-combiner can be used with
+@example
+  \partcombine @var{mus1} @var{mus2}
+@end example
+
+@noindent
+See @file{input/regression/new-part-combine.ly} for an example.
+
+@item Formatting of rehearsal marks has been improved. The @code{\mark}
+command now only does automatic incrementing for marks specified as
+integer. For example, @code{\mark #1} will print an A in the default
+style.  See @file{input/regression/rehearsal-mark-letter.ly},
+@file{input/regression/rehearsal-mark-number.ly}.
+
+@item Formatting of ottava brackets has been much improved.
+
+@item Objects in the output can now be documented: the following fragment
+ boxes the note head, and adds the text ``heads or tails?'' three
+spaces below the box.
+
+@example
+       \context Voice \applyoutput #(add-balloon-text
+                                    'NoteHead "heads, or tails?"
+                                    '(0 . -3))
+
+      
+       c8
+@end example
+
+
+@item Default staff sizes are now scalable. There are two new mechanisms for
+setting staff sizes. Both are demonstrated in this fragment:
+
+@example
+  #(set-global-staff-size 15)
+  \paper @{
+    #(paper-set-staff-size (* 15 pt))
+  @}   
+@end example
+
+
+@noindent
+Both have  the same effect on the global layout  of a
+piece. Similarly, the paper size may be changed as follows
+
+@example
+  #(set-paper-size "a4")
+@end example 
+
+
+@item Warnings for bar check errors are more cleverly printed.  This
+makes @code{barCheckSynchronize} superfluous, so it is now switched
+off by default.
+
+Warning: this will cause problems in scores that use bar checks to
+shorten measures.
+
+@item The black note head was made a little rounder, which causes a less
+ frantic graphic impression.
+
+@item
+A more concise syntax for checking octaves was introduced. A note may
+be followed by @code{=}@var{quotes} which indicates what its absolute
+octave should be.  In the following example, 
+
+@example
+  \relative c'' @{ c='' b=' d,='' @}        
+@end example
+
+@noindent
+the d will generate a warning, because a d'' is
+expected, but a d' is found.
+@c @code adds ` ' very confusing.
+
+@item There is a new mechanism for putting lyrics to melodies.
+With this mechanism, @code{LyricVoice}s can be put melodies
+individually, allowing for different melismatic sections in every
+@code{LyricVoice}. See @file{input/regression/lyric-combine-new.ly}.
+
+@item Bar lines may now be dotted.
+
+
+@item The documentation now has links to a wiki, where everyone can
+add personal comments to the manual.
+
+@item Contexts may now be changed locally for an isolated music
+expression. For example,
+  
+@example
+  \new Voice \with @{
+     \consists "Pitch_squash_engraver"
+  @} @{
+    c'4
+  @}
+@end example
+
+@item The syntax for changing staffs has changed. The keyword
+@code{\change} should now be used, e.g.
+
+@example
+  \change Staff = up
+@end example 
+
+@item Features of spanner contexts, like @code{Staff}, can now be changed
+  using @code{\property}, eg.
+
+@example
+  \new Staff @{
+       \property Staff.StaffSymbol \set #'line-count = #4
+       c'4
+  @} 
+@end example
+
+@noindent
+puts a quarter note C on a staff with 4 lines.  
+
+
+@item Multi measure rests are now truly centered between the
+clefs/barlines of the staff, their position is independent of symbols
+on the other staffs.
+
+@item Collision resolution for dots in chords has been improved greatly. 
+
+@item
+Spacing following barlines was improved for widely stretched lines.
+
+@item
+Lyric hyphens and extenders now conform to standard typesetting
+practice.
+
 @item
-Lyrics are now aligned under note heads conforming engraving
+Lyrics are now aligned under note heads conforming to engraving
 standards. The responsible code has been rewritten, and is drastically
 simpler from the previous version. To aid this rewrite, the syntactic
-function of the extender line ( __ ) is been changed: it is now attached
-to the lyric syllable.
+function of the extender line ( __ ) has been changed: it is now
+attached to the lyric syllable.
 
 @item
 When redefining a context, the associated identifier is also
-updated. For example, after reading following the snippet,
+updated. For example, after reading the following snippet,
 @example
  \translator @{
         \ScoreContext
@@ -46,7 +296,7 @@ the desired size. As a side-effect, there are now no longer
 limitations in using smaller fonts (eg. grace notes) at small staff
 sizes.
 
-@item The appearance of stem tips is now also engraved with rounded corners.
+@item Stem tips are now also engraved with rounded corners.
 
 @item
 The placement of accidentals on chords and ledgered notes is improved.