]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/changes.tely
Merge remote branch 'origin/master' into master2
[lilypond.git] / Documentation / changes.tely
index d5ad52b382bbe22626136114a83549ffeb971e57..29882e3eafbf825e9d414c8955d6f7cfc56a080d 100644 (file)
@@ -2,6 +2,8 @@
 @setfilename lilypond-changes.info
 @settitle LilyPond Changes
 
 @setfilename lilypond-changes.info
 @settitle LilyPond Changes
 
+@include macros.itexi
+
 @ifhtml
 @macro inputfileref{DIR,NAME}
 @uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
 @ifhtml
 @macro inputfileref{DIR,NAME}
 @uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
@@ -41,8 +43,7 @@ This document is also available in @uref{changes.pdf,PDF}. It is part of
 the @uref{lilypond/manuals.html,LilyPond Documentation}.
 @end ifhtml
 
 the @uref{lilypond/manuals.html,LilyPond Documentation}.
 @end ifhtml
 
-
-
+@allowcodebreaks false
 
 @itemize @bullet
 
 
 @itemize @bullet
 
@@ -50,6 +51,8 @@ the @uref{lilypond/manuals.html,LilyPond Documentation}.
 
 HINTS
 
 
 HINTS
 
+* add new items at the top
+
 * only show verbatim input for syntax/input changes
 
 * try to be as brief possible in those cases
 * only show verbatim input for syntax/input changes
 
 * try to be as brief possible in those cases
@@ -63,9 +66,230 @@ which scares away people.
 
 @end ignore
 
 
 @end ignore
 
+@item
+By using @code{\cueDuringWithClef}, cue notes can now also have their own
+clef, which is correctly reset at the end of the cue notes.  At the begin
+of each line, the standard clef is still displayed, but the cue clef is
+shown after the time/key signature in smaller size.
+@lilypond
+vI = \relative c'' { \clef "treble" \repeat unfold 40 g4 }
+\addQuote vIQuote { \vI }
+
+Solo = \relative c {
+  \clef "bass"
+  \cueDuringWithClef #"vIQuote" #DOWN #"treble" { R1 } |
+  c4 \cueDuringWithClef #"vIQuote" #DOWN #"treble" {
+    r4 r2 |
+    r4
+  } c4 c2 |
+  \cueDuringWithClef #"vIQuote" #DOWN "soprano" { R1*2 \break R1 } |
+  c1
+}
+
+\score {
+  <<
+    \new Staff \new Voice \Solo
+  >>
+}
+@end lilypond
+
+
+@item
+Note names can be selected with a new
+@code{@bs{}language "italiano"} command, which
+can be used in safe mode.  The old
+@code{@bs{}include "italiano.ly"} syntax is
+still supported for now, but will be deprecated
+in the future.
+
+@item
+autobeaming is now disabled by @code{\cadenzaOn} and enabled by
+@code{\cadenzaOff}.  Beaming in cadenzas should be indicated manually.
+Also, if a cadenza is used in a piece with autobeaming disabled, it
+will need to be disabled again after the cadenza.
+
+@item
+The user is now able to specify the name of the predefined fretboard
+table.  This allows the use of multiple tables, with switching between them
+based on user input.
+
+@item
+The part-combiner's decision to combine/not combine notes can now be customized
+@lilypond[quote,relative=2]
+\partcombine
+\relative c' { c2 \partcombineApart c | \partcombineChordsOnce e' e }
+\relative c' { c2 \partcombineApart c | c c }
+@end lilypond
+
+@item
+Tablature staves show fret numbers only by default. To get the
+former style, @code{\tabFullNotation} is provided.
+
+@item
+Funk-style and Walker-style shape notes have been added.
+
+@item
+Rests will no longer keep a staff alive if @code{\RemoveEmptyStaffContext}
+is used.
+
+@item
+New option @code{-dinclude-settings=INCLUDEFILE.ly}, which causes lilypond
+to include the given file before the score is processed. This allows the
+user to change global settings without the need to change the score itself.
+That way, several different editions/version (e.g. different page sizes)
+can be generated from a file without having to modify the score for each
+version.
+
+@item
+The autobeaming settings syntax has been changed.  beatLength,
+beatGrouping, beamSettings, and measureGrouping have all been eliminated.
+Autobeaming is now controlled by baseMoment, beatStructure, and
+beamExceptions.  Default settings for each of these properties can be
+stored for any time signature in time-signature-settings, so that
+when the time signature is changed, the autobeaming will automatically
+change.  The new syntax should be much easier and require fewer
+overrides.
+
+@item
+The SVG backend has optional support for
+@uref{http://www.w3.org/Submission/WOFF, WOFF fonts}.  Using the Scheme
+option @code{-d svg-woff} together with the SVG backend selection
+@code{-d backend=svg}, produces SVG output with CSS WOFF font selection.
+
+@item
+The LilyPond G clef has been rotated 1.5 degrees clockwise for improved
+balance.  The old and new versions can be compared by looking at the
+documentation:
+@uref{http://lilypond.org/doc/v2.12/Documentation/user/lilypond/The-Feta-font.html#Clef-glyphs,
+old version},
+@uref{http://lilypond.org/doc/v2.13/Documentation/notation/the-feta-font.html#Clef-glyphs,
+new version}.
+
+
+@item
+Text crescendo spanners can now be added directly using @code{\cresc},
+@code{\dim} and @code{\decresc}.
+@lilypond[quote,relative=2]
+c4\cresc c c c\f |
+c4\dim c c c\!
+@end lilypond
+
+
+@item
+The documented syntax of @samp{lilypond} environments in the @LaTeX{}
+mode of @command{lilypond-book} has been changed to conform with
+standard @LaTeX{} syntax: options now come after the environment name:
+@example
+\begin@{lilypond@}[@var{options}] @dots{}
+@end example
+
+The previous syntax with options after @samp{\begin} is still accepted
+by @command{lilypond-book} but deprecated.  Something like
+@example
+sed -i '/begin\[/s/begin\(\[[^]]*]\)\(@{lilypond@}\)/begin\2\1/'
+@end example
+
+might do the trick for conversion.
+
+@item
+Aesthetics of shape note heads have been enhanced.  Variable line thicknesses
+have been implemented.  All note widths have been made consistent.
+Minor shape note commands that use the relative major key for scale steps
+have been added.
+
+@item
+A variant of the Segno sign is provided:
+@lilypond[quote,relative=2]
+c4 d e f \bar "S"
+g4 f e d
+@end lilypond
+
+@item
+Context modifications (@code{\with} blocks) can be stored in variables and
+inserted into contexts or other @code{\with} blocks:
+@lilypond[quote,verbatim]
+coloredheads = \with { \override NoteHead #'color = #red }
+noclef = \with { \remove "Clef_engraver" }
+\score {
+  \new Staff {
+    \new Voice \with { \coloredheads } \relative c' { c4 e g c }
+  }
+  \layout {
+    \context {
+      \Staff
+      \noclef
+    }
+  }
+}
+@end lilypond
+
+@item
+A half-open articulation was added:
+@lilypond[quote,relative=2]
+c4\halfopen
+@end lilypond
+This is sometimes used to indicate half-open hi-hats.
+
+@item
+The Unicode Bidirectional Algorithm is now fully supported for
+single-line markup due to enhanced integration with Pango.
+
+@item
+LilyPond is now licensed under the GNU GPL v3+.
+
+@item
+In tablature, frets can be indicated with labels other than numbers:
+
+@lilypond[verbatim,quote,relative=1]
+\new TabStaff
+\with {
+  stringTunings = #'(17 14 9 5 2 -3)
+  tablatureFormat = #fret-letter-tablature-format
+}
+\new TabVoice {
+  \set fretLabels = #`(,(markup #:with-color red "a")
+                       "b"
+                       ,(markup #:italic #:smaller "c"))
+  <f d>4. <bes>8 <g e>4
+}
+@end lilypond
+
+@item
+Layout objects can be printed over a white background, which whites-out objects
+in lower layers which lie beneath:
+
+@lilypond[verbatim,quote,relative=1]
+\time 3/4
+\override Staff.StaffSymbol #'layer = #4
+\once \override Tie #'layer = #2
+b'2.~
+\once \override Staff.TimeSignature #'whiteout = ##t
+\once \override Staff.TimeSignature #'layer = #3
+\time 5/4
+b4
+@end lilypond
+
+@item
+Chords can be repeated using the @code{q} shortcut:
+
+@lilypond[verbatim,quote,relative=2]
+<c e g>8.-^ q16 q4-^
+@end lilypond
 
 @item
 
 @item
-Paper margin defaults, as specified in @file{ly/@/paper@/-defaults@/-init@/.ly}, apply
+With two-sided mode, margins for odd and even pages can be set using
+@code{inner-margin} and @code{outer-margin}:
+
+@example
+\paper @{
+  two-sided = ##t
+  inner-margin = 10 \mm
+  outer-margin = 20 \mm
+@}
+@end example
+
+@item
+Paper margin defaults, as specified in @file{ly/paper@/-defaults-init.ly}, apply
 to the default paper size (a4) and are automatically scaled according to the
 paper size chosen.
 
 to the default paper size (a4) and are automatically scaled according to the
 paper size chosen.
 
@@ -81,8 +305,7 @@ added.
 @item
 In addition to the existing @code{\hspace} markup command,
 a new @code{\vspace} command has been added to provide an easy
 @item
 In addition to the existing @code{\hspace} markup command,
 a new @code{\vspace} command has been added to provide an easy
-and flexible way to add vertical space in markups.  This feature
-is based on Nicolas Sceaux's work.
+and flexible way to add vertical space in markups.
 
 @item
 The direction of manual beams can be set with @code{^[} and @code{_[}.
 
 @item
 The direction of manual beams can be set with @code{^[} and @code{_[}.
@@ -213,6 +436,10 @@ and to add notes to the number or fraction:
 FretBoards now have a chordChanges property to keep repeated FretBoard objects
 from being typeset.
 
 FretBoards now have a chordChanges property to keep repeated FretBoard objects
 from being typeset.
 
+@item
+The vertical spacing engine has been drastically changed, making
+it more flexible and easier to control.
+
 @end itemize
 
 
 @end itemize