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