Options avancées de lilypond

L’option -d est l’interface de la ligne de commande à la fonction Scheme de LilyPond ly:set-option. Par voie de conséquence, toutes les options listées ci-après peuvent aussi se définir au sein même des fichiers .ly.

-d, --define-default=nom-option[=valeur]
-d, --define-default=no-nom-option

Affecte la valeur Scheme valeur à l’option interne nom-option du programme. Par exemple, l’option en ligne de commande

-dbackend=svg

équivaut à

#(ly:set-option 'backend 'svg)

dans un fichier source LilyPond.

En l’absence de valeur, le programme utilisera #t. Préfixer nom-option d’un no- permet de désactiver une option, autrement dit affecte #f à valeur. Ainsi,

-dno-point-and-click

revient au même que

-dpoint-and-click="#f"

[Note : le caractère ‘#’ introduit un commentaire dans de nombreux shells ; c’est pourquoi nous recommandons de toujours borner par des ' les expressions qui le contiennent.]

Voici les différentes options disponibles, ainsi que leur valeur par défaut. Au sein de code Scheme, la valeur des options est interprétée par la fonction ly:get-option.

anti-alias-factor num

Adopte une résolution supérieure, selon le facteur num donné (entier positif inférieur ou égal à 8), puis réduit au niveau du résultat afin d’éviter les « distorsions » des images PNG. La valeur par défaut est de 1.

aux-files bool

Si bool est fixé à #t, génère les fichiers .tex, .texi et .count pour le moteur de rendu eps. Cette option est principalement destinée à lilypond-book. La valeur par défaut est #t.

backend symbole

Détermine symbole comme moteur de traitement de LilyPond. Les valeurs possibles sont :

ps

Il s’agit du réglage par défaut. Les fichiers PostScript incluent les fontes TTF, Type1 et OTF, et ce en intégralité. Si vous utilisez des jeux de caractères orientaux, le fichier aura vite fait d’atteindre une taille conséquente.

Pour l’obtention d’un fichier PDF, c’est aussi le moteur ps qui est utilisé. Les données PS sont ensuite retraitées par ps2pdf, script de Ghostscript, qui par défaut extrait des sous-ensembles des fontes.

cairo

Crée des sorties graphiques à l’aide de la bibliothèque Cairo. Ce moteur peut générer du PS, du EPS, du PDF, du PNG et du SVG.

svg

Génère du Scalable Vector Graphics. Cette option permet de créer un fichier SVG par page. Les glyphes musicaux sont codés en tant que graphiques vectoriels mais les fontes textuelles ne sont pas incorporées aux fichiers SVG résultants. Quel que soit le programme utilisé pour visionner ces fichiers, il devra avoir accès aux fontes en question pour pouvoir afficher correctement les textes et paroles. Il est préférable de ne pas recourir aux « alias de police » ni aux listes de fontes si la visionneuse de fichier SVG ne peut le traîter correctement.

clip-systems bool

Si bool est déterminé à #t, extrait des fragments musicaux d’une partition. Ceci requiert que la fonction clip-regions a été définie au sein du bloc \layout – voir Extraction de fragments musicaux. Bien entendu, aucun fragment ne sera extrait si l’on utilise l’option -dno-print-pages. La valeur par défaut est #f.

compile-scheme-code bool

Utilise le compilateur de Guile pour traiter du code Scheme, au lieu de l’évaluateur. Pour de plus amples informations, voir Débogage de code Scheme.

crop bool

Si bool est déterminé à #t, un second fichier PDF sera créé (avec l’extension .cropped.pdf) ainsi que son rendu sous forme d’image (avec l’extension .cropped.png). Ce fichier résultant (musique et entêtes) sera à la taille de l’image générée, sans marge. Dans le cas où est utilisée l’option --svg sera alors produit un fichier SVG (avec l’extension .cropped.svg). Dès lors que sont utilisées les options --eps ou --ps, un fichier réduit PS (avec l’extension .cropped.eps) sera généré en lieu et place d’un PDF réduit. La valeur par défaut est #f.

Pour les fonctionnalités de LilyPond, les dimensions de l’image réduite sont toujours arrondies à un nombre entier de big points (PostScript), ce qui peut résulter en un peu d’espace blanc sur la marge droite. Il est possible de l’éviter en réglant la variable de papier à une valeur entière de big points comme 450\bp.

Notez bien que cette option n’est, à ce jour, pas très adaptée dans le cadre d’une sortie comportant plusieurs systèmes puisque l’espace les séparant est supprimé.

datadir chaîne

Détermine le préfixe des fichiers de données (lecture seule).

debug-eval bool

Si bool est déterminé à #t, LilyPond utilisera le l’évaluateur de déboguage Scheme qui affichera les traçage et les numéros de ligne en cas d’erreur. La valeur par défaut est #f, mais #t lorsque --verbose est utilisé.

debug-skylines bool

Si bool est déterminé à #t, permet le débogage des lignes d’horizon. La valeur par défaut est #f.

delete-intermediate-files bool

Si bool est déterminé à #t, supprime les fichiers .ps inutiles créés lors de la compilation. La valeur par défaut est #t.

embed-source-code bool

Si bool est déterminé à #t, intègre les fichiers source LilyPond au document PDF généré. La valeur par défaut est #f.

eps-box-padding num

Décale le bord gauche du typon EPS d’une valeur num donnée en millimètres. La valeur par défaut est #f, autrement dit sans décalage.

first chaîne

Génère la partition sur une durée donnée par chaîne à compter du début. Ceci est équivalent à une clause

showFirstLength = chaîne

mentionnée au début du fichier source. Dès lors que -dfirst et showFirstLength sont tous deux présents, l’option de la ligne de commande aura priorité. Voir Extraction de fragments musicaux. La valeur par défaut est #f.

font-export-dir chaîne

Détermine à chaîne le répertoire dans lequel exporter les fontes en tant que fichiers PostScript. Ceci est tout à fait approprié lorsque l’on crée un fichier PDF sans y incorporer les fontes dans un premier temps, et laisse Ghostscript le faire par la suite comme indiqué ci-dessous.

$ lilypond -dfont-export-dir=fontdir\
           -dgs-never-embed-fonts foo.ly
$ gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite \
     -sOutputFile=foo.embedded.pdf foo.pdf fontdir/*.font.ps

Note : Contrairement à font-ps-resdir, cette méthode ne permet pas d’incorporer de fonte CID avec une version de Ghostscript égale ou supérieure à 9.26.

Note : De la même manière que font-ps-resdir, cette option ignore les fontes TrueType dans la mesure où les incorporer a posteriori peut causer une altération des caractères. L’utilisation de gs-never-embed-fonts, dans la mesure où elle incorpore les fontes TrueType en dépit de ce qu’elle prétend d’après son nom, permet d’éviter les caractères altérés.

La valeur par défaut est #f, autrement dit absence de répertoire pour l’export.

font-ps-resdir chaîne

Détermine à chaîne le répertoire dans lequel sera construit le sous-ensemble des ressources PostScript utilisé pour l’incoporation ultérieure des fontes. Ceci est tout à fait approprié lorsque l’on crée un fichier PDF sans y incorporer les fontes dans un premier temps, et laisse Ghostscript le faire par la suite comme indiqué ci-dessous.

$ lilypond -dfont-ps-resdir=resdir
           -dgs-never-embed-fonts foo.ly
$ gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite \
     -I resdir -I resdir/Font \
     -sOutputFile=foo.embedded.pdf foo.pdf

Note : Il vaut mieux éviter que le nom du répertoire contienne le mot Resource, qui a une signification particulière lorsqu’utilisé avec une option -I de Ghostscript.

Note : Contrairement à font-export-dir, cette méthode permet l’incorporation de fontes CID avec une version de Ghostscript égale ou supérieure à 9.26.

Note : De la même manière que font-export-dir, cette option ignore les fontes TrueType dans la mesure où les incorporer a posteriori peut causer une altération des caractères. L’utilisation de gs-never-embed-fonts, dans la mesure où elle incorpore les fontes TrueType en dépit de ce qu’elle prétend d’après son nom, permet d’éviter les caractères altérés.

La valeur par défaut est #f, autrement dit absence de construction d’un répertoire de sous-ensemble.

gs-load-fonts bool

Si bool est déterminé à #t, charge les fontes grâce à Ghostscript. Cette option a pour conséquence que les fichiers générés par LilyPond ne contiendront que les références des fontes, qui seront ensuite résolues en fontes réelles lors de l’étape de retraitement par Ghostscript. La valeur par défaut est #f.

gs-load-lily-fonts bool

Si bool est déterminé à #t, limite les fontes chargées par Ghostscript aux seules fontes LilyPond. Cette option a pour conséquence que les fichiers générés par LilyPond ne contiendront les références que des fontes musicales de LilyPond, qui seront ensuite résolues en fontes réelles lors de l’étape de retraitement par Ghostscript. Les autres fontes sont générées normalement. La valeur par défaut est #f.

gs-never-embed-fonts bool

Si bool est déterminé à #t, intime à Ghostscript d’embarquer les fontes uniquement au format TrueType, sans exception. La valeur par défaut est #f.

help bool

Si bool est déterminé à #t, affiche un écran d’aide. La valeur par défaut est #f.

include-book-title-preview bool

Si bool est déterminé à #t, inclut les titres de l’ouvrage dans les images de prévisualisation. La valeur par défaut est #t.

include-eps-fonts bool

Si bool est déterminé à #t, inclut les fontes dans chaque fichier EPS contenant un système. La valeur par défaut est #t.

include-settings chaîne

Inclut le fichier chaîne contenant les réglages globaux, qui sera inclus avant traitement de la partition. Cette option peut se multiplier afin d’incorporer plusieurs réglages. La valeur par défaut n’est pas déterminée, autrement dit absence de fichier de réglages.

job-count num

Traite plusieurs fichiers en parallèle, selon le nombre num (un entier positif) de jobs. La valeur par défaut est #f, autrement dit sans traitement parallèle.

last chaîne

Génère la partition sur une durée donnée par chaîne à compter de la fin. Ceci est équivalent à une clause

showLastLength = chaîne

mentionnée au début du fichier source. Dès lors que -dlast et showLastLength sont tous deux présents, l’option de la ligne de commande aura priorité. Voir Extraction de fragments musicaux. La valeur par défaut est #f.

log-file chaîne

Redirige la sortie dans le fichier journal chaîne.log. La valeur par défaut est #f, autrement dit absence de fichier de journalisation.

max-markup-depth num

Détermine à num (un entier positif) la profondeur maximale de l’arborescence de markups. Si un markup était plus profond, part du principe qu’on n’aboutira pas, émet un avertissement et renvoie alors un markup vide. La valeur par défaut est 1024.

midi-extension chaîne

Détermine à chaîne l’extension par défaut des fichiers MIDI.La valeur par défaut est "midi".

music-strings-to-paths bool

Si bool est déterminé à #t, convertit les chaînes textuelles en chemins lorsque les glyphes font partie d’une fonte musicale. La valeur par défaut est #f.

paper-size chaîne

Détermine la taille par défaut du papier à chaîne. La valeur par défaut est "a4".

pixmap-format chaîne

Détermine le format de sortie en images pixélisées pour Ghostscript à chaîne. La valeur par défaut est "png16m".

png-width largeur
png-height hauteur

Dans le cas d’une sortie PNG, détermine la largeur et la hauteur, en pixels, des images créées. En l’absence de l’une de ces options, l’autre dimension sera calculée relativement à la boîte EPS englobante tout en maintenant le ratio d’aspect. Les valeurs largeur et hauteur sont toutes deux des entiers positifs.

En complément de l’option --png, les options --eps, -dcrop ou -dpreview devraient permettre une mise à l’échelle correcte sans détourage.

L’option -dresolution est ignorée.

Notez la présence d’un bogue dans les versions de Ghostscript inférieures à 9.52 avec ces deux options : l’image PNG produite sera vide dès lors que la hauteur est supérieure à la largeur.

La valeur par défaut est 0 autant pour largeur que pour hauteur, ce qui signifie que ces deux dimensions seront déterminées par la boîte EPS englobante.

point-and-click valeur

Si valeur est déterminé à #t, ajoute les liens « point & click » à la sortie PDF ou SVG – voir Pointer-cliquer. La valeur par défaut est #t.

preview bool

Si bool est déterminé à #t, génère une prévisualisation en plus de la sortie normale. La valeur par défaut est #f.

Cette option, disponible dans tous les formats de sortie imprimables – rendus pdf, png, ps, eps et svg – génère un fichier de la forme fichierSource.preview.rendu comprenant le titrage et le premier système. S’il existe plusieurs sections \book ou \bookpart, ce fichier contiendra les titrage et premier système de chacun des \book, \bookpart et \score, dès lors que la variable print-all-headers du bloc \paper est activée.

Pour l’éviter, utilisez conjointement l’une des options -dprint-pages ou -dno-print-pages selon vos besoins.

print-pages bool

Si bool est déterminé à #t, génère l’intégralité des pages de la partition. La valeur par défaut est #t.

L’option -dno-print-pages est particulièrement utile lorsqu’utilisée conjointement avec les options -dpreview et -dcrop.

protected-scheme-parsing bool

Si bool est déterminé à #t, continue en dépit des erreurs que l’analyseur syntaxique détecterait dans du code Scheme inclus. Lorsque basculé sur #f, stoppe le traitement s’il y a erreur et affiche une trace de la pile. La valeur par défaut est #t.

read-file-list bool

Si bool est déterminé à #t, consigère tous les fichiers en argument sur la ligne de commande comme étant des listes de fichiers sources LilyPond à traiter, ces listes mentionnant un fichier par ligne. La valeur par défaut est #f.

relative-includes bool

Face à une instruction \include, recherche les fichiers à inclure relativement à l’endroit où se trouve le fichier en cours de traitement si bool est déterminé à #t, plutôt que par rapport au fichier maître. La valeur par défaut est #t.

resolution num

Détermine la résolution des pixmaps PNG à générer à num (un entier positif) dpi. La valeur par défaut est 101.

separate-log-files bool

Pour les fichiers fichier1.ly, fichier2.ly, etc. enregistre le déroulement dans les journaux fichier1.log, fichier2.log… si bool est déterminé à #t. La valeur par défaut est #f.

separate-page-formats chaîne

Liste des formats (svg, pdf, png, ou eps), séparés par des virgules, à utiliser pour les images séparées des pages pour lilypond-book – voir Autres programmes. La valeur par défaut est #f.

show-available-fonts bool

Si bool est déterminé à #t, liste le nom des fontes disponibles tel que le ressort la bibliothèque fontconfig. LilyPond ajoute à cette liste les réglages et la configuration de fontconfig. La valeur par défaut est #t.

staff-size num

Détermine la taille globale de portée à num (un nombre positif) points. Ceci est équivalent à une clause

#(set-global-staff-size num)

mentionnée au début du fichier source. La valeur par défaut est 20pt.

strip-output-dir bool

Si bool est déterminé à #t, supprime, lors du nommage des fichiers résultants, la partie correspondant au répertoire des fichiers sources. La valeur par défaut est #t.

strokeadjust bool

Si bool est déterminé à #t, force l’ajustement des traits PostScript. Cette option trouve toute son utilité pour générer du PDF à partir de PostScript – l’ajustement des traits est en principe automatiquement activé pour les périphériques bitmap à faible résolution. Sans cette option, les visionneurs de PDF ont tendance à ne pas rendre de manière constante l’épaisseur des hampes dans les résolutions habituelles des écrans. Bien que n’affectant pas notoirement la qualité d’impression, cette option accroit notablement la taille des fichiers PDF. La valeur par défaut est #f.

tall-page-formats chaîne

Liste des formats (svg, pdf, png, ou eps), séparés par des virgules, à utiliser pour l’image pleine page pour lilypond-book – voir Autres programmes. La valeur par défaut est #f.

use-paper-size-for-page bool

Si bool est déterminé à #t, chaque page est dimensionnée au format du papier, tout en éliminant les parties qui pourraient déborder. Lorsque cette option est déterminée à #f, la feuille sera redimensionnée pour contenir autant que nécessaire. La valeur par défaut est #t.

verbose bool

Passe en mode verbeux, ce qui correspond à un niveau de journalisation DEBUG (lecture seule).

warning-as-error bool

Si bool est déterminé à #t, considère tous les messages d’avertissement et « erreur de programmation » comme étant de véritables erreurs. La valeur par défaut est #f.


GNU LilyPond – Utilisation des programmes v2.25.21 (branche de développement).