htg-content/content/posts/petit-tuto-lilypond-1.md

236 lines
8.5 KiB
Markdown
Raw Normal View History

2020-04-30 23:07:15 +02:00
---
2020-12-02 16:36:09 +01:00
title: "Petit tuto Lilypond 1"
2020-05-11 16:47:51 +02:00
date: 2015-09-02
2020-04-30 23:07:15 +02:00
author: motius
template: post
2020-05-12 16:08:52 +02:00
tags: lilypond,musique,partition,planet libre,tutoriel,tutoriels
2020-12-21 14:17:57 +01:00
comments: true
2020-04-30 23:07:15 +02:00
---
Bonjour à tous !
Êtes-vous amateurs de musique ?  Eh bien nous aussi, c'est pourquoi aujourd'hui je vous présente Lilypond (pour ceux qui ne le connaissent pas déjà). Lilypond est un logiciel permettant de créer des partitions de musique. Pour ceux qui connaissent le fonctionnement de LaTeX, le principe est le même. Pour les autres, on va le découvrir ensemble...
2020-05-05 23:23:26 +02:00
# Aspect pratiques
2020-04-30 23:07:15 +02:00
Vous pouvez passer à la partie II si vous n'êtes pas sûr de vouloir utiliser Lilypond, pour en voir les fonctionnalités de base.
Lilypond se télécharge [ici](http://lilypond.org/download.fr.html).
On écrit les partitions dans un fichier texte, à ouvrir avec [notepad++](https://notepad-plus-plus.org/fr/) (ou autres) sous windows, vim (ou geany ou emacs) sous linux.
On compile avec la commande :
2020-05-05 23:23:26 +02:00
```
lilypond mon_fichier.ly
```
2020-04-30 23:07:15 +02:00
Pour les petits exemples, ceci est plus rapide. Il existe néanmoins un IDE très efficace que j'utilise qui s'appelle [Frescobaldi](http://www.frescobaldi.org/), qui est multiplate-forme. L'avantage de Frescobaldi est qu'il permet de prévisualiser son travail :
2020-05-05 23:23:26 +02:00
![01_Frescobaldi_empty](%assets_url%/2015/09/01_Frescobaldi_empty-300x165.png)
2020-04-30 23:07:15 +02:00
2020-05-05 23:23:26 +02:00
# Exemples
2020-04-30 23:07:15 +02:00
En fait c'est assez simple, vous écrivez les notes, et Lilypond se charge du reste. Mise en page, espacement, production du PDF/DVI, manière optimale de disposer la queue des croches...
Faisons simple avec un petit exemple. Écrire :
2020-05-05 23:23:26 +02:00
```
{ c' e' g' c' }
```
2020-04-30 23:07:15 +02:00
2020-05-05 23:23:26 +02:00
dans un fichier texte `test.ly` produit le résultat suivant après compilation :
2020-04-30 23:07:15 +02:00
2020-05-05 23:23:26 +02:00
![05test_ly](%assets_url%/2015/09/05test_ly.png)
2020-04-30 23:07:15 +02:00
On ne s'en rend pas compte tout de suite, mais c'est très puissant. Lilypond a automatiquement créé un PDF à partir d'un fichier texte tout simple. En fait il a fait plus que ça. Puisque rien n'est précisé ici (mis à part les notes) Lilypond a fait beaucoup d'hypothèse, il s'agit en fait du comportement par défaut :
- Durée de chaque note (noire)
- Clef à afficher (clef de sol)
- durée de la mesure (C = 4/4)
- hauteur des notes (do à 293,66 Hz)
En fait, la seule chose que j'ai écrite ici, c'est c' = do, e' = mi, g' = sol. Vous l'avez compris, Lilypond utilise la notation anglo-saxonne pour représenter les notes. Au début c'est ennuyeux (il faut chercher la lettre correspondant) mais vu le nombre de notes qu'il faut taper dans une partition, à la fin on est content.
Voici donc la table des notes :
- a = la
- b = si
- c = do
- d = ré
- e = mi
- f = fa
- g = sol
Vous avez sans doute remarqué que j'ai écris une apostrophe après chaque note, celle-ci permet d'indiquer l'octave supérieure.
En fait il y a deux comportements de Lilypond :
- le mode absolu que vous venez de voir et que je n'utiliserai bientôt plus (il est par défaut) ;
- le mode relatif.
On peut donc réécrire notre fichier lilypond ainsi :
2020-05-05 23:23:26 +02:00
```
\relative c' { c  e g c }
```
2020-04-30 23:07:15 +02:00
Vous découvrez là une nouvelle fonctionalité de Lilypond ! les commandes. Celles-ci sont introduites par le caractère "\\". Ici on a demandé à Lilypond de disposer toutes les notes relativement au do 293. \\relative permet de ne plus avoir besoin de mettre d'apostrophe, chaque note étant écrite en fonction de la précédente. Ainsi :
2020-05-05 23:23:26 +02:00
```
\relative c { c' c' c' }
```
2020-04-30 23:07:15 +02:00
produit le résultat suivant :
2020-05-05 23:23:26 +02:00
![06_test_ly](%assets_url%/2015/09/06_test_ly.png)
2020-04-30 23:07:15 +02:00
Vous savez désormais écrire toutes les notes, augmenter d'une l'octave, utiliser le mode relatif ou absolu. Pour diminuer d'une octave, le caractère à utiliser est la virgule :
2020-05-05 23:23:26 +02:00
```
\relative c'' { c' c, c, }
```
2020-04-30 23:07:15 +02:00
donne :
2020-05-05 23:23:26 +02:00
![07_test-ly](%assets_url%/2015/09/07_test-ly.png)
2020-04-30 23:07:15 +02:00
Tout cela est un peu monotone. Ajoutons du rythme. Ici c'est pareil que la hauteur. Le rythme d'une note dépend de la précédente. La première vaut une noire par défaut. Pour définir un rythme, on utilise les puissance de 2. En effet une ronde vaut deux blanches qui valent deux noires, qui valent deux croches, qui valent deux doubles-croches etc...
Pour Lilypond, la ronde est représentée par le chiffre 1. On a donc :
- 1 : ronde
- 2 : blanche
- 4 : noire
- 8 : croche
- 16 : double croche
- 32 : triple croche
- etc...
On peut donc écrire :
2020-05-05 23:23:26 +02:00
```
\relative c' { c1 | c2 c | c4 c c c | c8 }
```
2020-04-30 23:07:15 +02:00
qui donne :
2020-05-05 23:23:26 +02:00
![08_test_ly](%assets_url%/2015/09/08_test_ly-300x89.png)
2020-04-30 23:07:15 +02:00
Vous remarquez :
- que j'ai utilisé un pipe "|" pour délimiter les mesure. Ce n'est pas nécessaire, Lilypond le fait automatiquement, mais si vous les insérez, Lilypond peut lever une erreur "barcheck" pour vous prévenir que vous n'avez pas mis le pipe au bon endroit. (Une erreur barcheck peut aussi signifier que vous avez essayé de faire une mesure trop longue).
- que je précise la durée de la note seulement lorsque je désire la changer.
Deux autres concepts fondamentaux :
- Les altérations (dièse, bémol, bécarre)
- les ligatures
Une chose à retenir : on n'écrit jamais de bécarre. Lilypond les écrira pour vous :
2020-05-05 23:23:26 +02:00
```
\relative c' { \key c \minor c d e f | c d ees f | e ees e ees }
```
2020-04-30 23:07:15 +02:00
donne :
2020-05-05 23:23:26 +02:00
![09test_ly](%assets_url%/2015/09/09test_ly-300x97.png)
2020-04-30 23:07:15 +02:00
Quelques explications :
- es indique le bémol ;
- is indique le dièse ;
- eses le double bémol ;
- isis le double dièse ;
- dans la première mesure, j'ai écrit e sur une partition ou mi est bémol. Donc Lilypond a mis le bécarre automatiquement.
- Dans la seconde mesure, pas de bémol à écrire, il est à la clef.
- J'ai utilisé la commande \\key suivie obligatoirement de deux  paramètre :
- c
- \\minor
NB : il ne faudra pas confondre `\key` qui permet de définir la tonalité du morceau et `\clef` qui indique la clef de la mesure (qui admet treble (clef de sol), bass (clef de fa)... comme paramètre) :
2020-05-05 23:23:26 +02:00
```
\relative c' { \clef treble c \clef bass c \clef treble c \clef bass c | }
```
2020-04-30 23:07:15 +02:00
donne :
2020-05-05 23:23:26 +02:00
![10_test_ly](%assets_url%/2015/09/10_test_ly.png)
2020-04-30 23:07:15 +02:00
J'espère que vous êtes convaincus que le résultat est ce qu'on attend. En effet il s'agit quatre fois de la **même** note.
Finissons-en avec les problèmes de durée de note :
- On obtient une note pointée en écrivant un point après :
- c.
- c4. (et non pas c.4, qui serait absurde, il faut d'abord connaître la durée de la note pour savoir combien le point vaut)
- c'4. (l'apostrophe (ou la virgule) _doit_ être collée à la lettre, en effet la note est c' puisque c est une note différente, une octave en dessous)
- On peut sinon utiliser les parenthèses pour indiquer une ligature de note tenue. Cela se fait ainsi :
2020-05-05 23:23:26 +02:00
```
\relative c' { c1(  |  c4 )  c }
```
2020-04-30 23:07:15 +02:00
qui donne :
2020-05-05 23:23:26 +02:00
![11_test_ly](%assets_url%/2015/09/11_test_ly.png)
2020-04-30 23:07:15 +02:00
La parenthèse est **collée après** la note sur laquelle le début de la ligature commence.
Voyons maintenant les accords. On les obtient ainsi :
2020-05-05 23:23:26 +02:00
```
\relative c' { <c c'> <cis e cis'>8. <cisis  cisis'>16 }
```
2020-04-30 23:07:15 +02:00
qui donne :
2020-05-05 23:23:26 +02:00
![12_test_ly](%assets_url%/2015/09/12_test_ly.png)
2020-04-30 23:07:15 +02:00
Vous remarquez que Lilypond a fait automatiquement le lien entre la croche pointée et la double croche. Vous savez aussi comment organiser :
- les dièses ;
- les < > pour les accords ;
- les points ;
- les chiffres pour la durée de la note.
Pour changer la manière dont Lilypond lie les croches/doubles-croches/etc... il faut utiliser "\[" et "\]" exactement comme on a utilisé les parenthèses :
2020-05-05 23:23:26 +02:00
```
\relative c' { c8  c c c c c c c | c[ c] c c c c c c }
```
2020-04-30 23:07:15 +02:00
qui donne :
2020-05-05 23:23:26 +02:00
![13_test_ly](%assets_url%/2015/09/13_test_ly-300x79.png)
2020-04-30 23:07:15 +02:00
Je ne sais pas vous, mais je trouve que Lilypond a bon goût dans la manière qu'il a de lier les croches.
Changeons de mesure ! 4/4 ça devient ennuyeux ;-) . Eh bien pour cela, on va utiliser la commande `\time` suivie d'un argument. `\time 3/8` donne une mesure qui dure 3 croches :
2020-05-05 23:23:26 +02:00
```
\relative c' { \time 7/8 c8  c c c c c c  | \time 3/8 c[ c] c c c c c c }
```
2020-04-30 23:07:15 +02:00
donne :
2020-05-05 23:23:26 +02:00
![14_test_ly](%assets_url%/2015/09/14_test_ly-300x67.png)
2020-04-30 23:07:15 +02:00
Je vais finir cette première esquisse par quelques points :
2020-05-05 23:23:26 +02:00
- Lilypond grogne à chaque fois qu'on compile sans le numéro de version. il suffit de rajouter l'entête `\version "2.18.2"`. Il s'agit là d'un header, on en verra d'autres par la suite.
2020-04-30 23:07:15 +02:00
- Les partitions peuvent être très complexes :
- plusieurs voix ;
- plusieurs portées ;
- plusieurs instruments ;
- plusieurs partitions au sein d'un livre ;
- ajout d'un accompagnement guitare, chant, paroles, etc...
Faites-moi part de vos commentaires !
_Motius_
2020-12-03 14:38:36 +01:00
PS : la suite, c'est [par ici](/posts/petit-tuto-lilypond-2) !