# Partitions avec Lilypond pour wiki
## Introduction

LilyPond est un logiciel libre de notation musicale, qui a la particularité d’utiliser une notation littérale pour indiquer les notes, signes d'articulation, dynamiques, etc.
C'est pourquoi il a été choisi pour être intégré dans le système wiki de WikiMedia pour permettre aux contributeurs de rédiger des "petits bouts" de partition musicale, destinés par exemple à l'illustration d'un article sur la musique. L'extension Lilypond, avec sa balise <score>, a été implémentée le 22 avril 2013.
On pourra trouver plus de détails sur cette implémentation dans le document Extension:Score sur MediaWiki (en anglais).
Le but de cette leçon est de faciliter l'apprentissage du code Lilypond, et de permettre à tout un chacun de pouvoir éditer des exemples musicaux simples au départ, ou plus évolués, avec des paroles, des annotations diverses au dessus des portées, etc.

## Syntaxe de base
### Code minimal

donne :
Nous pouvons voir que Lilypond ajoute par défaut une clef de sol, une mesure à 4/4, et place les barres de mesure de façon automatique aux endroits adéquats.
Cependant il nous paraît plus rigoureux d'indiquer ces éléments de façon explicite, tout en ajoutant des retours à la ligne pour plus de lisibilité. Nous aurons alors le code suivant :
qui donnera la partition suivante :

### Code de base

Pour nos exemples musicaux, nous utilisons le code :
ou plutôt, de façon moins concise mais plus claire :
qui permet d'obtenir le résultat suivant :

## Fonctions simples
### Anacrouse

Source
http://www.lilypond.org/doc/v2.19/Documentation/notation/displaying-rhythms#upbeats
Syntaxe
Code source
Résultat

### Barres de mesures

Source
http://www.lilypond.org/doc/v2.19/Documentation/notation/bars
Syntaxe
| Code source | Résultat |
| <score vorbis="1"> { \clef bass c1 \bar "|" d \bar "." e \bar "||" f \bar ".|" g \bar ".." a \bar "|.|" b \bar "|." \clef treble c' \bar ";" d' \bar "!" e' \bar ".|:" f' \bar ":..:" g' \bar ":|.|:" a' \bar ":|.:" b' \bar ":.|.:" c'' \bar "[|:" d'' \bar ":|][|:" e'' \bar ":|]" f'' \bar ":|." \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |

### Doigtés

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/inside-the-staff#fingering-instructions
Syntaxe
| Code source | Résultat |
| <score vorbis="1"> { \clef bass c4-5 a-3 f-1 c'-5 r1 \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |

### Glyphes / Signes "spéciaux"

Source
http://www.lilypond.org/doc/v2.19/Documentation/notation/bars#index-musicglyph-1
http://www.lilypond.org/doc/v2.19/Documentation/notation/the-feta-font
http://www.lilypond.org/doc/v2.19/Documentation/notation/bars#bar-and-bar-number-checks
Syntaxe
Code
Résultat

### Hampes & ligatures

Source
http://www.lilypond.org/doc/v2.18/Documentation/learning/on-the-un_002dnestedness-of-brackets-and-ties
http://lilypond.org/doc/v2.18/Documentation/notation/beams
Syntaxe
* Type de crochet Fonction
* { … } Délimite un segment de musique séquentielle
* < … > Délimite les notes d’un accord
* << … >> Délimite des sections simultanées
* ( … ) Marque le début et la fin d’une liaison
* \( … \) Marque le début et la fin d’une liaison de phrasé
* [ … ] Marque le début et la fin d’une ligature manuelle
D’autres constructions permettent d’obtenir des lignes regroupant ou en travers des notes : les liaisons de prolongation indiquées par un tilde (~), les marques de nolet avec \times x/y { … }, ou encore les notes d’ornement avec \grace{ … }.
| Code source | Résultat |
| <score vorbis="1"> { \clef bass g8\( a b[ c' b\) a] g4 a8[ ais] d[ ees r d] c16 b a8 \autoBeamOff a8 c b4 d8. c16 b4 | \autoBeamOn a8 c b4 d8. c16 b4 | \time 4/4 r4 r8[ g' a r] r8 g[ | a] r \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |
| Code source | Résultat |
| <score vorbis="1"> { \clef bass \stemUp g8\(^"Hampes vers le haut" a b[ c' b\) a] g4 \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |
| <score vorbis="1"> { \clef bass \stemDown g8\(^"Hampes vers le bas" a b[ c' b\) a] g4 \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |

### Improvisation

Source
http://lilypond.org/doc/v2.18/Documentation/notation/note-heads#index-improvisationOn-1
Syntaxe
Code
Résultat

### Indication métronomique

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/displaying-rhythms#metronome-marks
Syntaxe
Code
Résultat

### Instruments MIDI

Source
http://lilypond.org/doc/v2.18/Documentation/notation/midi-instruments
Syntaxe
Code
Résultat

### Liaisons

Source
http://lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-as-curves
Syntaxe
Code
Résultat

### Ligne rythmique

Source
http://lilypond.org/doc/v2.18/Documentation/notation/displaying-rhythms#showing-melody-rhythms
Syntaxe
Code
Résultat

### Métrique

pour enlever le signe de mesure
Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/modifying-context-plug_002dins.fr.html
Syntaxe
Code
Résultat

### Musique non mesurée

Source
http://lilypond.org/doc/v2.18/Documentation/notation/displaying-rhythms#unmetered-music
Syntaxe
Code
Résultat

### Paroles

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-vocal-music#automatic-syllable-durations
Code
Résultat
Autre exemple

### Percussion (clef)

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-percussion#basic-percussion-notation
Code
Résultat

### Percussion (écriture)

Source
http://lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-percussion http://lilypond.org/doc/v2.18/Documentation/notation/percussion-notes
Syntaxe
Code
Résultat

### Portées multiples

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-keyboards
Il y a deux façons de faire :
Code 1
Résultat 1
Code 2
Résultat 2

### Répétitions de mesure

Source
http://lilypond.org/doc/v2.19/Documentation/notation/short-repeats#short-repeats
Syntaxe
Code
Résultat

### Répétitions de motifs

Source
http://lilypond.org/doc/v2.18/Documentation/notation/long-repeats#written_002dout-repeats
Syntaxe
Code
Résultat

### Répétitions de sections

Source
http://lilypond.org/doc/v2.18/Documentation/notation/long-repeats#normal-repeats
Syntaxe
Code
Résultat

### Silences

Source
http://www.lilypond.org/doc/v2.22/Documentation/notation/writing-rests
Syntaxe
Résultat

### Tablature

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-fretted-strings#index-TabStaff-4
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-fretted-strings#default-tablatures
Syntaxe
Code
Résultat
Autre exemple
Tablature pour la basse

### Tempo (indications)

Source
http://www.lilypond.org/doc/v2.18/Documentation/learning/simple-notation#tempo-marks
Syntaxe
Code
Résultat

### Triolet

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/writing-rhythms#tuplets
Syntaxe
Code
Résultat

## Fonctions avancées
### Accord : mode

Source
http://lilypond.org/doc/v2.18/Documentation/notation/chord-mode
Syntaxe
Code
Résultat

### Accords : notation

Source
http://www.lilypond.org/doc/v2.18/Documentation/learning/combining-notes-into-chords
http://www.lilypond.org/doc/v2.18/Documentation/notation/common-chord-modifiers
Code source
Résultat

### Attribut pour 'score'

Source
https://www.mediawiki.org/wiki/Extension:Score
Syntaxe
Explications
Paramètre : raw
Valeur : 0 (default), 1
Si on indique raw="1", le code de la partition est interprété pour produire une partition complète. Utilisez cette option si vous voulez créer des partitions plus complexes.
Si le paramètre langage (lang) n’est pas "lilypond", cet attribut est ignoré. Donc il faut bien écrire :

### Basse chiffrée

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/figured-bass#entering-figured-bass
| Code source | Résultat |
| <score vorbis="1"> { \clef bass << c2. \figures { <7! 6+ 4->4 <5++> <3--> } >> << \new Voice { \clef bass dis4 c d ais g fis} \new FiguredBass { \figuremode { < 6 >4 < 7\+ >8 < 6+ [_!] > < 6 >4 <6 5 [3+] > < _ >4 < 6 5/>4 } } >> r4 r2 << { \clef bass e4 d c b, e4 d c b, } \figures { \bassFigureExtendersOn <6 4>4 <6 3> <7 3> <7 3> \bassFigureExtendersOff <6 4>4 <6 3> <7 3> <7 3> } >> \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |

### Découpage automatique des notes

Source
http://www.lilypond.org/doc/v2.19/Documentation/notation/displaying-rhythms#automatic-note-splitting
Syntaxe
Code
Résultat

### Imitation par mouvement contraire

Source
http://lilypond.org/doc/v2.18/Documentation/notation/changing-multiple-pitches#inversion
Syntaxe
Code
Résultat

### Imitation par mouvement contraire (inversion modale)

Source
http://lilypond.org/doc/v2.18/Documentation/notation/changing-multiple-pitches#index-modalInversion-1
Syntaxe
Code
Résultat

### Imitation par mouvement rétrograde

Source
http://lilypond.org/doc/v2.18/Documentation/notation/changing-multiple-pitches#retrograde
Syntaxe
Code
Résultat

### Instanciation explicite des voix

Source
http://www.lilypond.org/doc/v2.18/Documentation/learning/explicitly-instantiating-voices#index-shift_002c-commandes
Syntaxe
Les contextes Voice peuvent être déclarés manuellement dans un bloc << >> pour créer de la musique polyphonique, en utilisant \voiceOne… jusqu’à \voiceFour pour assigner des directions de hampes et un déplacement horizontal pour chaque partie. Cette méthode apporte de la clarté pour des partitions plus importantes puisqu’elle permet de bien séparer les voix et de leur affecter un nom plus parlant.
En particulier, la construction << \\ >> que nous avons vue précédemment :
Code
Résultat

### Texte
#### Texte de base

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/writing-text
Code
Résultat

#### Alignement

Source
http://lilypond.org/doc/v2.18/Documentation/notation/formatting-text#text-alignment
Syntaxe
Code
Résultat

#### Chiffres

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/writing-text
Code
Résultat

#### Justification

Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/align
Syntaxe
Code
Résultat

#### Mise en forme

Source
http://lilypond.org/doc/v2.18/Documentation/notation/writing-text
Voir aussi
http://lilypond.org/doc/v2.18/Documentation/notation/formatting-text#page-wrapping-text
Syntaxe
Code
Résultat sans
Résultat avec

### Transposition

Source
http://lilypond.org/doc/v2.19/Documentation/source/Documentation/notation/changing-multiple-pitches.fr.html#transpose
Syntaxe
| Code source | Résultat |
| <score vorbis="1"> { \clef treble \transpose c c' { c8 d e f g a b c' } \transpose c d' { c8 d e f g a b c' } \transpose c g' { c8 d e f g a b c' } \transpose c c' { c8 d e f g a b c' } \bar "|." } </score> | La lecture audio n'est pas prise en charge dans votre navigateur. Vous pouvez télécharger le fichier audio. |
Autre exemple

### Transposition sur un mode

Source
http://lilypond.org/doc/v2.19/Documentation/source/Documentation/notation/changing-multiple-pitches#modal-transformations
Syntaxe

#### Sur une gamme "classique"

Code
Résultat

#### Sur une gamme pentatonique

Code
Résultat

## Fonctions non implémentées
### Succession de durées individuelles

Lorsque une note ou un accord est suivi d’une succession de durées individuelles, celles-ci adopteront la ou les dernières hauteurs mentionnées.
Code
Résultat

### Têtes de notes en forme de croix

Code
Résultat

### Variables

NB. Les variables ne fonctionnent qu'avec l'option 'partition complète', c'est-à-dire avec la syntaxe <score raw="1" lang="lilypond">.
Source
http://www.lilypond.org/doc/v2.18/Documentation/notation/techniques-specific-to-lyrics#working-with-lyrics-and-variables
Code
Résultat

## Notes & références

* ↑ Article Lilypond sur Wikipédia.
* ↑ Article "Music markup" sur Wikimédia (en français).
* ↑ Article "Music markup" sur Wikimédia (en anglais).

## Ressources

* Documentation officielle de Lilypond
* Introduction à LilyPond sur Wikilivres
* Images et partitions sur WikiMedia Commons