]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/topdocs/NEWS.tely
* Documentation/topdocs/NEWS.tely (Top): add duration-log override
[lilypond.git] / Documentation / topdocs / NEWS.tely
1 \input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
2 @setfilename NEWS.info
3 @settitle NEWS
4
5 @ifhtml
6 @macro inputfileref{DIR,NAME}
7 @uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
8 @end macro
9 @macro usermanref{NAME}
10 @inforef{\NAME\,,../user/lilypond/lilypond}@c
11 @end macro
12 @end ifhtml
13
14 @ifnothtml
15 @macro inputfileref{DIR,NAME}
16 @file{\DIR\/\NAME\}@c
17 @end macro
18 @macro usermanref{NAME}
19 See user manual, \NAME\
20 @end macro
21 @end ifnothtml
22
23
24 @macro textanchor{NAME}
25 @html
26 <a name="\NAME\"></a>
27 @end html
28 @end macro
29
30
31 @documentencoding utf-8
32 @documentlanguage en
33
34 @finalout
35
36 @ifnottex
37 @node Top
38 @top
39 @end ifnottex
40 @unnumbered New features in 2.9 since 2.8
41
42 @ifhtml
43 This document is also available in @uref{NEWS.pdf,PDF}. It's part of
44 the @uref{../,LilyPond Documentation} 
45 @end ifhtml
46
47
48
49
50 @itemize @bullet
51
52 @ignore
53
54 HINTS
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 Calculation of note head durations is now softcoded. This means
70 that they can be changed on the fly
71
72 @lilypond[relative=1,fragment,ragged-right]
73   %% use half heads for whole notes.
74   \override NoteHead #'duration-log = #(lambda (grob)
75                                         (min 3 (max 1 (ly:duration-log
76                                          (ly:event-property (event-cause grob) 'duration)))))
77                                          
78   c1 c2 c4 c8[ c16 c]
79 @end lilypond
80
81
82 @c Please insert any new material above this line.  -gp
83
84 @item Chords can now be partially tied,
85
86 @lilypond[ragged-right,relative,fragment]
87 <c~ e g~ b>  <c e g b>
88 @end lilypond
89
90 This feature was sponsored by Steve Doonan.
91
92 @item Lyric extenders now have tunable padding.
93
94 This feature was sponsored by David Griffel.
95
96 @item
97 Instrument changes are better supported: names in the margin can be
98 changed half-way during a staff, and cues are printed automatically.
99
100 This feature was sponsored by Kieren MacMillan.
101
102 @item
103 Barlines can be dashed now,
104
105 @lilypond[relative,ragged-right,fragment]
106 c4 \bar "dashed" c4
107 @end lilypond
108
109 This feature was sponsored by Kieren MacMillan.
110
111 @item
112 Grace notes may be forced to use floating spacing, 
113
114 @lilypond[relative=2,ragged-right]
115 <<
116   \override Score.SpacingSpanner  #'strict-grace-spacing = ##t
117   \new Staff {
118      c'4
119      \afterGrace
120      c'4
121      { c'16[ c'8 c'16] }
122      c'4
123   }
124   \new Staff {
125      c'16[ c'16 c'16 c'16]
126      c'16[ c'16 c'16 c'16]
127      c'4
128   }
129 >>
130 @end lilypond
131
132 This feature was sponsored by Trevor Bača.
133
134
135 @item
136 Durations of grace notes are taken into account for spacing,
137
138 @lilypond[relative=2,ragged-right,fragment]
139   c
140   \grace { c8[ c16 d c8]  }
141   c
142 @end lilypond
143
144 This feature was sponsored by Trevor Bača.
145
146 @item
147 Tuplet brackets can be made to run to prefatory matter or
148 the next note
149
150 @lilypond[ragged-right]
151 \new RhythmicStaff {
152   \set tupletFullLength = ##t
153   \time 4/4
154   \times 4/5 {
155     c4 c1
156   }
157   \set tupletFullLengthNote = ##t
158   \time 2/4
159   \times 2/3 {
160     c4 c c 
161   }
162   \time 3/4
163   c4 
164 }
165 @end lilypond
166
167
168 This feature was sponsored by Trevor Bača.
169
170 @item
171 Falls and doits can be added to notes
172
173 @lilypond[fragment,ragged-right,relative=2]
174 \override Score.SpacingSpanner #'shortest-duration-space = #3.0
175 c4-\bendAfter #+5
176 c4-\bendAfter #-3
177 @end lilypond
178
179 This feature was sponsored by Anthony Youngman and Paul Scott.
180
181 @item
182 @code{lilypond-book} now includes support for PDF@TeX{}.
183
184 This feature was sponsored by David Roundy. 
185
186 @item
187 Nested tuplets can have different formatting for each nesting level,
188
189 @lilypond[ragged-right]
190 \new Staff {
191   \time 5/4
192   \tweak #'text #tuplet-number::calc-fraction-text
193   \times 5/3 {
194      \tweak #'text  #tuplet-number::calc-denominator-text
195      \times 2/3 {
196         c'8[ c'8 c'8]
197      }
198      \times 2/3 {
199         c'8[ c'8 c'8]
200      }
201      \times 2/3 {
202         c'8[ c'8 c'8]
203      }
204   }
205 }
206 @end lilypond
207
208 This feature was sponsored by Trevor Bača.
209
210
211 @item
212 New sections with different spacing parameters can be started with
213 @code{newSpacingSection}.  This is useful when there are  
214 sections with a different notions of long and short notes.
215
216 In the following example, the time signature change introduces a new
217 section, and hence the 16ths notes are spaced wider.
218
219 @lilypond[relative,fragment]
220   \time 2/4
221   c4 c8 c 
222   c8 c c4 c16[ c c8] c4
223
224   \newSpacingSection
225   \time 4/16
226   c16[ c  c8]
227 @end lilypond
228
229 This feature was sponsored by Trevor Bača, Michael Meixner and Vivian
230 Barty-Taylor.
231
232 @item
233 A new, automated testing technique has been added. It will detect
234 changes in the formatting automatically, which will make it easier to
235 spot regression errors in the future.
236
237 View @uref{../../test-results.html,test results}.
238
239 @item
240 Figured bass can also be added to @code{Staff} contexts directly. In
241 this case, their vertical position is adjusted automatically.
242
243 @lilypond[ragged-right,fragment]
244 <<
245   \new Staff = someUniqueName
246   \relative c'' {
247     c4 c'8 r8 c,4 c'
248   }
249
250   %% send to existing Staff.
251   \context Staff = someUniqueName 
252   \figuremode {
253     <4>4 <6 10>8 s8
254     
255     \set Staff.useBassFigureExtenders = ##t
256     <4 6>4 <4 6>
257   }
258 >>
259 @end lilypond
260
261 This feature was sponsored by Trent Johnston.
262
263 @item
264 Beams may be put on isolated stems, and beamlets may be paired by
265 setting the @code{max-beam-connect} property,
266
267 @lilypond[ragged-right,relative=2,fragment]
268   \override Stem #'max-beam-connect = #1
269   c16[ c16]   c32[] 
270 @end lilypond
271
272 This feature was sponsored by Trevor Bača.
273
274 @item
275 Beaming patterns obey the @code{beatGrouping} property.
276
277 @lilypond[ragged-right,relative=2,fragment]
278   \time 5/16
279   \set beatGrouping = #'(2 3)
280   c8[^"(2+3)" c16 c8]
281   \set beatGrouping = #'(3 2)
282   c8[^"(3+2)" c16 c8]
283 @end lilypond
284
285 This feature was sponsored by Trevor Bača.
286
287 @item
288 With the command @code{\transposedCueDuring} a cue's transposition can
289 be changed locally.  This can be used to prevent excessive ledger
290 lines on cues.
291
292 This feature was contributed by Werner Lemberg 
293
294 @item
295 By setting @code{hairpinToBarline}, hairpins will stop at
296 the barline preceding the ending note.
297
298 @lilypond[relative=2,fragment,ragged-right]
299 \set hairpinToBarline = ##t
300 \override Hairpin #'bound-padding = #1.0
301 c4\< c2. c4\!
302 @end lilypond
303
304 This feature was sponsored by Andrew Sidwell and Trevor Bača.
305
306 @item
307 Objects may be rotated using the @code{rotation} property.
308 @lilypond[ragged-right,fragment,relative=1]
309 {
310   \override Hairpin #'rotation = #'(20 -1 0)
311   g4\<^\markup { \rotate #180 "test" } b d f'\!
312 }
313 @end lilypond
314
315 This feature was contributed by Erlend Aasland.
316
317 @item
318 Hairpins now support circled tips (al niente notation).
319 @lilypond[ragged-right,fragment,relative=2]
320 {
321   \override Hairpin #'circled-tip = ##t
322   c2\< c\!
323   c4\> c\< c2\!
324 }
325 @end lilypond
326
327 This feature was contributed by Erlend Aasland.
328
329 @item 
330 The MusicXML convertor has been sped up, and has rudimentary support
331 for percussion notation.  It will also condense multi-bar rests to
332 enable part extraction.
333
334 @item
335 The beam printing code has been completely rewritten, and now includes
336 support for feathered beaming,
337
338 @lilypond[ragged-right,fragment,relative=2]
339 \featherDurations #(ly:make-moment 5 4) 
340 {
341   \override Beam #'grow-direction = #LEFT
342   c16[
343     c c c
344     c c c ]
345 }
346 @end lilypond 
347
348 Known bug: the \featherDuration command only works with very short music
349 snippets.
350
351 This feature was sponsored by Jamie Bullock.
352
353 @item
354 The @code{\note} markup command now also accepts note head styles.
355
356 @lilypond[ragged-right,fragment,relative=2]
357 c4^\markup {
358   \override #'(style . triangle) \note-by-number #2 #1 #1 = 100
359 }
360 @end lilypond
361
362 This feature was sponsored by Jamie Bullock.
363
364 @item
365 Tie chord formatting also works with arpegiated
366 ties.
367
368 @lilypond[ragged-right]
369 \relative c'' {
370   <e c a f>2~ <e c a f> |
371   \set tieWaitForNote = ##t
372   e8~ c~ a~ f~ <e' c a f>2 |
373   f,8~ a~ c~ e~ <f, a c e>2 |
374 }
375 @end lilypond
376
377
378 This feature was sponsored by Steve Doonan.
379
380
381 @end itemize
382
383
384
385 @ifhtml
386 For older news, go to
387 @uref{http://lilypond.org/doc/v2.8/Documentation/topdocs/NEWS.html},
388 or @uref{../,go back} to the Documentation index.
389
390
391 @end ifhtml
392
393 @bye