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