]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/changes.tely
Doc-fr: Changes, LM and NR-spacing
[lilypond.git] / Documentation / fr / changes.tely
1 \input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
2 @ignore
3     Translation of GIT committish: f00c5e65a2b77ac1cc54fe221aaa845eedafd3d8
4
5     When revising a translation, copy the HEAD committish of the
6     version that you are working on.  For details, see the Contributors'
7     Guide, node Updating translation committishes..
8 @end ignore
9
10 @c Translators: Jean-Charles Malahieude
11 @c Translation checkers:
12
13 @setfilename lilypond-changes.info
14 @settitle LilyPond Changes
15
16 @include macros.itexi
17
18 @ifhtml
19 @macro inputfileref{DIR,NAME}
20 @uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
21 @end macro
22 @macro usermanref{NAME}
23 @inforef{\NAME\,,../user/lilypond/lilypond}@c
24 @end macro
25 @end ifhtml
26
27 @ifnothtml
28 @macro inputfileref{DIR,NAME}
29 @file{\DIR\/\NAME\}@c
30 @end macro
31 @macro usermanref{NAME}
32 Voir le manuel d'utilisation, \NAME\
33 @end macro
34 @end ifnothtml
35
36 @macro textanchor{NAME}
37 @html
38 <a name="\NAME\"></a>
39 @end html
40 @end macro
41
42
43 @documentencoding UTF-8
44 @documentlanguage fr
45 @afourpaper
46
47 @finalout
48
49 @node Top
50 @top Nouvelles fonctionnalités de la version 2.20 (depuis 2.18)
51
52 @allowcodebreaks false
53
54 @itemize
55
56 @ignore
57
58 HINTS
59
60 * add new items at the top
61
62 * only show verbatim input for syntax/input changes
63
64 * try to be as brief possible in those cases
65
66 * don't try to provide real-world examples, they often get too big,
67 which scares away people.
68
69 * Write complete sentences.
70
71 * only show user-visible changes.
72
73 @end ignore
74
75 @item
76 Il est désormais possible de déplacer des systèmes relativement à
77 leur positionnement actuel, à l'aide de la sous-propriété
78 @code{extra-offset} de
79 @code{NonMusicalPaperColumn.line-break-system-details}, que ce soit sur
80 l'axe horizontal ou vertical. Cette fonctionnalité s'avère très utile
81 pour effectuer un léger ajustement dans le positionnement vertical par
82 défaut d'un système particulier. Voir
83 @ruser{Positionnement explicite des portées et systèmes} pour de plus
84 amples explications.
85
86 @item
87 Il est désormais possible d'ajouter du texte à un crochet d'analyse,
88 grâce à l'objet @code{HorizontalBracketText}.
89
90 @lilypond[quote,verbatim]
91 \layout {
92   \context {
93     \Voice
94     \consists "Horizontal_bracket_engraver"
95   }
96 }
97
98 {
99   \once \override HorizontalBracketText.text = "a"
100   c''\startGroup d''\stopGroup
101   e''-\tweak HorizontalBracketText.text "a'" \startGroup d''\stopGroup
102 }
103 @end lilypond
104
105 @item
106 Les règles en matière d'altération peuvent désormais se définir au
107 niveau d'un contexte @code{ChoirStaff}.  Deux nouvelles règles --
108 @code{choral} et @code{choral-cautionary} -- sont disponibles.  Elles
109 combinent les caractéristiques de @code{modern-voice} et @code{piano} ou
110 leurs équivalents avec altérations de précaution.
111
112 @item
113 La fonction musicale @code{\unfoldRepeats} peut maintenant prendre en
114 argument optionnel une liste spécifiant le ou les types de musique à
115 répéter dans le développement.  Sont disponibles les arguments
116 @code{percent}, @code{tremolo} et @code{volta}.  En l'absence de liste
117 optionnelle d'arguments, sera utilisé @code{repeated-music} et tout sera
118 développé.
119
120 @item
121 La propriété d'objet graphique @code{output-attributes} remplace, dans
122 les sorties SVG, la propriété de @emph{grob} @code{id}.  Ceci permet de
123 définir, à l'aide d'une liste associative, de multiples attributs.  Par
124 exemple, @code{#'((id . 123) (class . foo) (data-whatever . @qq{bar}))}
125 produira dans un fichier SVG le groupe de balise : @code{<g id=@qq{123}
126 class=@qq{foo} data-whatever=@qq{bar}> @dots{} </g>}.
127
128 @item
129 Liaisons d'articulation ou de phrasé peuvent dorénavant débuter sur une
130 note particulière d'un accord.  Des liaisons simultanées dans un même
131 contexte @code{Voice} devront se distinguer par l'attribution d'un
132 @code{spanner-id}.
133
134 @item
135 La propriété musicale et d'objet graphique @code{spanner-id}, qui permet
136 de distinguer des liaisons d'articulation ou de phrasé simultanées,
137 prend en argument une « clé » -- entrier positif ou symbole -- au lieu
138 d'une chaîne.
139
140 @item
141 Le nouvelle commande @code{\=} permet de spécifier le @code{spanner-id}
142 (identificateur d'extension) pour des liaisons d'articulation ou de
143 phrasé simultanées.
144 @lilypond[verbatim,quote]
145 \fixed c' {
146   <c~ f\=1( g\=2( >2 <c e\=1) a\=2) >
147 }
148 @end lilypond
149
150 @item
151 Les blocs introduits par @code{\header} peuvent être stockés dans des
152 variables et utilisés en argument à la musique ou à des fonctions Scheme
153 ainsi que dans le corps de constructions @code{#@{@dots{}#@}}.  Ils sont
154 représentés en tant que module Guile.
155
156 Les blocs @code{\book}, @code{\bookpart}, @code{\score}, @code{\with},
157 @code{\layout}, @code{\midi} et @code{\paper} peuvent être passés de
158 façon similaire, mais sont représentés par des types de donnée différents.
159
160 @item
161 Les listes de symboles séparés par des points, à l'instar de
162 @code{FretBoard.stencil} sont pris en charge depuis la version 2.18.
163 Elles peuvent désormais contenir des entiers non signés, et leurs
164 membres être séparés par des virgules. Ceci permet des libellés tels que
165 @lilypond[quote,verbatim]
166 { \time 2,2,1 5/8 g'8 8 8 8 8 }
167 @end lilypond
168 ou
169 @example
170 \tagGroup violin,oboe,bassoon
171 @end example
172
173 @item
174 De telles listes peuvent aussi apparaître au sein d'expressions aux fins
175 d'assignation, de définition ou de dérogation.  Ceci permet des libellés
176 tels que
177 @lilypond[quote,verbatim]
178 { \unset Timing.beamExceptions
179   \set Timing.beatStructure = 1,2,1
180   g'8 8 8 8 8 8 8 8 }
181 @end lilypond
182
183 @item
184 Les éléments d'une liste associative pouvaient déjà se voir attribuer
185 des valeurs individuellement, comme par exemple
186 @code{system-system-spacing.basic-distance} pour les variables
187 concernant le papier.  Ils peuvent désormais être référencés de la même
188 manière, comme ici
189 @example
190 \paper @{
191   \void \displayScheme \system-system-spacing.basic-distance
192 @}
193 @end example
194
195 Par extension à ces modifications, il est dorénavant possible de définir
196 et faire référence à des pseudovariables telles que @code{violon.1}.
197
198 @item
199 Les fichiers sources LilyPond peuvent désormais être empaquetés dans les
200 fichiers PDF générés.  Cette fonctionnalité est pour l'instant désactivée
201 par défaut car susceptible d'être considérée comme peu sure dans la
202 mesure où des documents PDF comportant des fichiers cachés peuvent
203 présenter des risques en matière de sécurité.  Attention cependant :
204 les lecteurs de PDF ne sont pas tous capables de gérer les fichiers
205 joints ; si tel est le cas, le rendu PDF apparaîtra normalement mais les
206 fichiers joints seront invisibles.  Cette fonctionnalité n'est
207 opérationnelle qu'avec le moteur PDF.
208
209 @item
210 Les noms de note en français sont maintenant définis spécifiquement,
211 plutôt qu'en alias de l'italien.  En plus de la syntaxe dérivée de
212 l'italien, la hauteur @var{d} peut se saisir @var{ré}, et un
213 double-dièse par le suffice @var{-x}.
214
215 @item
216 Dans le cadre des tablatures pour luth sont désormais disponibles les
217 cordes de basse additionnelles.
218 @lilypond[quote,verbatim]
219 m = { f'4 d' a f d a, g, fis, e, d, c,  \bar "|." }
220
221 \score {
222   \new TabStaff \m
223   \layout {
224     \context {
225       \Score
226       tablatureFormat = #fret-letter-tablature-format
227     }
228     \context {
229       \TabStaff
230       stringTunings = \stringTuning <a, d f a d' f'>
231       additionalBassStrings = \stringTuning <c, d, e, fis, g,>
232       fretLabels = #'("a" "b" "r" "d" "e" "f" "g" "h" "i" "k")
233     }
234   }
235 }
236 @end lilypond
237
238 @item
239 La commande @code{\table}, pour gérer des listes de @emph{markups} est
240 disponible.  Chaque colonne peut disposer de son propre alignement.
241 @lilypond[quote,verbatim]
242 \markuplist {
243     \override #'(padding . 2)
244     \table
245       #'(0 1 0 -1)
246       {
247         \underline { center-aligned right-aligned center-aligned left-aligned }
248         one "1" thousandth "0.001"
249         eleven "11" hundredth "0.01"
250         twenty "20" tenth "0.1"
251         thousand "1000" one "1.0"
252       }
253 }
254 @end lilypond
255
256 @item
257 Une nouvelle commande de @emph{markup}, @code{\with-dimensions-from},
258 rend plus aisée l'utilisation de @code{\with-dimensions} en adoptant les
259 dimensions d'un objet @emph{markup} fourni en premier argument.
260 @lilypond[quote,verbatim]
261 \markup {
262   \pattern #5 #Y #0 "x"
263   \pattern #5 #Y #0 \with-dimensions-from "x" "f"
264   \pattern #5 #Y #0 \with-dimensions-from "x" "g"
265   \override #'(baseline-skip . 2)
266   \column {
267     \pattern #5 #X #0 "n"
268     \pattern #5 #X #0 \with-dimensions-from "n" "m"
269     \pattern #5 #X #0 \with-dimensions-from "n" "!"
270   }
271 }
272 @end lilypond
273
274 @item
275 Deux nouvelles fonctions permettent de gérer les sauts de page.
276 @code{ly:one-page-breaking} ajuste automatiquement la hauteur de la page
277 de telle sorte que toute la musique tienne sur une seule page.
278 @code{ly:one-line-auto-height-breaking} fonctionne comme
279 @code{ly:one-line-breaking} mais, en plus de placer la musique sur une
280 seule ligne et d'adapter la largeur de la page en conséquence, elle
281 adapte la hauteur de la page automatiquement.
282
283 @item
284 La nouvelle commande de @emph{markup} @code{\draw-squiggle-line} permet
285 de tracer des lignes ondulées.  Sont adaptables l'épaisseur du trait
286 (@code{thickness}), l'amplitude (@code{angularity}), la hauteur
287 (@code{height}) et l'orientation (@code{orientation}).
288 @lilypond[quote,verbatim]
289 \markup
290   \overlay {
291     \draw-squiggle-line #0.5 #'(3 . 3) ##t
292
293     \translate #'(3 . 3)
294     \override #'(thickness . 4)
295     \draw-squiggle-line #0.5 #'(3 . -3) ##t
296
297     \translate #'(6 . 0)
298     \override #'(angularity . -5)
299     \draw-squiggle-line #0.5 #'(-3 . -3) ##t
300
301     \translate #'(3 . -3)
302     \override #'(angularity . 2)
303     \override #'(height . 0.3)
304     \override #'(orientation . -1)
305     \draw-squiggle-line #0.2 #'(-3 . 3) ##t
306   }
307 @end lilypond
308
309 @item
310 La nouvelle commande  @code{\RemoveAllEmptyStaves} agit exactement comme
311 @code{\RemoveEmptyStaves}, à ceci près qu'elle supprime aussi les lignes
312 du premier système de la partition.
313
314 @item
315 Deux commandes de @emph{markup} font leur apparition : @code{\undertie}
316 et @code{\overtie}, ainsi qu'une version générique @code{\tie}.
317 @lilypond[quote,verbatim]
318 \markup {
319   \undertie "undertied"
320   \overtie "overtied"
321 }
322
323 m = {
324   c''1 \prall -\tweak text \markup \tie "131" -1
325 }
326
327 { \voiceOne \m \voiceTwo \m }
328 @end lilypond
329
330 @item
331 Les microaltérations peuvent désormais s'imprimer aussi sur des
332 @code{TabStaff}, notamment pour indiquer des @emph{bends}.
333 @lilypond[quote,verbatim]
334 \layout {
335   \context {
336     \Score
337     supportNonIntegerFret = ##t
338   }
339 }
340
341 mus = \relative { c'4 cih d dih }
342
343 <<
344   \new Staff << \clef "G_8" \mus >>
345   \new TabStaff \mus
346 >>
347 @end lilypond
348
349 @item
350 Deux nouveaux styles de contours à blanc sont disponibles.  Le style
351 @code{outline} agit un peu comme un ombrage des glyphes, son galbe étant
352 le résultat de multiples copies du glyphe.  Le style @code{rounded-box}
353 produit un rectangle aux coins arrondis.  Pour tous les styles, y
354 compris le style par défaut @code{box}, l'épaisseur (@code{thickness})
355 du contour, mesuré en épaisseur de ligne de portée, est adaptable.
356
357 @lilypond[verbatim,quote]
358 \markup {
359   \combine
360     \filled-box #'(-1 . 15) #'(-3 . 4) #1
361     \override #'(thickness . 3)
362     \whiteout whiteout-box
363 }
364 \markup {
365   \combine
366     \filled-box #'(-1 . 24) #'(-3 . 4) #1
367     \override #'(style . rounded-box)
368     \override #'(thickness . 3)
369     \whiteout whiteout-rounded-box
370 }
371 \markup {
372   \combine
373     \filled-box #'(-1 . 18) #'(-3 . 4) #1
374     \override #'(style . outline)
375     \override #'(thickness . 3)
376     \whiteout whiteout-outline
377 }
378 \relative {
379   \override Staff.Clef.whiteout-style = #'outline
380   \override Staff.Clef.whiteout = 3
381   g'1
382 }
383 @end lilypond
384
385 @item
386 Les différentes instructions @code{\override}, @code{\revert},
387 @code{\set} et @code{\unset} acceptent désormais le préfixe @code{\once}
388 qui en réduit les effets à un seule occurrence.
389 @lilypond[quote,verbatim]
390 \relative {
391   c'4 d
392   \override NoteHead.color = #red
393   e4 f |
394   \once \override NoteHead.color = #green
395   g4 a
396   \once \revert NoteHead.color
397   b c |
398   \revert NoteHead.color
399   f2 c |
400 }
401 @end lilypond
402
403 @item
404 Lorsqu'il génère un fichier MIDI, LilyPond enregistre désormais le
405 @code{title} défini dans le bloc @code{\header} d'une partition en tant
406 que nom de la séquence MIDI du fichier MIDI.  En l'absence de
407 @code{title} au niveau @code{\score}, sera retenue la première
408 définition trouvée dans l'ordre suivant : @code{\bookpart}, @code{\book}
409 et enfin @code{\header} de premier niveau.  De manière optionnelle, le
410 nom de la séquence MIDI peut se définir à l'aide du nouveau champ de
411 @code{\header} @code{midititle} indépendamment au cas où le champ
412 @code{title} contiendrait du code @emph{markup} qui ne serait pas rendu
413 correctement en texte plat.
414
415 @item
416 Les fonctions, qu'elles soient musicales, Scheme ou fantômes, ainsi que
417 les commandes de @emph{markup} pour lesquelles le paramètre final est
418 l'objet de dérogations en chaîne peuvent se définir en remplaçant
419 l'expression à laquelle elle s'appliquera par @code{\etc}.  Il en va de
420 même pour les appels à une fonction ou une commande de @emph{markup}.
421
422 @lilypond[verbatim,quote]
423 bold-red-markup = \markup \bold \with-color #red \etc
424 highlight = \tweak font-size 3 \tweak color #red \etc
425
426 \markup \bold-red "text"
427 \markuplist \column-lines \bold-red { One Two }
428
429 { c' \highlight d' e'2-\highlight -! }
430 @end lilypond
431
432 @item
433 Les fonctions LilyPond définies à l'aide de
434 @code{define-music-function}, @code{define-event-function},
435 @code{define-scheme-function} et @code{define-void-function} peuvent
436 désormais être appelées directement à partir de Scheme, comme s'il
437 s'agissait de pures procédures Scheme.  Le contrôle et la correspondance
438 des arguments seront réalisés de manière identique à ce qui se passe
439 lorsque la fonction est appelée au fil du code LilyPond.  Ceci inclut
440 l'insertion de valeurs par défaut pour des arguments optionnels qui ne
441 correspondraient pas à leur prédicat.  Dans la liste des arguments, il
442 est possible d'utiliser @code{*unspecified*} au lieu de @code{\default}
443 pour omettre explicitement une séquence d'argument optionnels.
444
445 @item
446 Les données @code{location} pour la saisie courante et @code{parser}
447 sont désormais gérées directement dans les flux GUILE ; elles peuvent
448 donc être référencées par des appels de fonction@code{(*location*)}
449 et @code{(*parser*)}.  Par voie de conséquence, nombre de fonctions ont
450 vu disparaître leur argument @code{parser} explicite.
451
452 Les fonctions définies par @code{define-music-function},
453 @code{define-event-function}, @code{define-scheme-function} et
454 @code{define-void-function} n'ont désormais nul besoin d'argument
455 @code{parser} ou @code{location}.
456
457 Avec ces définitions particulières, LilyPond tentera de reconnaître
458 l'utilisation héritée des arguments  @code{parser} et @code{location},
459 fournissant ainsi une compatibilité ascendante de la sémantique pour un
460 certain temps.
461
462 @item
463 Dans la langue de notes @code{english}, le nom développé des notes
464 altérées comprend désormais un trait d'union, pour une meilleure
465 lisibilité.  Il faut donc maintenant saisir
466 @example
467 \key a-flat \major
468 @end example
469 au lieu de
470 @example
471 \key aflat \major
472 @end example
473
474 Les altérations doubles ne prennent pas de trait d'union
475 supplémentaire ; le @code{cisis} batave s'écrit @code{c-sharpsharp} en
476 anglais développé.
477
478 @item
479 Le style visuel des traits de tremolo (allure, style et pente) est
480 maintenant plus finement contrôlé.
481 @lilypond[quote,relative=2]
482   a8:32 b: c: d:
483   \override StemTremolo.shape = #'beam-like
484   a: b: c: d:
485   \override StemTremolo.style = #'constant
486   a: b: c: d:
487   g,2
488 @end lilypond
489
490
491 @item
492 Les silences multimesures ont une longueur dépendant de leur durée
493 totale, sous contrôle de @code{MultiMeasureRest.space-increment}.
494 @lilypond[quote]
495 { \compressFullBarRests
496   \override Staff.MultiMeasureRest.space-increment = 3.0
497   R1*2 R1*12 R1*64 }
498 @end lilypond
499
500 @item
501 Les numéros de page peuvent désormais s'imprimer en chiffres romains, en
502 ajustant la variable de papier @code{page-number-type}.
503
504 @item
505 Il est désormais possible d'utiliser @code{\time} et @code{\partial} de
506 concert pour modifier une métrique en cours de mesure.
507
508 @lilypond[verbatim,quote,relative=1]
509 \override Score.BarNumber.break-visibility = #end-of-line-invisible
510 \partial 4 \time 3/4 f4 | 2 4 | 2 \bar "||"
511 \time 9/8 \partial 4. f8 8 8 | 2. 8 8 8 |
512 @end lilypond
513
514 @item
515 Il est désormais possible de modifier la propriété @code{text} des noms
516 d'accord.
517
518 @lilypond[verbatim,fragment,quote]
519 <<
520 \new ChordNames \chordmode {
521   a' b c:7
522   \once \override ChordName.text = #"foo"
523   d
524 }
525 >>
526 @end lilypond
527
528 @item
529 Amélioration de l'alignement horizontal lors de l'utilisation de
530 @code{TextScript}, à l'aide de @code{DynamicText} ou @code{LyricText}.
531
532 @item
533 Ajout d'une nouvelle commande @code{\magnifyStaff}, qui échelonne de
534 façon globale, au niveau d'un contexte @code{Staff}, sa taille, les
535 lignes de portée, les barres de mesure, les hampes et l'espacement
536 horizontal.  Les lignes de la portée considérée ne seront toutefois pas
537 plus fines que la taille par défaut dans la mesure où l'épaisseur des
538 hampes, liaisons et autres est basée sur l'épaisseur des lignes de
539 portée.
540
541 @item
542 @code{InstrumentName} prend désormais en charge la
543 @code{text-interface}.
544
545 @item
546 Il est désormais possible de contrôler le « niveau d'expression » des
547 canaux MIDI à l'aide de la propriété de contexte
548 @code{Staff.midiExpression}.  Ceci permet d'altérer le volume perçu y
549 compris des notes tenues, bien que légèrement.  L'ajustement prend une
550 valeur entre @code{0.0} et @code{1.0}.
551
552 @example
553 \score @{
554   \new Staff \with @{
555     midiExpression = #0.6
556     midiInstrument = #"clarinet"
557   @}
558   <<
559     @{ a'1~ a'1 @}
560     @{
561       \set Staff.midiExpression = #0.7 s4\f\<
562       \set Staff.midiExpression = #0.8 s4
563       \set Staff.midiExpression = #0.9 s4
564       \set Staff.midiExpression = #1.0 s4
565
566       \set Staff.midiExpression = #0.9 s4\>
567       \set Staff.midiExpression = #0.8 s4
568       \set Staff.midiExpression = #0.7 s4
569       \set Staff.midiExpression = #0.6 s4\!
570     @}
571   >>
572   \midi @{ @}
573 @}
574 @end example
575
576 @item
577 La prise en charge de fontes musicales alternative, autrement dit autres
578 que Emmentaler, est facilitée.  Voir
579 @uref{http://fonts.openlilylib.org/} pour de plus amples informations.
580
581 @item
582 Les objets graphiques et leurs parents peuvent désormais s'aligner de
583 manière indépendante, ce qui permet une flexibilité accrue dans le
584 positionnement des @emph{grobs}.  Par exemple, le bord « gauche » d'un
585 objet peut désormais s'aligner sur le « centre » de son parent.
586
587 @item
588 La commande @code{\partial} a connu des améliorations notables afin
589 d'éviter les problèmes en cas de contextes multiples et parallèles.
590
591 @item
592 @code{\chordmode} prend désormais en charge les constructions @code{< >}
593 et @code{<< >>}.
594
595 @item
596 La nouvelle commande @code{\tagGroup} vient en complément des commandes
597 @code{\keepWithTag} et @code{\removeWithTag} déjà existantes.  Par exemple,
598
599 @example
600 \tagGroup #'(violinI violinII viola cello)
601 @end example
602
603 déclare une liste de balises appartenant à un unique « groupe de
604 balises ».
605
606 @example
607 \keepWithTag #'violinI
608 @end example
609
610 n'est maintenant plus concerné que par les balises du groupe auquel
611 « violinI » appartient.
612
613 Tout élément balisé par une ou plusieurs balises du groupe, à
614 l'exception de @var{violinI}, sera ignoré.
615
616 @item
617 La fonction @code{\addlyrics} est désormais fonctionnelle avec n'importe
618 quel contexte arbitraire, y compris @code{Staff}.
619
620 @item
621 Les numéros de cordes peuvent désormais s'imprimer  en chiffres romains,
622 pour les instruments à cordes non frettées par exemple.
623 @lilypond[verbatim,quote,relative=2]
624 c2\2
625 \romanStringNumbers
626 c\2
627 \arabicStringNumbers
628 c1\3
629 @end lilypond
630
631 @item
632 La propriété @code{thin-kern} du @emph{grob} @code{BarLine} est renommée
633 en  @code{segno-kern}.
634
635 @item
636 Les objets @code{KeyCancellation} ignorent désormais les clefs de
637 citation, à l'instar des objets @code{KeySignature}.
638
639 @item
640 Prise en charge de @code{\once@tie{}\unset}
641
642 @item
643 Dans le cadre de l'utilisation de la commande de @emph{markup}
644 @code{\fret-diagram-verbose}, il est désormais possible de coloriser
645 individuellement les points et les parenthèses des diagrammes de fret.
646
647 @lilypond[verbatim,quote,relative=1]
648 \new Voice {
649   c1^\markup {
650     \override #'(fret-diagram-details . (
651                  (finger-code . in-dot))) {
652       \fret-diagram-verbose #'((mute 6)
653                                (place-fret 5 3 1 red)
654                                (place-fret 4 5 2 inverted)
655                                (place-fret 3 5 3 green)
656                                (place-fret 2 5 4 blue inverted)
657                                (place-fret 1 3 1 violet)
658                                (barre 5 1 3 ))
659     }
660   }
661   c1^\markup {
662     \override #'(fret-diagram-details . (
663                  (finger-code . below-string))) {
664       \fret-diagram-verbose #'((mute 6)
665                              (place-fret 5 3 1 red parenthesized)
666                              (place-fret 4 5 2 yellow
667                                                default-paren-color
668                                                parenthesized)
669                              (place-fret 3 5 3 green)
670                              (place-fret 2 5 4 blue )
671                              (place-fret 1 3 1)
672                              (barre 5 1 3))
673     }
674   }
675 }
676 @end lilypond
677
678 @item
679 Deux propriétés sont ajoutées à @code{fret-diagram-details} pour une
680 utilisation avec la commande de @emph{markup}
681 @code{\fret-diagram-verbose} : @code{fret-label-horizontal-offset}
682 affecte le @code{fret-label-indication}, et @code{paren-padding}
683 contrôle l'espacement entre le point et les parenthèses qui l'entourent.
684
685 @lilypond[verbatim,quote,relative=1]
686 \new Voice {
687   c1^\markup {
688     \fret-diagram-verbose #'((mute 6)
689                              (place-fret 5 3 1)
690                              (place-fret 4 5 2)
691                              (place-fret 3 5 3)
692                              (place-fret 1 6 4 parenthesized)
693                              (place-fret 2 3 1)
694                              (barre 5 2 3))
695   }
696   c1^\markup {
697     \override #'(fret-diagram-details . (
698                  (fret-label-horizontal-offset . 2)
699                  (paren-padding . 0.25))) {
700       \fret-diagram-verbose #'((mute 6)
701                                (place-fret 5 3 1)
702                                (place-fret 4 5 2)
703                                (place-fret 3 5 3)
704                                (place-fret 1 6 4 parenthesized)
705                                (place-fret 2 3 1)
706                                (barre 5 2 3))
707     }
708   }
709 }
710 @end lilypond
711
712 @item
713 Ajout de la commande de @emph{markup} @code{\justify-line}.  Cette
714 fonction est comparable à @code{\fill-line}, à ceci près qu'au lieu de
715 répartir les @emph{mots} en colonnes, la commande @code{\justify-line}
716 répartit les vides de telle sorte qu'en présence de trois @emph{mots} ou
717 plus, ces blancs soient d'égale longueur.
718
719 @lilypond[quote,verbatim,papersize=a6]
720 \markup \fill-line {oooooo oooooo oooooo oooooo}
721 \markup \fill-line {ooooooooo oooooooo oo ooo}
722 @end lilypond
723
724 @lilypond[quote,verbatim,papersize=a6]
725 \markup \justify-line {oooooo oooooo oooooo oooooo}
726 \markup \justify-line {ooooooooo oooooooo oo ooo}
727 @end lilypond
728
729 @item
730 La nouvelle commande @code{\magnifyMusic} permet de modifier la
731 taille de la musique sans changer la taille de la portée, tout en
732 ajustant automatiquement les hampes, ligatures et l'espacement
733 horizontal.
734
735 @lilypond[verbatim,quote]
736 \new Staff <<
737   \new Voice \relative {
738     \voiceOne
739     <e' e'>4 <f f'>8. <g g'>16 <f f'>8 <e e'>4 r8
740   }
741   \new Voice \relative {
742     \voiceTwo
743     \magnifyMusic 0.63 {
744       \override Score.SpacingSpanner.spacing-increment = #(* 1.2 0.63)
745       r32 c'' a c a c a c r c a c a c a c
746       r c a c a c a c a c a c a c a c
747     }
748   }
749 >>
750 @end lilypond
751
752 @item
753 Création d'un gabarit flexible dans le domaine de la musique chorale.
754 Il s'utilise pour de la musique chorale simple, avec ou sans
755 accompagnement de piano, sur deux ou quatre portées.  Contrairement aux
756 autres gabarits, celui-ci est directement intégré à LilyPond ; il n'est
757 donc pas besoin d'être recopié et édité, mais simplement appelé à l'aide
758 d'un @code{\include} dans le fichier source.  Pour de plus amples
759 détails, voir @rlearning{Gabarits préprogrammés}.
760
761 @item
762 Amélioration significative du positionnement du nombre des n-olets dans
763 le cas de ligatures coudées.  Jusqu'à présent, ce nombre était placé
764 selon la position du crochet même lorsque ce dernier n'était pas
765 imprimé, ce qui pouvait amener à un positionnement disgracieux.  Le
766 nombre est désormais positionné plus près du coude en présence d'un
767 tronçon de ligature  approprié à son placement et en l'absence de
768 crochet.
769
770 De plus, la détection de collision ajoutée décalera  horizontalement le
771 nombre s'il était trop proche d'un empilement adjacent, tout en
772 préservant son écartement de la ligature.  Dans le cas où ce nombre
773 serait trop large pour tenir dans l'espace disponible,  LilyPond
774 reviendra au positionnement basé sur le crochet. Dans le cas d'une
775 collision avec, par exemple, une altération accidentelle, le nombre sera
776 plutôt écarté verticalement.
777
778 @lilypond[verbatim,fragment,quote,relative=1]
779 \time 3/4
780 \override Beam.auto-knee-gap = 3
781 \tuplet 3/2 4 {
782   g8 c'' e,
783   c'8 g,, e''
784   g,,8 e''' c,,
785 }
786 @end lilypond
787
788 @noindent
789 L'ancien comportement des n-olets en présence de ligature coudée reste
790 disponible au moyen d'un @code{\override} sur la nouvelle propriété
791 @code{knee-to-beam}.
792
793 @lilypond[verbatim,fragment,quote,relative=1]
794 \time 3/4
795 \override Beam.auto-knee-gap = 3
796 \override TupletNumber.knee-to-beam = ##f
797 \tuplet 3/2 4 {
798   g8 c'' e,
799   c'8 g,, e''
800   g,,8 e''' c,,
801 }
802 @end lilypond
803
804 @item
805 @code{\lyricsto} et @code{\addLyrics} ont été « harmonisés ».  Tous deux
806 acceptent désormais la même sorte de liste délimitée d'arguments, à
807 l'instar de @code{\lyrics} et @code{\chords}.  Une rétrocompatibilité a
808 été ajoutée, de sorte à accepter des identificateurs musicaux (tel
809 @code{\mus}) en tant qu'arguments.  Une règle a été ajoutée à
810 @code{convert-ly} visant à supprimer les utilisations redondantes de
811 @code{\lyricmode} et réarranger les combinaisons avec les déclencheurs
812 de contexte afin d'appliquer @code{\lyricsto} généralement en dernier
813 (comme le ferait @code{\lyricmode}).
814
815 @item
816 Les définitions et identificateurs Scheme peuvent désormais s'utiliser
817 en tant que définition de sortie.
818
819 @item
820 Les expressions Scheme peuvent désormais s'utiliser en tant que
821 constituants d'un accord.
822
823 @item
824 Amélioration de l'espacement visuel du « MI », tant à taille réduite que
825 normale, dans les styles Funk et Walker, de telle sorte qu'il ait la
826 même taille que les autres têtes de note profilées.  Les « SOL » sont
827 aussi améliorés dans les styles Aiken et Harpe sacrée normaux ou leur
828 variantes fines.
829
830 @item
831 @code{LeftEdge} dispose désormais d'un @code{Y-extent} (extension
832 verticale) définissable.  Voir @rinternals{LeftEdge}.
833
834 @item
835 Une nouvelle fonction -- @code{make-path-stencil} -- supporte toutes les
836 commandes @code{path}, tant relatives qu'absolues :
837
838 @code{lineto}, @code{rlineto}, @code{curveto}, @code{rcurveto},
839 @code{moveto}, @code{rmoveto}, @code{closepath}.  La fonction prend
840 aussi en charge la syntaxe « lettre unique » utilisée dans les commandes
841 de chemin du standard SVG :
842
843 @code{L}, @code{l}, @code{C}, @code{c}, @code{M}, @code{m}, @code{Z} et
844 @code{z}.  Cette nouvelle commande est rétrocompatible avec la fonction
845 originale @code{make-connected-path-stencil}.  Voir aussi le fichier
846 @file{scm/stencil.scm}.
847
848 @item
849 Les propriétés de contexte nommées dans la propriété
850 @samp{alternativeRestores}  sont restaurées à la valeur qu'elles avaient
851 juste avant la @b{première} alternative, ce pour toutes les suivantes.
852
853 Pour l'instant, le jeu par défaut restaure la « métrique courante » :
854
855 @lilypond[verbatim,fragment,quote,relative=2]
856 \time 3/4
857 \repeat volta 2 { c2 e4 | }
858 \alternative {
859   { \time 4/4 f2 d | }
860   { f2 d4 | }
861 }
862 g2. |
863 @end lilypond
864
865 @noindent
866 la « position dans la mesure » :
867
868 @lilypond[verbatim,fragment,quote,relative=2]
869 \time 3/4
870 \repeat volta 2 { c2 e4 | }
871 \alternative {
872   { \time 4/4
873     \set Timing.measurePosition = #(ly:make-moment -1/2)
874     f2 | }
875   { f2 d4 | }
876 }
877 g2. |
878 @end lilypond
879
880 @noindent
881 et les « changements d'accord »:
882
883 @lilypond[verbatim,fragment,quote]
884 <<
885   \new ChordNames {
886     \set chordChanges = ##t
887     \chordmode { c1:m d:m c:m d:m }
888   }
889   \new Staff {
890     \repeat volta 2 { \chordmode { c1:m } }
891     \alternative {
892       { \chordmode { d:m } }
893       { \chordmode { c:m } }
894     }
895   \chordmode { d:m }
896 }
897 >>
898 @end lilypond
899
900 @item
901 Amélioration du rendu MIDI des respirations.  Après une note liée, la
902 respiration prend son temps uniquement sur la dernière note de la
903 prolongation.  Autrement dit, @code{@{ c4~ c8 \breathe @}} s'entendra
904 comme @code{@{ c4~ c16 r @}} au lieu de @code{@{ c4 r8 @}}.  Ceci est
905 plus cohérent en matière d'articulation et avec la manière dont un
906 instrumentiste interprète une respiration après une note prolongée par
907 une liaison.  Ceci permet aussi d'aligner plus facilement une
908 respiration simultanée à plusieurs parties dont les notes différent dans
909 leur durée.
910
911 @item
912 Ajout d'un nouveau style de tête de note pour les tablature :
913 @code{TabNoteHead.style = #'slash}.
914
915 @item
916 Quatre nouveaux glyphes de clef, ainsi que leur tessiture respective,
917 sont désormais disponibles : @emph{Double G}, @emph{Tenor G},
918 @emph{Varpercussion} et @emph{varC}.
919
920 @lilypond[verbatim,quote,fragment]
921   \override Staff.Clef.full-size-change = ##t
922
923   \clef "GG" c c c c
924   \clef "tenorG" c c c c
925   \clef "varC" c c c c
926   \clef "altovarC" c c c c
927   \clef "tenorvarC" c c c c
928   \clef "baritonevarC" c c c c
929   \clef "varpercussion" c c c c
930
931   \break
932   \override Staff.Clef.full-size-change = ##f
933
934   \clef "GG" c c c c
935   \clef "tenorG" c c c c
936   \clef "varC" c c c c
937   \clef "altovarC" c c c c
938   \clef "tenorvarC" c c c c
939   \clef "baritonevarC" c c c c
940   \clef "varpercussion" c c c c
941 @end lilypond
942
943 @item
944 Des durées isolées dans une séquence musicale sont désormais considérées
945 comme des notes sans hauteur.  Ceci peut s'avérer utile pour affecter
946 des rythmes à de la musique ou dans une fonction Scheme.  Dans la
947 partition finale, les hauteurs sont déterminées à partir de la note ou
948 de l'accord qui précède.  Les deux exemples suivant ont un code tout à
949 fait lisible :
950
951 @lilypond[verbatim,quote]
952 \new DrumStaff \with { \override StaffSymbol.line-count = 1 }
953 \drummode {
954   \time 3/4
955   tambourine 8 \tuplet 3/2 { 16 16 16 }
956              8 \tuplet 3/2 { 16 16 16 } 8 8 |
957 }
958 @end lilypond
959
960 @lilypond[verbatim,quote]
961 \new Staff { r16 c'16 ~ 8 ~ 4 ~ 2 | }
962 @end lilypond
963
964 @item
965 @code{\displayLilyMusic} et ses fonctions Scheme sous-jacentes
966 n'omettent plus les durées de note redondantes.  Il est désormais plus
967 facile et sûr de reconnaître et formater les durées isolées dans des
968 expressions telles que
969
970 @example
971 @{ c4 d4 8 @}
972 @end example
973
974 @item
975 Les exceptions en matière de ligature peuvent désormais se libeller à
976 l'aide de la fonction Scheme @code{\beamExceptions}.  Il suffit d'écrire
977
978 @lilypond[verbatim,quote,relative=1]
979 \time #'(2 1) 3/16
980 \set Timing.beamExceptions =
981   \beamExceptions { 32[ 32] 32[ 32] 32[ 32] }
982 c16 c c |
983 \repeat unfold 6 { c32 } |
984 @end lilypond
985
986 @noindent
987 tout en séparant les exceptions par un @code{|} (contrôle de barre de
988 mesure) -- l'absence de hauteur dans les motifs d'exception n'est pas
989 obligatoire.  Auparavant, une telle règle d'exception devait se définir
990 ainsi :
991
992 @example
993 \set Timing.beamExceptions =
994 #'(                         ;début de la liste associative
995    (end .                   ;entrée pour la terminaison des ligatures
996     (                       ;début de la liste des terminaisons
997      ((1 . 32) . (2 2 2))   ;règle pour les triples croches -- groupées à la double
998     )))
999 @end example
1000
1001 @item
1002 La plupart des articulations communes sont réflétées dans le rendu MIDI.
1003 Accent et marcato donnent des notes plus fortes ; staccato,
1004 staccatissimo et portato abrègent les notes.  Une marque de respiration
1005 raccourcit la note qui précède.
1006
1007 Ce comportement est ajustable au travers des propriétés
1008 @code{midiLength} et @code{midiExtraVelocity} affectées à
1009 @code{ArticulationEvent}.  Voir le fichier @file{script-init.ly} pour
1010 des exemples.
1011
1012 @item
1013 La fonctionnalité PostScript d'ajustement des traits ne s'applique plus
1014 de manière automatique ; elle est désormais laissée à l'appréciation du
1015 périphérique PostScript -- Ghostscript l'utilise par défaut pour des
1016 résolutions inférieures à 150 dpi lorsqu'il génère des images
1017 @emph{raster}.  Lorsqu'elle est activée, un algorithme de dessin plus
1018 complexe tirant profit des ajustements de trait servira notamment pour
1019 les ligatures et barres de mesure.
1020
1021 L'ajustement des traits peut se forcer, en ligne de commande, à l'aide
1022 de l'option @samp{-dstrokeadjust}.  En ce qui concerne la génération de
1023 fichiers @code{PDF}, ceci améliorera nettement la prévisualisation, au
1024 détriment cependant de la taille du fichier.  La qualité d'impression à
1025 haute résolution n'est pas affectée.
1026
1027 @end itemize
1028
1029 @ifhtml
1030 Pour des annonces plus anciennes, rendez-vouz aux pages
1031 @uref{http://lilypond.org/doc/v2.18/Documentation/changes/},
1032 @uref{http://lilypond.org/doc/v2.16/Documentation/changes/},
1033 ou @uref{../,remontez} à l'index de la documentation.
1034
1035
1036 @end ifhtml
1037
1038 @bye