\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
    Translation of GIT committish: 963a667a43a6a034215310640d0b477743cb5b49

    When revising a translation, copy the HEAD committish of the
    version that you are working on.  For details, see the Contributors'
    Guide, node Updating translation committishes..
@end ignore

@c Translators: Jean-Charles Malahieude
@c Translation checkers:

@setfilename lilypond-changes.info
@settitle LilyPond Changes

@include macros.itexi

@ifhtml
@macro inputfileref{DIR,NAME}
@uref{../../\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
@end macro
@macro usermanref{NAME}
@inforef{\NAME\,,../user/lilypond/lilypond}@c
@end macro
@end ifhtml

@ifnothtml
@macro inputfileref{DIR,NAME}
@file{\DIR\/\NAME\}@c
@end macro
@macro usermanref{NAME}
Voir le manuel d'utilisation, \NAME\
@end macro
@end ifnothtml

@macro textanchor{NAME}
@html
<a name="\NAME\"></a>
@end html
@end macro


@documentencoding UTF-8
@documentlanguage fr
@afourpaper

@macro manualIntro
Ce document recense les modifications et les nouvelles fonctionnalités
de LilyPond pour la version @version{} (depuis la 2.20).
@end macro

@lilyTitlePage{Nouveautés}

@iftex
@allowcodebreaks false
@end iftex

@ignore

HINTS
* add new items at the top
* only show verbatim input for syntax/input changes
* try to be as brief possible in those cases
* don't try to provide real-world examples, they often get too big,
  which scares away people.
* Write complete sentences.
* only show user-visible changes.

@end ignore


@subheading Nouveautés en matière de notation musicale
@c VO New for musical notation

@subsubheading Améliorations de la représentation des hauteurs
@c VO Displaying pitch improvements
@itemize

@item
Un glyphe d'altération correspondant au code SMuFL U+E2E3 a été ajouté.
Il s'agit d'une accidentelle étendue d'Helmhotz-Ellis qui hausse d'un
quart de ton non décimal.

@lilypond[quote]
{
  \override Accidental.glyph-name-alist =
    #(assv-set!
      (copy-tree standard-alteration-glyph-name-alist)
        1/4 "accidentals.sharp.slash.stem")
  c'2 cih'
}
@end lilypond

@item
Le nom des notes en quart de ton est désormais disponible dans toutes
les langues de saisie.
@lilypond[verbatim,quote]
\language "català"
\relative { do'4 sol' miqb re do1 }
@end lilypond

@item
Définir @code{suggestAccidentals} à @code{'cautionary} a pour effet
d'appliquer le style @code{AccidentalSuggestion} uniquement aux
altérations accidentelles de précaution. Ceci permet de distinguer les
accidentelles @emph{facsimile} de celles à vocation éditoriale.
@lilypond[verbatim,quote]
\relative {
  \key d \minor
  d''4 cis8 b? cis2
  \set suggestAccidentals = ##t
  d4 cis8 b? cis2
  \set suggestAccidentals = #'cautionary
  d4 cis8 b? cis2
}
@end lilypond

@item
Ajout de la commande @code{\ambitusAfter}, qui permet de positionner
l'ambitus à un endroit particulier.
@lilypond[verbatim,quote]
\new Staff \with {
  \consists Ambitus_engraver
} \relative {
  \ambitusAfter key-signature
  \key d \major
  es'8 g bes cis d2
}
@end lilypond

@item
Les crochets d'octaviation (par ex. « 8 » ou « 15 ») s'indiquent
désormais par un simple chiffre et sont imprimés en gras. La nouvelle
propriété @code{ottavationMarkups} permet d'influer sur ce comportement
par défaut, à l'aide d'une liste déterminée de @emph{markups} :
@lilypond[verbatim,quote]
\relative c'' {
  \ottava #1
  a'2 b
  \ottava #2
  a'2 b
  \bar "||"
  \set Staff.ottavationMarkups = #ottavation-ordinals
  \ottava #1
  a,2 b
  \ottava #2
  a'2 b
  \bar "||"
  \set Staff.ottavationMarkups = #ottavation-simple-ordinals
  \ottava #1
  a,2 b
  \ottava #2
  a'2 b
}
@end lilypond

@end itemize


@subsubheading Améliorations en matière de rythme
@c VO Rhythm improvements
@itemize

@item
Les n-olets peuvent désormais s'indiquer à l'aide d'une liaison en
lieu et place d'un crochet :
@lilypond[quote, verbatim]
\relative {
  \tuplet 3/2 4 {
    \override TupletBracket.tuplet-slur = ##t
    c'4 e8 d4 f8
    \override TupletBracket.bracket-visibility = ##t
    e f g f e d
  } c1
}
@end lilypond

@item
Les ligatures à la française (@code{\override Stem.french-beaming =
##t}) se comportent à l'identique des ligatures standard (par défaut)
dans toutes leurs composantes (position de la ligature et placement des
articulations, doigtés, etc.) à ceci près que les hampes intermédiaires
ne traversent pas le trait de ligature.
@lilypond[quote]
testmusic = \relative {
  \omit Staff.Clef
  \omit Staff.TimeSignature
  \cadenzaOn
  c''8[ a16 a_^ e']
  f32[_5 c_3 a64_> g]_>]
  a,32[ b^( c a16]
  e'32[ g) a16 r] |
  \override Beam.auto-knee-gap = #1
  a,64[ 64 f''64 64]
  \tuplet 3/2 { c32[ 32 32] }
  \override Beam.grow-direction = #RIGHT
  \featherDurations #(ly:make-moment 2/3)
  { d,32[^1 e^2 f^3 g^4 a^5] } s64
}
\score {
  <<
    \new Staff \with { \override Stem.french-beaming = ##t }
         { <>^"French" \testmusic }
    \new Staff
         { <>^"Standard" \testmusic }
  >>
  \layout { indent = 0 }
}
@end lilypond

@item
Le swing et les motifs rythmiques irréguliers peuvent désormais
s'appliquer à des expressions musicales composées de durées régulières
qui peuvent s'utiliser pour rendre une interprétation inégale en MIDI.
@lilypond[verbatim,quote]
\include "swing.ly"
<<
  \new Staff \with {
    instrumentName = "ordinaire"
  } \repeat unfold 8 c'8
  \new Staff \with {
    instrumentName = "avec swing"
  } \repeat unfold 4 \tripletFeel 8 { c'8 c' }
  \new Staff \with {
    instrumentName = "triolets"
  } \tuplet 3/2 4 \repeat unfold 12 c'8
>>
@end lilypond

@item
Plusieurs glyphes, correspondant aux
@ifnothtml
256@sup{e}, 512@sup{e} et 1024@sup{e}
@end ifnothtml
@ifhtml
@html
256<sup>e</sup>, 512<sup>e</sup> et 1024<sup>e</sup>
@end html
@end ifhtml
 de soupir, ainsi que les crochets respectifs, ont été ajoutés.
@lilypond[quote]
{
  \omit Staff.TimeSignature
  \cadenzaOn
  b4 8 16 32 64 128 256 512 1024 \bar "|"
  b''4 8 16 32 64 128 256 512 1024 \bar "|"
  r4 r8 r16 r32 r64 r128 r256 r512 r1024 \bar "|"
}
@end lilypond

@item
Le nouveau @code{Merge_mmrest_numbers_engraver} permet d'éviter la
duplication du nombre surplombant les silences multimesures.
@lilypond[quote]
\compressMMRests
<< R1*7 \\ R1*7 >>
@end lilypond

@end itemize


@subsubheading Améliorations en matière d'expressivité
@c VO Expressive mark improvements
@itemize

@item
Ajout de la commande de nuance @code{\n} pour @emph{niente}.
@lilypond[quote]
{
  d'1~\mp\> 2 r\n
}
@end lilypond

@item
Ajout de deux nouveaux ornements.
@lilypond[verbatim,quote]
{
  c''2\slashturn c''\haydnturn
}
@end lilypond

@item
Ajout d'un point d'arrêt ultracourt et de variantes à la Henze pour les
points d'orgue plus ou moins longs.
@lilypond[verbatim,quote]
{
  c'1\veryshortfermata
  c'2\henzeshortfermata c'\henzelongfermata
}
@end lilypond

@item
Point d'orgue et autres articulations peuvent désormais s'ajouter
directement à un silence multimesure. Par conséquent, l'utilisation de
la commande @code{\fermataMarkup} est désapprouvée.
@lilypond[verbatim,quote]
{
  R1\fermata
  R->
  R\coda
}
@end lilypond

@end itemize


@subsubheading Améliorations en matière d'annotations éditoriales
@c VO Editorial annotation improvements
@itemize

@item
Le @code{New_fingering_engraver} prend désormais en charge la propriété
@code{X-align-on-main-noteheads} de la @code{self-alignment-interface}.
Dès lors qu'elle est activée (@code{##t}), tous les doigtés positionnés
@code{up} ou @code{down} seront rangés sur une unique colonne alignée
sur les têtes de note, du côté adéquat de la hampe :
@lilypond[verbatim,quote]
{
  \set fingeringOrientations = #'(up)
  <e'-1 d''-4 e''-5>4 <a'-1 b'-2 fis''-5>
  \set fingeringOrientations = #'(down)
  <e'-1 d''-4 e''-5> <eis'-1 e''-4 fis''-5>
  \bar "."
  \override Fingering.X-align-on-main-noteheads = ##t
  \set fingeringOrientations = #'(up)
  <e'-1 d''-4 e''-5> <a'-1 b'-2 fis''-5>
  \set fingeringOrientations = #'(down)
  <e'-1 d''-4 e''-5> <eis'-1 e''-4 fis''-5>
}
@end lilypond

@end itemize


@subsubheading Améliorations en matière de mise en forme du texte
@c VO Text formatting improvements
@itemize

@item
Les fontes par défaut sont désormais celles du jeu URW Core 35 dans sa
version 2.0, en lieu et place des fontes TeX Gyre. Ces fontes disposent
d'une ligature pour @code{Nr.} -- voir
@ruser{Tout savoir sur les fontes} pour s'en affranchir temporairement
ou de façon globale.

@item
La commande de @emph{markup} @code{\note} prend désormais une durée en
tant que premier argument, au lieu d'une chaîne :
@lilypond[verbatim,quote]
\markup {
  \override #'(style . cross) {
    \note {4..} #UP
  }
  \hspace #2
  \note {\breve} #0
}
@end lilypond

@end itemize


@subheading Nouveautés en matière de notation spécialisée
@c VO New for specialist notation


@subsubheading Améliorations pour la musique vocale
@c VO Vocal music improvements
@itemize

@item
Un trait d'union peut désormais être redoublé après un saut de ligne,
avant la première syllabe du nouveau système :
@lilypond[verbatim,quote]
\relative {
  d'8^( e f e f4) \bar "" \break
  e4
}
\addlyrics {
  \override LyricHyphen.after-line-breaking = ##t
  A -- men.
}
@end lilypond

@item
Un changement graduel de voyelle (ou une consonne maintenue) peut
s'indiquer en ajoutant un signe de transition entre les syllabes à
l'aide de la commande @code{\vowelTransition}.
@lilypond[verbatim,quote]
{ g'2 g' }
\addlyrics { Ah \vowelTransition oh. }
@end lilypond

@end itemize


@subsubheading Améliorations pour les cordes frettées ou non
@c VO Unfretted and fretted string instrument improvements
@itemize

@item
Les diagrammes de fret peuvent désormais s'imprimer en version
« gaucher » dès lors que @code{handedness} (sous-propriété de
@code{fret-diagram-details}) aura été définie à @code{LEFT}.
@lilypond[verbatim,quote]
\markup
  \center-column {
    "C"
    "(gaucher)"
     \override #`(fret-diagram-details . ((handedness . ,LEFT)))
     \fret-diagram "6-x;5-3-3;4-2-2;3-o;2-1;1-o;"
  }
@end lilypond

@item
Quelques diagrammes de fret pour ukulele ont été corrigés, et d'autres
ont été ajoutés.

@end itemize


@subsubheading Améliorations pour la notation des accords
@c VO Chord notation improvements
@itemize

@item
Les accords peuvent être désormais automatiquement renversés, ou avoir
l'une de leurs composantes sautée.
@lilypond[verbatim,quote]
\chordmode {
  \dropNote 2 {
    c2:maj7 d:m7
  }
  \invertChords 1 d1:maj7
}
@end lilypond

@item
Les fonctions historiques de nommage d'accord @code{banter-chord-names}
et @code{jazz-chord-names} ont été supprimées de la base de code, tout
comme les propriétés @code{chordNamesExceptionsFull} et
@code{chordNamesExceptionsPartial}. Dans le cadre d'une réécriture, le
@emph{power chord} est désormais inclus dans les exceptions par défaut
et sera imprimé correctement (annotation en exposant comme tous les
accords) sans avoir besoin de bricolage -- la commande prédéfinie
@code{\powerChords} devient donc inutile. Les adeptes des fonctions
historiques peuvent en trouver une copie (plus ou moins fonctionnelle)
dans le morceau choisi @file{chord-names-alternative.ly}.

@end itemize


@subsubheading Améliorations pour la notation contemporaine
@c VO Contemporary music improvements
@itemize

@item
Un nouvel objet graphique, appelé @code{DurationLine}, est désormais
disponible. Il prolonge un objet rythmique par une ligne jusqu'à l'objet
rythmique suivant. Cette ligne peut adopter différents styles :
@code{'beam}, @code{'line}, @code{'dashed-line}, @code{'dotted-line},
@code{'zigzag}, @code{'trill} ou @code{'none}. La ligne peut se terminer
par un crochet (uniquement pour le style @code{'beam}) ou une flêche.
@lilypond[quote]
\layout {
  \context {
    \Voice
    \consists "Duration_line_engraver"
    \omit Stem
    \omit Flag
    \omit Beam
    \override NoteHead.duration-log = 2
  }
}
{
  a'1\- s2 r
  \once \override DurationLine.style = #'line
  a'1\- s2 r
  \once \override DurationLine.style = #'dashed-line
  \once \override DurationLine.dash-period = 2
  a'1\- s2 r
  \once \override DurationLine.style = #'dotted-line
  \once \override DurationLine.dash-period = 1
  \once \override DurationLine.bound-details.right.padding = 1
  a'1\- s2 r
  \once \override DurationLine.thickness = 2
  \once \override DurationLine.style = #'zigzag
  a'1\- s2 r
  \once \override DurationLine.style = #'trill
  a'1\- s2 r
  \once \override DurationLine.style = #'none
  a'1\- s2 r
  \once \override DurationLine.bound-details.right.end-style = #'arrow
  a'1\- s2 r
  \override DurationLine.bound-details.right.end-style = #'hook
  a'1\- s2 r
  \override DurationLine.details.hook-direction = #DOWN
  a'1\- s2 r
  \bar "|."
}
@end lilypond

@end itemize


@subheading Nouveautés en matière d'entrée et sortie
@c VO New for input and output

@subsubheading Améliorations pour les fichiers sources
@c VO Input file improvements
@itemize

@item
Comme il avait été annoncé lors de la diffusion de la version 2.17.3,
l'option @code{'relative-includes} est désormais activée par défaut.
Lorsqu'un fichier faisant l'objet d'une inclusion comporte lui-même une
instruction @code{\include}, le chemin alors recherché sera relatif à ce
fichier, non par rapport au répertoire du fichier principal. Il est
possible de contrevenir à ce comportement en affectant @code{#f} à la
directive @code{'relative-includes}, que ce soit en ligne de commande ou
par l'utilisation d'un @code{ly:set-option} dans le fichier source.

@item
@code{\compressFullBarRests} a été renommé en
@code{\compressEmptyMeasures} afin d'éviter toute confusion avec
@code{\compressMMRests}. Dans le même esprit, @code{\expandFullBarRests}
devient @code{\expandEmptyMeasures}.

@item
La commande @code{\partcombine}, ainsi que les commandes, sous-routines
et noms de propriété préfixées de @code{partCombine}, s'écrivent
désormais avec un C majuscule, comme @code{\partCombine},
@code{\partCombineApart}, etc. La commande @code{\autochange} suit le
même principe et se libelle désormais @code{\autoChange}.

@item
Toutes les langues de saisie (instruction @code{\language}) peuvent se
mentionner avec leur propre orthographe UTF-8 -- autrement dit y compris
avec des caractères spéciaux. Les dénominations @code{català} et
@code{português} s'ajoutent désormais aux appellations originelles
@code{catalan} et @code{portugues}.

@item
LilyPond pour Windows (MinGW) gère les noms de fichier Unicode à compter
de Windows 10-1903.

@end itemize


@subsubheading Améliorations pour les fichiers résultants
@c VO Output improvements
@itemize

@item
Les lignes d'horizon (@emph{skylines}) prennent désormais en compte la
propriété @code{rotation} des objets de rendu. Faire pivoter un soufflet
de crescendo en lui appliquant par exemple @code{\override
Hairpin.rotation = #'(15 0 0)} aura une influence sur les lignes
d'horizon et donc aidera à améliorer l'espacement.
@lilypond[quote]
#(ly:set-option 'debug-skylines #t)
\new PianoStaff <<
  \new Staff \relative {
    \override TextScript.rotation = #'(30 0 0)
    g4\<^\markup \ellipse "rot. ellipse" e' d'^\markup \box "rotated box" f\!
    \override Hairpin.rotation = #'(15 -1 0)
    g,,4\<^\markup \rounded-box "rounded box" e' d'^"no box" f\!
  }
  \new Staff \relative {
    \override Staff.Clef.rotation = #'(180 0 -0.036)
    <cis' ais'>4 c' g c
    \override Accidental.rotation = #'(30 0 0)
    <cis, ais'>2 e'4 e'
  }
>>
@end lilypond

@item
Un léger décalage a été ajouté au glyphe de bécarre dont les extrémités
se touchaient à l'occasion d'un changement d'armure.
@lilypond[quote]
{
  \omit Staff.TimeSignature
  \key ces \major s1 \key c \major s
}
@end lilypond

@item
Les lignes d'horizon des boîtes reflètent désormais l'emprise réelle de
la boîte, y compris les bords arrondis et la rotation.
@lilypond[verbatim,quote]
#(ly:set-option 'debug-skylines #t)
{
  b'1^\markup \scale #'(2 . 1)
              \rotate #30
              \override #'(corner-radius . 3)
              \rounded-box \center-column { box skyline }
}
@end lilypond

@item
Les couleurs style CSS peuvent désormais s'utiliser directement sous
forme de chaîne textuelle, soit par leur nom de couleur prédifini comme
avec la fonction existante @code{css-color}, soit par leur code
hexadécimal préfixé d'un @code{#}. Tous les stencils disposant de la
propriété @code{color} acceptent maintenant une liste ou une chaîne.
Dans le cas d'une chaîne, celle-ci sera directement utilisée pour une
sortie SVG, ce qui autorisera le recours à la transparence alpha (saisie
"#RRGGBBAA" ou "#RGBA").
@lilypond[verbatim,quote,fragment]
\override NoteHead.color = "lightsalmon"
\override Flag.color = "#E30074"
\override Beam.color = "#5e45ad"
\override Rest.color = "#3058"
g'8 \huge r4 a'16 f'
@end lilypond

@item
Les marque-pages sont désormais pris en charge, ce qui permet aux
entrées @code{\tocItem} d'apparaître dans le panneau latéral des
visionneuses de PDF qui disposent de cette fonctionnalité.

@item
@code{\table-of-contents} accepte désormais une structure hiérarchique.
Les entrées @code{\tocItem} acceptent en option un symbole, comme
@code{\label}, ou une liste de symboles séparés par un point, afin
d'indiquer leur position dans la partition. Cette fonctionnalité a pour
effet qu'il n'est plus possible de donner une simple chaîne en argument
à @code{\tocItem} ; il faut utiliser une commande @code{\markup}.
@example
\tocItem \markup "Entrée de tête"
\tocItem symbol "Nom de l'entrée de tête"
\tocItem symbol.list "Entrée de niveau inférieur (enfant)"
@end example

@item
Grâce aux nouvelles options @option{-dpng-width} et
@option{-dpng-height}, il est désormais possible de spécifier la taille,
en pixels, des images PNG générées.

@item
La sortie SVG est désormais disponible avec l'option en ligne de
commande @option{--svg} -- ou l'option canonique @option{--format=svg}
abrégée en @option{-fsvg}. En raison des spécificités du moteur de
rendu, cette option est à ce jour incompatible avec les autres formats
de sortie ; pour obtenir, en plus du SVG, un fichier PDF, PNG ou EPS,
sera requis un traitement supplémentaire par LilyPond.

@end itemize


@ifhtml
Pour des annonces plus anciennes, rendez-vouz aux pages
@uref{https://lilypond.org/doc/v2.20/Documentation/changes/},
@uref{https://lilypond.org/doc/v2.18/Documentation/changes/},
ou @uref{../,remontez} à l'index de la documentation.

@end ifhtml

@bye
