X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fchanges.tely;h=d985b534cd0beaa4eb1112e6416591ec375067ed;hb=d2e365f34bca9628090ea3b81806ab88cbe54887;hp=2111c8d3a207b028381621f8762a230e652eb847;hpb=50b7d56d80c5842ce9bce3bcebe6b0491e37cee3;p=lilypond.git diff --git a/Documentation/changes.tely b/Documentation/changes.tely index 2111c8d3a2..d985b534cd 100644 --- a/Documentation/changes.tely +++ b/Documentation/changes.tely @@ -61,6 +61,166 @@ which scares away people. @end ignore +@item +The PostScript functionality of stroke adjustment is no longer +applied automatically but left to the discretion of the PostScript +device (by default, Ghostscript uses it for resolutions up to +150dpi when generating raster images). When it is enabled, a more +complex drawing algorithm designed to benefit from stroke +adjustment is employed mostly for stems and bar lines. + +Stroke adjustment can be forced by specifying the command line +option @samp{-dstrokeadjust} to LilyPond. When generating +@code{PDF} files, this will usually result in markedly better +looking @code{PDF} previews but significantly larger file size. +Print quality at high resolutions will be unaffected. + +@item +There is now a new context type called @code{NullVoice} which, while not +appearing in the printed output, can be used to align lyrics. This can +be particularly convenient when used in parallel with a +@code{\partcombine} construct. + +@lilypond[verbatim,quote] +soprano = \relative c' { c e g c } +alto = \relative c' { a c e g } +verse = \lyricmode { This is my song } + +\score { + \new Staff << + \partcombine \soprano \alto + \new NullVoice = "aligner" \soprano + \new Lyrics \lyricsto "aligner" \verse + >> + \layout {} +} +@end lilypond + + +@item +Several articulations can be put into a single variable or +returned from an event function: + +@lilypond[verbatim,quote] +sempreStacc = -. ^\markup \italic sempre +\relative { c''4\sempreStacc c c c } +@end lilypond + +@item +The baseline of score markups is now taken from the reference +point (usually the middle of the staff) of the first bottom system +rather than the top of the bounding rectangle. The following +@lilypond[verbatim,quote] +\markup { + violin: \score { \new Staff { 1 } + \layout { indent=0 } } , + cello: \score { \new Staff { \clef "bass" } + \layout { indent=0 } } +} +@end lilypond +previously looked like +@lilypond[quote] +\markup { + violin: \general-align #Y #UP + \score { \new Staff { 1 } + \layout { indent=0 } } , + cello: \general-align #Y #UP + \score { \new Staff { \clef "bass" } + \layout { indent=0 } } +} +@end lilypond +without a reliable way to get both scores to line up. + +@item +LilyPond no longer automatically infers a @samp{\defaultchild} +context in a context definition with @samp{\accepts} clauses. Any +context definition without an explicit or inherited +@samp{\defaultchild} definition counts as a @samp{Bottom} context +and will be eligible for rhythmic events and overrides without +causing the implicit creation of other contexts. Be sure to +specify a @samp{\defaultchild} for non-@samp{Bottom} contexts when +defining them from scratch. + +@item +There is now extensive support for both discant and bass accordion +register symbols in the @samp{scm accreg} module, see +@ruser{Accordion Registers}. +@lilypond[verbatim,quote] +#(use-modules (scm accreg)) +\new PianoStaff +<< + \new Staff \relative + { \clef "treble" \discant "10" + r8 s32 f'[ bes f] s e[ a e] s d[ g d] s16 e32[ a] + \discant "121" + << { r16 r r } \\ + { d r a r bes r } >> | + 1 + } + \new Staff \relative + { \clef "treble" \freeBass "1" + r8 d'32 s16. c32 s16. bes32 s16. a32[ cis] s16 + \clef "bass" \stdBass "Master" + << { r16 ^"b" r ^"am" r ^"gm" | + 1^"a" } \\ + { d8_"D" c_"C" bes_"B" | a1_"A" } + >> + } +>> +@end lilypond + +@item +New commands @code{markLengthOn} and @code{markLengthOff} control +the allowance of horizontal space for tempo and rehearsal marks. + +@lilypond[quote,relative=2] +\markLengthOn +\compressFullBarRests +\tempo "Molto vivace" c2 c' +\mark\default +\tempo "Meno mosso" R1*16 +\mark\default +g,2 g +\bar "||" +\markLengthOff +\tempo "Molto vivace" c2 c' +\mark#1 +\tempo "Meno mosso" R1*16 +\mark\default +g,2 g +@end lilypond + +@item +Rehearsal marks at the beginning of a line are now placed to the right +of the clef and key signature by default. As in previous versions, the +@code{break-alignable-interface} controls the behavior. + +@lilypond[quote,relative=2] +\set Score.barNumberVisibility = #all-bar-numbers-visible +\set Timing.currentBarNumber = #72 +\bar"||" \time 3/4 \key e\major \mark#10 \tempo "Adagio" b2. +@end lilypond + +@item +Decimal numbers can now be written directly in music, +without a hash sign. Together with the previous change +in the way object properties are specified, the code to +change the length of stems has changed from this: +@example +\override Stem #'length = #5.6 +e' f' g' a' +@end example +to this: +@example +\override Stem.length = 5.6 +e' f' g' a' +@end example + +One has to write a digit on both sides of the dot -- values like +@code{4.} or @code{-.3} are not allowed. + +Decimal fractions are also not accepted in @code{\chordmode}. + @item A number of shorthands like @code{(}, @code{)}, @code{|}, @code{[}, @code{]}, @code{~}, @code{\(}, @code{\)} and others can