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