1 New features in 2.12 since 2.10
2 *******************************
4 * Fret diagrams can now have variable string thickness:
9 * A new fret diagram orientation, opposing-landscape, is available:
14 * Unbeamed 128th notes are now supported:
19 * Extending LilyPond's existing support for microtones, there are
20 now arrowed accidentals for the notation of microtonal alterations.
21 To use them, redefine the `glyph-name-alist' property of
22 `Accidental' as in the following example which uses quartertones
23 to typeset arrowed accidentals. Alternatively, it is possible to
24 define separate names for all notes with arrowed accidentals (see
25 `ly/makam.ly' for boilerplate code).
30 * Straight flags (used in old scores of e.g. Bach, but also in
31 different form in modern scores of e.g. Stockhausen) are now
37 * `\bookpart' blocks may be used to split a book into several parts,
38 separated by a page break, in order to ease the page breaking, or
39 to use different `\paper' settings in different parts.
44 subtitle = "First part"
51 subtitle = "Second part"
57 * Nested contexts of the same type are now allowed. This deprecates
58 `InnerStaffGroup' and `InnerChoirStaff'.
63 * Percent repeat counters can be shown at regular intervals using the
64 context property `repeatCountVisibility'.
69 * In addition to the already existing `showLastLength' property,
70 `showFirstLength' can now be set as well, rendering only the first
71 measures of a piece. Both properties may be set at the same time:
76 * The file extension for MIDI can be set using the command-line
77 program default `midi-extension'. For Windows, the default
78 extension has been changed to `.mid'.
80 * Two variations on the default double repeat bar line are now
86 * Four automatic accidentals rules have been added: `neo-modern',
87 `neo-modern-cautionary', `dodecaphonic' and `teaching'. The
88 following example illustrates `neo-modern' rule.
93 * Flags can now be generated with Scheme-code using the `'flag'
94 `Stem' grob property. Existing scores will work without change.
99 * Harp pedalling diagrams were added:
104 * Predefined, user-configurable, transposable fret diagrams are now
105 available in the `FretBoards' context:
110 * The following syntax changes were made, in chronological order. In
111 addition, fret diagram properties have been moved to
112 `fret-diagram-details', and the `#'style' property is used to
113 select solid/dashed lines instead of `#'dash-fraction'.
115 'break-align-symbol -> 'break-align-symbols
116 scripts.caesura -> scripts.caesura.curved
117 \setEasyHeads -> \easyHeadsOn
118 \easyHeadsOff (new command)
119 \fatText -> \textLengthOn
120 \emptyText -> \textLengthOff
121 \set hairpinToBarline -> \override Hairpin #'to-barline
122 \compressMusic -> \scaleDurations
123 \octave -> \octaveCheck
124 \arpeggioUp -> \arpeggioArrowUp
125 \arpeggioDown -> \arpeggioArrowDown
126 \arpeggioNeutral -> \arpeggioNormal
127 \setTextCresc -> \crescTextCresc
128 \setTextDecresc -> \dimTextDecresc
129 \setTextDecr -> \dimTextDecr
130 \setTextDim -> \dimTextDim
131 \setHairpinCresc -> \crescHairpin
132 \setHairpinDecresc -> \dimHairpin
133 \sustainUp -> \sustainOff
134 \sustainDown -> \sustainOn
135 \sostenutoDown -> \sostenutoOn
136 \sostenutoUp -> \sostenutoOff
137 'infinite-spacing-height -> 'extra-spacing-height
138 #(set-octavation oct) -> \ottava #oct
139 \put-adjacent markup axis dir markup -> \put-adjacent axis dir markup markup
140 \pointAndClickOn (new command)
141 \pointAndClickOff (new command)
142 \center-align -> \center-column
143 \hcenter -> \center-align
144 printallheaders -> print-all-headers
145 \bigger -> \larger (already existing command)
146 systemSeparatorMarkup -> system-separator-markup
148 Moreover, some files in the `ly/' directory have been renamed; the
149 *-init.ly filenames are now only used for files that are
150 automatically included, while such files as `makam-init.ly' or
151 `gregorian-init.ly' have been renamed to `makam.ly' or
154 * The "tex" and "texstr" backends have been removed. Font are now
155 accessed via the fontconfig library; the Pango library is used to
156 display text strings.
158 * Metronome marks can now also contain a textual description. The
159 duration and count (if given) are shown in parentheses after the
165 * In figured bass you can now also use a backslash through a number
166 to indicate a raised 6th step.
171 * Arpeggios may now use "parenthesis" style brackets:
176 * Single-system scores are now naturally spaced instead of being
177 stretched to fill the line width. This can be changed by setting
178 `ragged-right = ##f'.
180 * Enclosing text within boxes with rounded corners is now possible,
181 using the `\rounded-box' markup command.
183 * `lilypond-book' can run any program instead of `latex' to guess
184 the line width, thanks to `--latex-program' command line option.
186 * Underlining is now possible with the `\underline' markup command.
188 * It is now possible to specify, using the `page-count' variable in
189 the paper block, the number of pages that will be used.
191 * A new page breaking function, `ly:minimal-breaking', is dedicated
192 to books with many pages or a lot of text.
194 * A table of contents is included using `\markuplines
195 \table-of-contents'. Elements are added to it using the
198 * Text spreading over several pages is entered using the
199 `\markuplines' keyword. Builtin markup list commands, such as
200 `\justified-lines' or `\wordwrap-lines' may be used, and new ones
201 created using the `define-markup-list-command' Scheme macro.
203 * Particular points of a book may be marked with the `\label'
204 command. Then, the page where these points are placed can be
205 referred to using the `\page-ref' markup command.
207 * Page breaking and page turning commands (`\pageBreak',
208 `\noPageBreak', etc.) can be used at top-level, between scores and
211 * The following options are now changed as a `-d' sub-option:
212 `--backend', `--safe', `--preview' and `--no-pages' (which became
213 `-dno-print-pages'). The `-b' option does not exist any more.
215 * Improved testing procedures now catch changes in CPU and memory
216 performance, page layout, MIDI results and warnings. This helps to
217 reduce the number of regression errors during development,
218 resulting in more stable releases.
220 See `INSTALL.html#Testing-LilyPond' for more information.
222 * Nested properties, such as `'details' in `Slur', can be reverted
223 as well. The syntax for this is
225 \revert Slur #'(details closeness-factor)
227 * All line spanners are more flexible now in the configuration of
228 their end points. This includes glissando, voice followers, text
229 crescendos and other text spanners. The old syntax for setting
230 text on line spanners is no longer valid.
235 This feature was sponsored by Trevor Bača.
237 * The environment variable `LILYPONDPREFIX' has been renamed
240 * Notes or rests, such as a typical end note, that fill an entire
241 measure are preceded by some more space.
246 * All `\score's in a lilypond-book fragment are now inserted into
247 the document. Also, toplevel markups don't result in an entire
250 * Alterations (such as a sharp or flat) may now be arbitrary
251 fractions. This allows some forms of microtonal music. For
252 example, Turkish makam music uses 1/9th tone alterations.
257 * Tie directions may be set with `^~' and `_~'.
259 * Tablature now supports harmonics and slides:
264 This feature was sponsored by Mike Amundsen
266 * Horizontal spacing now follows object outlines more accurately.
267 This allows tighter horizontal spacing.
272 * Objects that belong outside of the staff are now positioned
273 automatically to avoid collisions.
278 * Staves are spaced vertically using a skyline algorithm. This helps
279 prevent uneven vertical spacing.