LilyPond

{{#ifeq:||Un article de Ziki, l'encyclopédie libre.|Une page de Ziki, l'encyclopédie libre.}}

Modèle:Voir homonyme Modèle:Langue du titre Modèle:Admissibilité à vérifier

Modèle:Infobox V3/Début Modèle:Infobox V3/Image Wikidata Modèle:Infobox V3/Séparateur Modèle:Infobox V3/Image Wikidata

Modèle:Infobox V3/Tableau début

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

{{#ifeq:Modèle:Wikidata|Modèle:Wikidata | | Modèle:Infobox V3/Tableau Ligne mixte Wikidata }}

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte {{#invoke:Infobox/Fonctions/Logiciel|catByProgrammingLanguage}}

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau Ligne mixte Wikidata

Modèle:Infobox V3/Tableau fin

Modèle:Infobox V3/Titre Bloc Modèle:Infobox V3/Navigateur

Modèle:Infobox V3/Fin avec WikidataModèle:Rien{{#ifeq:|| {{#if:


| }}{{#if: Introduction de la sonate pour piano no 16 de Beethoven. Cette partition a été créée avec Modèle:Langue.

   | {{#if: Piano-sonata-16-Beethoven-introduction.svg
       |
       |
     }}

}} }}

Modèle:Langue est un logiciel libre de notation musicale créé en 1996 par Han-Wen Nienhuys et Jan Nieuwenhuizen alors qu'ils étaient encore lycéens à Eindhoven (Pays-Bas)<ref>Modèle:Lien web.</ref>. Développé par une communauté internationale dans le cadre du projet GNU, ce logiciel offre un langage de description de la musique, qu'il compile ensuite sous forme de partition écrite. Selon ses auteurs<ref>Modèle:Lien web.</ref>, cette approche classique<ref group="note" name="n1">Cette approche correspond aux premiers programmes informatique de traitement de texte \TeX. MusixTeX ou Amadeus (notation musicale) avait déjà repris cette formule, avec un succès mitigé.</ref> permet ainsi de libérer les musiciens de toute préoccupation typographique pour offrir un rendu de haute qualité esthétique.

Justification

Son nom signifie « mare aux nénuphars » en langue anglaise ; c'est un jeu de mots<ref>Modèle:Lien web.</ref> faisant allusion à un autre logiciel libre d'édition musicale, Rosegarden.

Selon les développeurs de LilyPond, la qualité de l'édition musicale souffre au Modèle:S mini- siècleModèle:Vérification siècle d'une méconnaissance des principes et du savoir-faire des graveurs de musique des {{#switch: e

 | e | er | = 
   {{#switch: e
 | e | er | = 
   Modèle:S mini-{{#ifeq: et|-| – | et }}Modèle:S mini- siècles
 | 
   Modèle:S mini-{{#ifeq: e|-| – | e }}Modèle:S mini- siècleXX

}}

 | 
   {{#switch: et
 | e | er | = 
   Modèle:S mini-{{#ifeq: e|-| – | e }}Modèle:S mini- siècle
 | 
   Modèle:S mini-{{#ifeq: et|-| – | et }}Modèle:S mini- siècles

}}

}}, qu'ils considèrent comme à l'apogée de cet artModèle:Référence nécessaire. Le musicien, normalement ignorant des règles typographiques, ne peut que s'improviser graveur, le résultat sur un éditeur WYSIWYG dépend alors du jugement d'un non-typographe. Les partitions-modèles ont été analysées, une fonte (fetaModèle:Quoi) développée pour LilyPond ainsi que les algorithmes de placement des glyphes selon l'art des graveurs. LilyPond automatise donc le processus de « mise en scène » des glyphes et ne requiert du musicien-opérateur que de gérer la partie musicale du travail de notation, et occasionnellement de corriger certaines décisions graphiques du logiciel (essentiellement en cas de chevauchement).

Principe d'utilisation

Écriture d'un fichier texte

S'il utilise seulement LilyPond, le musicien décrit son intention musicale (il enregistre notes, signes d'articulation et dynamiquesModèle:Etc.) dans un fichier textuel. Par exemple, l'utilisateur peut écrit dans un éditeur de texte :

{ c d e f g } ou bien { do ré mi fa sol }

puis sauve le fichier en ajoutant l'extension « .ly ».

Phase de compilation

L'utilisateur donne ensuite à LilyPond l'ordre de compiler ce fichier texte. Pour cela, l'utilisateur lance ensuite la compilation du code avec la commande :

lilypond musique.ly

Dans certains environnements, il peut aussi glisser l'icône du fichier .ly sur celle de LilyPond, pour obtenir le même résultat.

Le logiciel réalise alors la mettre en forme, et prend les décisions typographiques.

Résultat

Le résultat est, par défaut, une partition au format PDF, ainsi qu'un fichier sonore au format MIDI. LilyPond lit alors le fichier musique.ly et crée le document musique.pdf dont l'illustration est ci-dessous.

<score>{ c d e f g }</score>

Un certain nombre de séquenceurs génèrent des fichiers LilyPond, permettant d'écrire tout d'abord la musique sur une portée, tablatureModèle:Etc.

Description du langage

Concepts de base

Les notes sont définies par les lettres de a à g (notation néerlandaise) qui correspondent aux notes de la à sol<ref name="nomdesnotes">Modèle:Lien web.</ref>. Une commande spéciale permet aussi de déclarer les notes dans d'autres langues, notamment en notation française<ref name="nomdesnotes" />.

Il suffit de déclarer la succession de notes et LilyPond réalise automatiquement un certain nombre de tâches :

Chaque note peut être suivie de :

  • une apostrophe « ' » pour monter d'une octave ou une virgule « , » pour descendre d'une octave :
Code
(notation anglo-saxonne<ref name="nomdesnotes" />)
Code
(notation latine<ref name="nomdesnotes" />)
Résultat
c do <score> c </score>
c' do' <score> c' </score>
c'' do'' <score> c </score>
  • is (dièse) ou es (bémol) pour ajouter une altération, respectivement d ou b avec la notation française :
Code
(notation anglo-saxonne<ref name="nomdesnotes" />)
Code
(notation latine<ref name="nomdesnotes" />)
Résultat
d' re' <score> d' </score>
dis' red' <score> dis' </score>
des' reb' <score> des' </score>
  • un nombre pour indiquer sa durée et éventuellement un point pour ajouter une demi durée. Si la note suivante a la même durée, il n'y a pas besoin de préciser à nouveau sa durée. Les silences sont définis de la même façon avec la lettre r.
Code
(notation anglo-saxonne<ref name="nomdesnotes" />)
Code
(notation latine<ref name="nomdesnotes" />)
Résultat
{ e'1 e'1. r2 } { mi'1 mi'1. r2 } <score>{ e'1 e'1. r2 }</score>
{ e'2 e'2. r4 } { mi'2 mi'2. r4 } <score>{ e'2 e'2. r4 }</score>
{ e'4 e'4. r8 } { mi'4 mi'4. r8 } <score>{ e'4 e'4. r8 }</score>
{ e'8 e'8. r16 } { mi'8 mi'8. r16 } <score>{ e'8 e'8. r16 }</score>
{ e'16 e'16. r32 } { mi'16 mi'16. r32 } <score>{ e'16 e'16. r32 }</score>

Exemple qui résume ces différents points et met en évidence les automatismes de LilyPond :

Code
(notation anglo-saxonne<ref name="nomdesnotes" />)
Code
(notation latine<ref name="nomdesnotes" />)
Résultat
{ bes'8 bes' a' g'16 f' f' d'8. c'4 f'2 r2 } { sib'8 sib' la' sol'16 fa' fa' re'8. do'4 fa'2 r2 } <score>{ bes'8 bes' a' g'16 f' f' d'8. c'4 f'2 r2 }</score>

Fonctions diverses

Un certain nombre de modules (ordres) permettent de structurer le fichier .ly, dont voici quelques exemples :

  • fonction relative : chaque nouvelle note est lue par rapport à la précédente et positionnée au plus près de la précédente (dans l'exemple précédent, on obtiendrait un tétracorde ascendant) et évite ainsi les numéros d'octave ;
  • définition de motifs : entouré de motif = { a b c d } (ou tout autre nom), le premier exemple peut être utilisé autant de fois que souhaité. Par exemple :
\relative c' { d e f g \motif e, f g \motif e f, g \motif e f }

(les virgules ordonnent de mettre cette note une octave plus bas que ne le ferait sinon le programme dans le contexte \relative) et donnerait trois gammes suivies ;

  • les transpositions peuvent être intégrées à souhait, par exemple :
\relative c' { \transpose a d' { \motif } \motif }

qui donne : <score lang="lilypond">\relative c' { \transpose a d' { a b c d } a b c d }</score>

  • les fonctions de commentaires permettent d'écrire des remarques (numéros de mesure, aide-mémoireModèle:, etc.) invisibles pour le programme, par exemple :

% Ceci est un commentaire
\relative c' { c8 d e f g a b c }
qui donne : <score lang="lilypond">\relative c' { c8 d e f g a b c }</score>

  • LilyPond ne considère pas non plus les retours de chariot, tabulateurs et certains signes réservés, ce qui permet de structurer le fichier de manière visuelle.

Avantages

Les avantages de ce logiciel sont :

  • la capacité de réaliser des partitions d'aspect professionnel sans intervenir dans la mise en forme ;
  • la diversité des genres de partitions possibles (chant grégorien, conducteur d'orchestre, musique contemporaineModèle:Etc.) ;
  • le faible espace occupé par le texte permettant d'engendrer les sorties ;
  • la facilité pour communiquer les données qui peuvent être traitées par un éditeur de texte ;
  • la disponibilité (MS Windows, Mac OS, GNU/Linux, FreeBSD et code) ;
  • la capacité à concevoir et organiser la musique à un haut niveau d'abstraction, en définissant des thèmes ou motifs plutôt que de ne la voir que comme une succession de notes.
  • la possibilité de réaliser des partitions hiérarchisées, comprenant les pages de titre, la table des matières, la liste d'orchestration, des pages de commentaires, l'insertion de texte dans les partitionsModèle:Etc.

Les auteurs du logiciel ont beaucoup travaillé sur l'aspect graphique des notes et des signes musicaux en se basant sur des éditions du Modèle:S mini- siècleModèle:Vérification siècle. Ils parlent de LilyPond comme logiciel de gravure de musique, en références aux techniques anciennes d'édition.

Inconvénients

Les inconvénients possibles pour l'utilisateur novice sont :

Inconvénients possibles pour l'utilisateur débutant ou avancé
inconvénient solution
une phase d'apprentissage qui peut être assez longue, par la logique différente de celle des éditeurs WYSIWYG un apprentissage rudimentaire permet de dessiner 90 % des partitions courantes. Ce problème est résolu grâce à l'utilisation d'une interface graphique qui utilise LilyPond, tels Frescobaldi ou Denemo, RosegardenModèle:Etc.
dans certaines partitions denses, l'automatisation de la mise en page réclame une mise au point, essentiellement pour éviter des collisions lire la documentation
la syntaxe devient assez compliquée pour l'utilisation des fonctions avancées les cas plus complexes sont appris au fur et à mesure des nécessités. Un logiciel non-libre Modèle:Lang enferme dans les seules possibilités des menus.
la relative pauvreté du mécanisme générant des fichiers MIDI à des fins d'écoute compensée par un séquenceur (ceci n’a rien de spécifique à LilyPond)

En ce qui concerne ce dernier point, garder à l'esprit que la logique du développement du logiciel libre est généralement différente de celle du développement de logiciels commerciaux, c'est-à-dire que l'intention est de créer un produit qui ne sache faire qu'une seule chose, mais très bien. Le fichier MIDI est donc conçu comme un moyen de vérifier qu'il n'y a pas d'erreurs de transcription, et non comme un résultat à utiliser dans un autre but. En fait, pour ces tâches, il existe des logiciels spéciaux, également compatibles avec LilyPond, tels que Rosegarden.

Pour l'utilisateur aguerri, il est possible que la syntaxe permettant d'intervenir dans les décisions typographiques (Modèle:Lang) soit relativement complexe, contrepartie des fonctions très avancées. Les modes d'emploi de LilyPond offrent par ailleurs une riche bibliothèque de modules prêts à être copiés et adaptés.

Interaction avec logiciels de typographie

Le programme lilypond-book permet de construire des documents LaTeX élaborés, contenant des fragments de musique de longueur variable (une note ou tout un mouvement) mélangés dans du texte et tout autres symboles qu'offre par ailleurs LaTeX.

On peut aussi lancer LilyPond avec le paramètre --tex ce qui génère du code TeX qui peut ensuite être intégré dans un autre fichier.

Un Modèle:Lang OOoLiLyPond<ref>Modèle:Lien web.</ref> existe pour LibreOffice et OpenOffice, qui permet d'intégrer des fragments de partition dans le texte. Scribus inclut un Modèle:Lang équivalent, de même qu'un Modèle:Lang gregorio plus spécialisé pour le chant grégorien.

Choix d'un éditeur et génération d'un fichier

En principe, n'importe quel éditeur permet de générer et éditer un ficher ly. Mais dans la pratique, on recherche une aisance de manipulation de données (vérification syntaxique, macros ou fonction préprogrammées, permettant entre autres la création de la structure générale du « fichier .ly », l'introduction des titres, sous-titres, auteur, instrumentsModèle:Etc). Certains éditeurs viennent avec un module destiné au travail avec LilyPond comme emacs, Vim et surtout jEdit, très pratique pour les débutants, très performant pour les plus avancés, disponible sous GNU GPL et multi-plateforme.

Certains éditeurs de texte offrent la possibilité de colorer les commandes (coloration syntaxique), signaler les fautes (commandes non achevées par exemple).

jEdit possède ainsi un Modèle:Lang (greffon) extrêmement puissant qui permet de lancer la compilation du fichier LilyPond, permet la visualisation du fichier PDF, la modification (limitée) de ce fichier par Modèle:Lang, la recherche dans le fichier source de la ligne de code générant un glyphe donnéModèle:Etc. Ce Modèle:Lang n'est plus maintenu depuis Modèle:Date-.

capture d'écran.
L'interface de travail de Frescobaldi, qui utilise LilyPond. À droite la partition compilée ; à gauche l'onglet du script.

Un éditeur, Frescobaldi, est entièrement consacré à LilyPond. Il permet l'édition de texte avec saisie automatique des mots-clé, mais possède également une fenêtre de visualisation, avec correspondance du texte source vers la visualisation et réciproquement. À l'opposé, Frescobaldi représente une aide efficace et indispensable pour les grands projets (œuvres symphoniques, nécessitant l'utilisation de plusieurs dizaines de fichiers différents). La dernière version de Frescobaldi permet même une génération de la partition en temps réel, fonctionnelle pour les petits projets.

Notes et références

Notes

Modèle:Références

Références

Modèle:Références

Voir aussi

Modèle:Autres projets

Articles connexes

Liens externes

Modèle:Palette Modèle:Portail