]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/changes.tely
Doc: NR 2.1 Vocal: improve Character names
[lilypond.git] / Documentation / changes.tely
1 \input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
2 @setfilename lilypond-changes.info
3 @settitle LilyPond Changes
4
5 @include macros.itexi
6
7 @ifhtml
8 @macro inputfileref{DIR,NAME}
9 @uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
10 @end macro
11 @macro usermanref{NAME}
12 @inforef{\NAME\,,../user/lilypond/lilypond}@c
13 @end macro
14 @end ifhtml
15
16 @ifnothtml
17 @macro inputfileref{DIR,NAME}
18 @file{\DIR\/\NAME\}@c
19 @end macro
20 @macro usermanref{NAME}
21 See user manual, \NAME\
22 @end macro
23 @end ifnothtml
24
25 @macro textanchor{NAME}
26 @html
27 <a name="\NAME\"></a>
28 @end html
29 @end macro
30
31
32 @documentencoding utf-8
33 @documentlanguage en
34 @afourpaper
35
36 @finalout
37
38 @node Top
39 @top New features in 2.13 since 2.12
40
41 @ifhtml
42 This document is also available in @uref{changes.pdf,PDF}. It is part of
43 the @uref{lilypond/manuals.html,LilyPond Documentation}.
44 @end ifhtml
45
46 @allowcodebreaks false
47
48 @itemize @bullet
49
50 @ignore
51
52 HINTS
53
54 * add new items at the top
55
56 * only show verbatim input for syntax/input changes
57
58 * try to be as brief possible in those cases
59
60 * don't try to provide real-world examples, they often get too big,
61 which scares away people.
62
63 * Write complete sentences.
64
65 * only show user-visible changes.
66
67 @end ignore
68
69 @item
70 Funk-style and Walker-style shape notes have been added.
71
72 @item
73 Rests will no longer keep a staff alive if @code{\RemoveEmptyStaffContext}
74 is used.
75
76 @item
77 New option @code{-dinclude-settings=INCLUDEFILE.ly}, which causes lilypond
78 to include the given file before the score is processed. This allows the
79 user to change global settings without the need to change the score itself.
80 That way, several different editions/version (e.g. different page sizes)
81 can be generated from a file without having to modify the score for each
82 version.
83
84 @item
85 The autobeaming settings syntax has been changed.  beatLength,
86 beatGrouping, beamSettings, and measureGrouping have all been eliminated.
87 Autobeaming is now controlled by baseMoment, beatStructure, and
88 beamExceptions.  Default settings for each of these properties can be
89 stored for any time signature in time-signature-settings, so that
90 when the time signature is changed, the autobeaming will automatically
91 change.  The new syntax should be much easier and require fewer
92 overrides.
93
94 @item
95 The SVG backend has optional support for
96 @uref{http://www.w3.org/Submission/WOFF, WOFF fonts}.  Using the Scheme
97 option @code{-d svg-woff} together with the SVG backend selection
98 @code{-d backend=svg}, produces SVG output with CSS WOFF font selection.
99
100 @item
101 The LilyPond G clef has been rotated 1.5 degrees clockwise for improved
102 balance.  The old and new versions can be compared by looking at the
103 documentation:
104 @uref{http://lilypond.org/doc/v2.12/Documentation/user/lilypond/The-Feta-font.html#Clef-glyphs,
105 old version},
106 @uref{http://lilypond.org/doc/v2.13/Documentation/notation/the-feta-font.html#Clef-glyphs,
107 new version}.
108
109
110 @item
111 Text crescendo spanners can now be added directly using @code{\cresc},
112 @code{\dim} and @code{\decresc}.
113 @lilypond[quote,relative=2]
114 c4\cresc c c c\f |
115 c4\dim c c c\!
116 @end lilypond
117
118
119 @item
120 The documented syntax of @samp{lilypond} environments in the @LaTeX{}
121 mode of @command{lilypond-book} has been changed to conform with
122 standard @LaTeX{} syntax: options now come after the environment name:
123 @example
124 \begin@{lilypond@}[@var{options}] @dots{}
125 @end example
126
127 The previous syntax with options after @samp{\begin} is still accepted
128 by @command{lilypond-book} but deprecated.  Something like
129 @example
130 sed -i '/begin\[/s/begin\(\[[^]]*]\)\(@{lilypond@}\)/begin\2\1/'
131 @end example
132
133 might do the trick for conversion.
134
135 @item
136 Aesthetics of shape note heads have been enhanced.  Variable line thicknesses
137 have been implemented.  All note widths have been made consistent.
138 Minor shape note commands that use the relative major key for scale steps
139 have been added.
140
141 @item
142 A variant of the segno sign is provided:
143 @lilypond[quote,relative=2]
144 c4 d e f \bar "S"
145 g4 f e d
146 @end lilypond
147
148 @item
149 Context modifications (@code{\with} blocks) can be stored in variables and
150 inserted into contexts or other @code{\with} blocks:
151 @lilypond[quote,verbatim]
152 coloredheads = \with { \override NoteHead #'color = #red }
153 noclef = \with { \remove "Clef_engraver" }
154 \score {
155   \new Staff {
156     \new Voice \with { \coloredheads } \relative c' { c4 e g c }
157   }
158   \layout {
159     \context {
160       \Staff
161       \noclef
162     }
163   }
164 }
165 @end lilypond
166
167 @item
168 A half-open articulation was added:
169 @lilypond[quote,relative=2]
170 c4\halfopen
171 @end lilypond
172 This is sometimes used to indicate half-open hi-hats.
173
174 @item
175 The Unicode Bidirectional Algorithm is now fully supported for
176 single-line markup due to enhanced integration with Pango.
177
178 @item
179 LilyPond is now licensed under the GNU GPL v3+.
180
181 @item
182 In tablature, frets can be indicated with labels other than numbers:
183
184 @lilypond[verbatim,quote,relative=1]
185 \new TabStaff
186 \with {
187   stringTunings = #'(17 14 9 5 2 -3)
188   tablatureFormat = #fret-letter-tablature-format
189 }
190 \new TabVoice {
191   \set fretLabels = #`(,(markup #:with-color red "a")
192                        "b"
193                        ,(markup #:italic #:smaller "c"))
194   <f d>4. <bes>8 <g e>4
195 }
196 @end lilypond
197
198 @item
199 Layout objects can be printed over a white background, which whites-out objects
200 in lower layers which lie beneath:
201
202 @lilypond[verbatim,quote,relative=1]
203 \time 3/4
204 \override Staff.StaffSymbol #'layer = #4
205 \once \override Tie #'layer = #2
206 b'2.~
207 \once \override Staff.TimeSignature #'whiteout = ##t
208 \once \override Staff.TimeSignature #'layer = #3
209 \time 5/4
210 b4
211 @end lilypond
212
213 @item
214 Chords can be repeated using the @code{q} shortcut:
215
216 @lilypond[verbatim,quote,relative=2]
217 <c e g>8.-^ q16 q4-^
218 @end lilypond
219
220 @item
221 With two-sided mode, margins for odd and even pages can be set using
222 @code{inner-margin} and @code{outer-margin}:
223
224 @example
225 \paper @{
226   two-sided = ##t
227   inner-margin = 10 \mm
228   outer-margin = 20 \mm
229 @}
230 @end example
231
232 @item
233 Paper margin defaults, as specified in @file{ly/@/paper@/-defaults@/-init@/.ly}, apply
234 to the default paper size (a4) and are automatically scaled according to the
235 paper size chosen.
236
237 @item
238 All combinations of @code{left-margin}, @code{right-margin} and
239 @code{line-width} work now.  There is no more need to set @code{line-width}
240 manually unless you explicitly want to.
241
242 @item
243 Support for using an alternative music font, such as Gonville, is now
244 added.
245
246 @item
247 In addition to the existing @code{\hspace} markup command,
248 a new @code{\vspace} command has been added to provide an easy
249 and flexible way to add vertical space in markups.
250
251 @item
252 The direction of manual beams can be set with @code{^[} and @code{_[}.
253
254 @item
255 A version of the breve note head has been added with two vertical lines on each side.
256 @lilypond[quote,relative=2]
257 \time 4/2
258 \override Staff.NoteHead #'style = #'altdefault
259 c\breve | b\breve
260 @end lilypond
261
262 @item
263 Instrument names and vocal names now take into account the extent of
264 system start delimiters in other staves for their positioning,
265 resulting in improved default alignment for left-, center- and
266 right-aligned names.
267 @lilypond[quote,indent=18\mm]
268 <<
269   \new StaffGroup <<
270     \new GrandStaff <<
271       \new Staff {
272         \set Staff.instrumentName = #"Piccolo"
273         c''1
274       }
275       \new Staff {
276         \set Staff.instrumentName = #"Flute"
277         c''1
278       }
279     >>
280     \new Staff {
281       \set Staff.instrumentName = #"Bassoon"
282       \clef tenor
283       c'1
284     }
285   >>
286   \new PianoStaff <<
287     \set PianoStaff.instrumentName = #"Piano"
288     \context Staff = "up" {
289       c'1
290     }
291     \context Staff = "down" {
292       \clef bass
293       c1
294     }
295   >>
296 >>
297 @end lilypond
298
299 @item
300 Braces in markup can now be selected by point size using the markup commands
301 @code{\left-brace} and @code{\right-brace}.
302 @lilypond[quote]
303 \markup {
304   \left-brace #35
305   \hspace #2
306   \right-brace #45
307 }
308 @end lilypond
309
310 @item
311 Intermediate .ps files which are created by LilyPond
312 during compilation are now deleted by default.  To keep them,
313 add the following line to your input files:
314 @example
315 #(ly:set-option 'delete-intermediate-files #f)
316 @end example
317
318 @item
319 Dashed and dotted slurs, phrasing slurs, and ties
320 have been made variable thickness, and
321 partially dashed slurs are now available:
322 @lilypond[quote,relative=2]
323 \slurDashed
324 c4( d e f) |
325 \slurDotted
326 g4( f e d) |
327 \slurHalfDashed
328 c4( d e f)
329 @end lilypond
330
331 @item
332 An eyeglasses markup was added, indicating strongly to look at the
333 conductor for instructions:
334 @lilypond[quote,relative=2]
335 \mark \markup { \eyeglasses }
336 c4_\markup { \eyeglasses }
337 @end lilypond
338
339 @item
340 A snap-pizzicato (also known as Bartok-pizzicato) articulation was added:
341 @lilypond[quote,relative=2]
342 c4\snappizzicato
343 @end lilypond
344
345 @item
346 Tuplet number formatting functions are now available to print other fractions
347 and to add notes to the number or fraction:
348 @lilypond[quote,relative=2]
349 \once \override TupletNumber #'text =
350   #(tuplet-number::non-default-tuplet-denominator-text 7)
351 \times 2/3 { c4. c4. c4. c4. }
352
353 \once \override TupletNumber #'text =
354   #(tuplet-number::non-default-tuplet-fraction-text 12 7)
355 \times 2/3 { c4. c4. c4. c4. }
356 \once \override TupletNumber #'text =
357   #(tuplet-number::append-note-wrapper
358     (tuplet-number::non-default-tuplet-fraction-text 12 7) "8")
359 \times 2/3 { c4. c4. c4. c4. }
360
361 \once \override TupletNumber #'text =
362   #(tuplet-number::append-note-wrapper tuplet-number::calc-denominator-text "4")
363 \times 2/3 { c8 c8 c8 c8 c8 c8 }
364 \once \override TupletNumber #'text =
365   #(tuplet-number::append-note-wrapper tuplet-number::calc-fraction-text "4")
366 \times 2/3 { c8 c8 c8 c8 c8 c8 }
367
368 \once \override TupletNumber #'text =
369   #(tuplet-number::fraction-with-notes "4." "8")
370 \times 2/3 { c4. c4. c4. c4. }
371 \once \override TupletNumber #'text =
372   #(tuplet-number::non-default-fraction-with-notes 12 "8" 4 "4")
373 \times 2/3  { c4. c4. c4. c4. }
374 @end lilypond
375
376 @item
377 FretBoards now have a chordChanges property to keep repeated FretBoard objects
378 from being typeset.
379
380 @item
381 The vertical spacing engine has been drastically changed, making
382 it more flexible and easier to control.
383
384 @end itemize
385
386
387
388 @ifhtml
389 For older news, go to
390 @uref{http://lilypond.org/doc/v2.12/Documentation/topdocs/NEWS.html},
391 @uref{http://lilypond.org/doc/v2.10/Documentation/topdocs/NEWS.html},
392 or @uref{../,go back} to the Documentation index.
393
394
395 @end ifhtml
396
397 @bye