@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-

@ignore
   Translation of GIT committish: 2c13b5ef49e689c809888465e23f874b5c4f62d7

   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 \version "2.19.21"

@c Translators: Jean-Charles Malahieude


@node Programmes externes
@chapter Programmes externes
@translationof External programs

LilyPond peut interagir avec d'autres programmes, selon différentes
manières.

@menu
* Pointer-cliquer::
* LilyPond et les éditeurs de texte::
* Conversion à partir d'autres formats::
* Inclusion de partition LilyPond dans d'autres programmes::
* Inclusion du travail des autres::
@end menu


@node Pointer-cliquer
@section Pointer-cliquer
@translationof Point and click

@cindex pointer-cliquer
@cindex point and click

Le pointer-cliquer (@emph{point and click}) permet de se retrouver
directement dans le fichier source, à la note que l'on pointe dans le
visionneur de PDF.  Ceci facilite grandement le repérage des erreurs à
partir du fichier imprimable.

@menu
* Configuration du système pour le pointer-cliquer::
* Activation du pointer-cliquer::
* Pointer-cliquer sélectif::
@end menu


@node Configuration du système pour le pointer-cliquer
@subsection Configuration du système
@translationof Configuring the system for point and click

Lorsque cette fonctionnalité est active, LilyPond ajoute des hyperliens
au fichier PDF ou SVG.  Ces liens sont transmis à un « URI helper » ou
au navigateur internet, qui se charge d'ouvrir un éditeur de texte à
l'endroit même où le curseur pointe.

Afin que cette chaîne de traitement soit pleinement opérationnelle, il
faut configurer votre visionneur de PDF de façon à ce qu'il suive les
liens grâce au script @file{lilypond-invoke-editor} fourni avec
LilyPond.

@file{lilypond-invoke-editor} est un petit programme assistant.  Il
se charge d'appeler un éditeur pour les identifiants de ressource
(@emph{URI}) de type @code{textedit}, et un navigateur pour les autres.
Il teste en outre les variables d'environnement @code{EDITOR} et
@code{LYEDITOR} pour trouver et lancer l'éditeur favori. Dans la mesure
où @code{LYEDITOR} aura préséance sur @code{EDITOR}, nous vous
conseillons de l'utiliser si vous désirez utiliser un éditeur pour le
terminal et un autre pour la fonctionnalité pointer-cliquer de LilyPond.

Les éditeurs peuvent recourir à des syntaxes différentes pour ouvrir un
fichier à une ligne et une colonne spécifiques. LilyPond dispose déjà
d'un certain nombre de commandes selon les éditeurs, définies dans le
fichier @file{scripts/lilypond-invoke-editor.py}. Il suffit donc de
libeller, par exemple :

@example
export LYEDITOR=atom
@end example

@noindent
pour lancer la commande
@example
atom %(file)s:%(line)s:%(column)s
@end example

@noindent
où @code{%(file)s}, @code{%(line)s} et @code{%(column)s} seront
respectivement remplacés par le fichier, la ligne et la colonne
considérés.

L'utilisation d'un éditeur non répertorié dans ce fichier recquiert d'en
connaître la syntaxe spécifique et d'assigner la commande complète à la
variable @code{LYEDITOR}. Voici par exemple ce qui convient à l'éditeur
Visual Studio Code :

@example
export LYEDITOR="code --goto %(file)s:%(line)s:%(column)s"
@end example

@warning{L'utilisation d'Emacs recquiert une configuration
supplémentaire. Il faudra ajouter la ligne @code{(server-start)} à votre
fichier @file{~/.emacs} afin d'éviter qu'une instance supplémentaire
d'Emacs ne s'ouvre à chaque clic sur un objet du PDF.}

@menu
* Utilisation du pointer-cliquer avec GNOME::
* Configuration spécifique à Evince::
@end menu


@node Utilisation du pointer-cliquer avec GNOME
@unnumberedsubsubsec Utilisation avec GNOME
@translationof Using GNOME for point and click

En ce qui concerne l'environnement GNOME, les URI sont gérés par des
fichers « .desktop ». Il faut donc créer un fichier dans un répertoire
local tel que @file{/tmp}, que l'on appelera
@file{lilypond-@/invoke-@/editor.desktop}. Il devra avoir le contenu
suivant :

@example
[Desktop Entry]
Version=1.0
Name=lilypond-invoke-editor
GenericName=Textedit URI handler
Comment=URI handler for textedit:
Exec=lilypond-invoke-editor %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/textedit;
Categories=Editor
NoDisplay=true
@end example

puis exécuter les commandes
@example
xdg-desktop-menu install ./lilypond-invoke-editor.desktop
xdg-mime default lilypond-invoke-editor.desktop x-scheme-handler/textedit
@end example

Après cette invocation,
@example
xdg-open textedit:///etc/issue:1:0:0
@end example

@noindent
devrait appeler @file{lilypond-invoke-editor} pour ouvrir les fichiers.


@node Configuration spécifique à Evince
@unnumberedsubsubsec Configuration spécifique à Evince
@translationof Extra configuration for Evince

@cindex Evince

Il se peut que, bien que @code{xdg-open} soit fonctionnel, Evince
refuse d'ouvir les liens pointer-cliquer pour des raisons
d'autorisation. S'impose alors une modification du profil
@code{Apparmor} d'Evince ; c'est lui qui contrôle le type d'action
qu'Evince est autorisé à réaliser.

Sur une distribution Ubuntu, cela consiste à éditer le fichier
@file{/etc/apparmor.d/local/usr.bin.evince} et lui ajouter les lignes
suivantes :

@example
# Pour les liens Textedit
/usr/local/bin/lilypond-invoke-editor Cx -> sanitized_helper,
@end example

@noindent
puis lancer la commande

@example
sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.evince
@end example

@noindent
Evince devrait alors être en mesure d'ouvrir les liens pointer-cliquer.
Une telle configuration devrait être fonctionnelle pour d'autres
visionneurs.


@node Activation du pointer-cliquer
@unnumberedsubsec Activation du pointer-cliquer
@translationof Enabling point and click

@cindex ficher de sortie, taille
@cindex taille du ficher de sortie

La fonctionnalité de « pointer-cliquer » est activée par défaut pour ce
qui est des fichiers PDF et SVG.

L'option pointer-cliquer accroît la taille des fichiers de manière
significative.  Afin de réduire la taille de ces fichiers (ainsi que du
PS), il est toujours possible de désactiver le pointer-cliquer en
ajoutant

@example
\pointAndClickOff
@end example

@noindent
dans le fichier @file{.ly}.  Il peut alors être activé de manière
explicite grâce à

@example
\pointAndClickOn
@end example

Le pointer-cliquer peut aussi être désactivé au moment de la compilation
en ligne de commande :

@example
lilypond -dno-point-and-click file.ly
@end example

@warning{Lorsqu'un fichier LilyPond est destiné à être redistribué,
pensez à désactiver le pointer-cliquer, de telle sorte que les chemins
d'accès et autres informations propres à votre système ne se retrouvent
pas inclus dans le fichier PDF.}


@node Pointer-cliquer sélectif
@unnumberedsubsec Pointer-cliquer sélectif
@translationof Selective point-and-click

Pour certaines applications interactives, il est parfois préférable de
limiter la fonctionnalité du pointer-cliquer à quelques éléments
seulement.  Par exemple, si vous avez l'intention de créer une
application lançant l'audio et la vidéo à partir d'une note en
particulier, il serait mal venu qu'un clic sur la note vous amène à
l'altération ou une liaison qui l'affecterait.

Les événements générateurs de lien peuvent se gérer :

@itemize
@item
En dur dans votre fichier @file{.ly} :

@example
\pointAndClickTypes #'note-event
\relative @{
  c'2\f( f)
@}
@end example

@noindent
ou

@example
#(ly:set-option 'point-and-click 'note-event)
\relative @{
  c'2\f( f)
@}
@end example

@item
En ligne de commande :

@example
lilypond -dpoint-and-click=note-event exemple.ly
@end example

@end itemize

Plusieurs types d'événement peuvent être mentionnés :

@itemize
@item
En dur dans votre fichier @file{.ly} :

@example
\pointAndClickTypes #'(note-event dynamic-event)
\relative @{
  c'2\f( f)
@}
@end example

@noindent
ou

@example
#(ly:set-option 'point-and-click '(note-event dynamic-event))
\relative @{
  c'2\f( f)
@}
@end example

@item
En ligne de commande :

@smallexample
lilypond \
  -e"(ly:set-option 'point-and-click '(note-event dynamic-event))" \
  exemple.ly
@end smallexample


@end itemize


@node LilyPond et les éditeurs de texte
@section LilyPond et les éditeurs de texte
@translationof Text editor support

@cindex éditeurs
@cindex vim
@cindex emacs
@cindex modes, éditeur
@cindex syntaxe, coloration
@cindex coloration syntaxique

Certains éditeurs de texte prennent en charge LilyPond.

@menu
* Mode Emacs::
* Mode Vim::
* Autres éditeurs::
@end menu


@node Mode Emacs
@unnumberedsubsec Mode Emacs
@translationof Emacs mode

Emacs dispose d'un @file{lilypond-mode} qui fournit l'autocomplétion
des mots-clés, l'indentation, les appariements spécifiques à LilyPond,
la coloration syntaxique, ainsi que des raccourcis pour compiler et
consulter les manuels de LilyPond en mode info.  Si le
@file{lilypond-mode} n'était pas installé sur votre système, procédez
comme ci-dessous.

Le répertoire @file{elisp} inclus dans les sources contient aussi un
mode pour saisir la musique et lancer LilyPond.  Faites
@command{make install} pour l'installer dans votre @var{elispdir}.  Le
fichier @file{lilypond-init.el} devrait trouver sa place dans
@var{load-path}@file{/site-start.d/} ou bien ajouté à votre
@file{~/.emacs} ou @file{~/.emacs.el}.

En tant que simple utilisateur, vous pouvez toujours ajouter votre
propre répertoire (par exemple @file{~/site-lisp/}) à votre
@var{load-path} en ajoutant la ligne suivante -- modifiée en conséquence
-- à votre @file{~/.emacs} :

@c any reason we do not advise:  (push "~/site-lisp" load-path)
@example
(setq load-path (append (list (expand-file-name "~/site-lisp")) load-path))
@end example


@node Mode Vim
@unnumberedsubsec Mode Vim
@translationof Vim mode

En ce qui concerne @uref{https://@/www@/.vim@/.org,Vim}, LilyPond
fournit tout le nécessaire pour gérer la coloration syntaxique et
l'indentation. Le mode spécifique à Vim doit être indiqué dans le
fichier @file{$HOME/.vimrc}. Localisez ce fichier, ou créez-le, et
ajoutez-y les trois lignes suivantes :

@example
filetype off
set runtimepath+=/usr/local/share/lilypond/current/vim/
filetype on
syntax on
@end example

@noindent
Si LilyPond est installé dans un autre répertoire que
@file{/usr/local/}, modifiez ce chemin en conséquence.  Pour de plus
amples détails, consultez @rlearning{Autres sources de documentation}.


@node Autres éditeurs
@unnumberedsubsec Autres éditeurs
@translationof Other editors

LilyPond est pris en charge par d'autres éditeurs, aussi bien en mode
texte qu'avec une interface graphique.  Dans la mesure où leurs fichiers
de configuration ne sont pas fournis avec LilyPond, nous vous invitons à
consulter leur documentation pour plus d'information.  Certains de ces
éditeurs sont mentionnés à la page @rweb{Facilités d'édition}.


@node Conversion à partir d'autres formats
@section Conversion à partir d'autres formats
@translationof Converting from other formats

La musique peut aussi être récupérée par importation d'un autre
format.  Ce chapitre passe en revue les différents outils prévus à cet
effet et inclus dans la distribution.  Il existe d'autres outils qui
permettent de générer du code LilyPond, comme par exemple des
séquenceurs en mode graphique ou des convertisseurs XML.  Pour plus
de détails, rendez-vous sur le @uref{https://@/lilypond@/.org,site}.

Il s'agit de programmes distincts de @command{lilypond} qui se lancent
en ligne de commande.  Pour plus de précisions, reportez-vous au
chapitre @ref{Utilisation en ligne de commande}.


@knownissues
Les développeurs ne sont malheureusement pas suffisamment nombreux et
disponibles pour maintenir à jour ces programmes, considérez-les donc
@emph{en l'état}.  Nous acceptons les patches avec plaisir, mais il y a
peu de chance pour que nous soyons en mesure de résoudre les bogues de
ces programmes.

@menu
* Utilisation de midi2ly::      importation de musique au format MIDI.
* Utilisation de musicxml2ly::  importation de partitions au format MusicXML.
* Utilisation d'abc2ly::        importation de partitions au format ABC.
* Utilisation d'etf2ly::        importation de partitions Finale.
* Autres formats::
@end menu


@node Utilisation de midi2ly
@subsection Utilisation de @code{midi2ly}
@translationof Invoking midi2ly

@cindex MIDI

@command{midi2ly} traduit un fichier MIDI de Type 1 en un fichier
source LilyPond.

MIDI (Music Instrument Digital Interface) constitue un standard pour
les instruments. Il spécifie le câblage, un protocole série et un
format de fichier.  Le format de fichier MIDI est de ce fait un format
standard pour exporter de la musique à partir d'autres programmes, et
cette faculté prend tout son intérêt lorsqu'un programme dispose d'un
convertisseur capable d'importer directement un fichier.

@command{midi2ly} convertit les pistes en contextes de portée
-- @rinternals{Staff} -- et les canaux en contextes de voix
-- @rinternals{Voice}.  Les hauteurs sont rendues en mode relatif, et
les durées spécifiées lorsque nécessaire.

Vous pouvez enregistrer un fichier MIDI grâce à un clavier
électronique et ensuite le convertir en fichier @file{.ly}.  Néanmoins
le rythme humain n'a pas une précision suffisante pour qu'une
conversion MIDI à ly ne se fasse sans surprise.  En le couplant à une
quantisation (options @option{-s} et @option{-d}), @command{midi2ly}
tente de compenser dans la mesure du possible ces problèmes de
temporisation.  C'est la raison pour laquelle le recours à
@command{midi2ly} n'est pas recommandé pour des fichiers midi générés
manuellement.

Pour le lancer en ligne de commande, procédez ainsi :

@example
midi2ly [@var{option}]@dots{} @var{fichier-midi}
@end example

Notez bien que, par « ligne de commande », nous parlons de la ligne de
commande du système.  Pour plus de précisions, reportez-vous à
@ref{Conversion à partir d'autres formats}.

@command{midi2ly} accepte les options suivantes :

@table @code
@item -a, --absolute-pitches
Rendu en hauteurs absolues.

@item -d, --duration-quant=@var{DUR}
Quantiser les durées à partir de @var{DUR}.

@item -e, --explicit-durations
Rendu explicite des durées.

@item -h, --help
Afficher un résumé des utilisations.

@item -k, --key=@var{acc}[:@var{minor}]
Déterminer la tonalité par défaut.  @math{@var{acc} > 0} fixe le
nombre de dièses, @math{@var{acc} < 0} le nombre de bémols.  Une
tonalité mineure est spécifiée par l'emploi de @code{:1}.

@item -o, --output=@var{fichier}
Générer le résultat dans le fichier @var{fichier}.

@item -s, --start-quant=@var{DUR}
Quantiser le début des notes sur @var{DUR}.

@item -t, --allow-tuplet=@var{DUR}*@var{NUM}/@var{DEN}
Accepter des n-olets de valeur @var{DUR}*@var{NUM}/@var{DEN}.

@item -v, --verbose
Mode verbeux.

@item -V, --version
Afficher le numéro de version.

@item -w, --warranty
Afficher les mentions de garantie et de copyright.

@item -x, --text-lyrics
Interpréter le texte comme des paroles.
@end table

@knownissues
Le tuilage en arpège ne sera pas rendu correctement.  La première note
sera lue et les suivantes ignorées.  Affectez-leur une durée unique et
ajoutez une indication de phrasé ou de pédale.


@node Utilisation de musicxml2ly
@subsection Utilisation de @code{musicxml2ly}
@translationof Invoking musicxml2ly

@cindex MusicXML

@uref{https://@/www.@/musicxml@/.org/,MusicXML} est un dialecte XML pour
représenter la notation musicale.

@command{musicxml2ly} extrait, à partir d'un fichier MusicXML, les
notes, articulations, structure de la partition, paroles, etc. et les
écrit dans un fichier @file{.ly}.  Il se lance ainsi en ligne de
commande :

@example
musicxml2ly [@var{option}]@dots{} @var{fichier-xml}
@end example

Notez bien que, par « ligne de commande », nous parlons de la ligne de
commande du système.  Pour plus de précisions, reportez-vous à
@ref{Conversion à partir d'autres formats}.

Si @var{fichier.xml} est remlacé par @file{-}, @command{musicxml2ly}
lira directement à partir de la ligne de commande.

@command{musicxml2ly} accepte les options suivantes :

@table @code
@item -a, --absolute
Rendu en hauteurs absolues.

@item --fb --fretboards
Convertir les événements @code{<frame>} dans une voix séparée FretBoard
plutôt qu'en @emph{markups}.

@item -h, --help
Afficher un résumé de toutes les options utilisables.

@item -l, --language=LANG
Utiliser une autre définition linguistique (@var{LANG}), comme par exemple
@var{deutsch} pour des noms de notes en allemand.

@item --loglevel=@var{LOGLEVEL}
Détermine le degré de verbosité à @var{LOGLEVEL}.  Les valeurs
autorisées sont @code{NONE}, @code{ERROR}, @code{WARNING},
@code{PROGRESS} (par défaut) et @code{DEBUG}.

@item --lxml
Utiliser le paquetage Python @code{lxml.etree}, moins gourmand en
mémoire et temps de calcul, pour effectuer l'analyse XML.

@item -m, --midi
Ajouter un bloc @code{\midi} au fichier @var{.ly}.

@item nb, --no-beaming
Ne pas convertir les informations de ligature ; laisser LilyPond
gérer les ligatures automatiquement.

@item --nd, --no-articulation-directions
Ne pas convertir la direction (@code{^}, @code{_} ou @code{-}) des
articulations, nuances, etc.

@item --nrp, --no-rest-positions
Ne pas convertir les silences à position forcée.

@item --nsb, --no-system-breaks
Ignorer les sauts de ligne.

@item --npl, --no-page-layout
Ne pas convertir l'exacte mise en page et les sauts (raccourci des
options @code{--nsb} @code{--npb} @code{--npm}).

@item --npb, --no-page-breaks
Ignorer les sauts de page.

@item --npm, --no-page-margins
Ignorer les marges de la page.

@item --nsd, --no-stem-directions
Ignorer l'orientation des hampes de MusicXML, et laisser LilyPond s'en
occuper.

@item -o, --output=@var{fichier}
Générer le résultat dans le fichier @var{fichier}.  S'il n'est pas
déterminé, ce sera @var{fichierxml}@file{.ly} ; @file{-}
produira le résultat sur la sortie standard (@var{stdout}).

@item -r, --relative
Rendu en hauteurs relatives (mode par défaut).

@item --transpose=TOPITCH
L'intervale entre le @code{do} et @var{TOPITCH} pour transposer.

@item --sm, --shift-meter=BEATS/BEATTYPE
Modifier la longueur|durée des notes en fonction d'une métrique donnée
pour rendre la partition plus rapide ou plus lente (par ex. @code{4/4}
ou @code{2/2}).

@item --tc, --tab-clef=TABCLEFNAME
Basculer entre deux types de clef de tablature (@code{tab} et
@code{moderntab}).

@item --sn --string-numbers=t[rue]/f[alse]
Désactiver les stencils de numéro de corde avec @code{--string-numbers}
@code{false} ;  @code{true} par défaut.

@item -v, --verbose
Mode verbeux.

@item --version
Afficher le numéro de version et quitter.

@item -z, --compressed
Le fichier d'entrée est un fichier MusicXML zippé.
@end table


@node Utilisation d'abc2ly
@subsection Utilisation de @code{abc2ly}
@translationof Invoking abc2ly

@warning{Ce programme ne bénéficie d'aucune maintenance.  Il est
susceptible d'être supprimé des futures versions de LilyPond.}

@cindex ABC

ABC est un format relativement simple basé sur l'ASCII.  Sa
description est disponible sur le
@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html,site
d'ABC}.

@command{abc2ly} traduit du format ABC au format LilyPond.  Pour le
lancer en ligne de commande, procédez ainsi :

@example
abc2ly [@var{option}]@dots{} @var{fichier-abc}
@end example

@command{abc2ly} accepte les options suivantes :

@table @code
@item -b, --beams=None
Préserver la notion de lien de croches propre à ABC.

@item -h, --help
Afficher un résumé des utilisations.

@item -o, --output=@var{file}
Générer le résultat dans le fichier @var{file}.

@item -s, --strict
Être strict sur la réussite.

@item --version
Afficher le numéro de version.
@end table

Il est possible d'ajouter des bribes de code LilyPond dans un fichier
source ABC.  Ainsi, l'assertion

@example
%%LY voices \set autoBeaming = ##f
@end example

@noindent
aura pour conséquence d'insérer le texte qui suit le mot-clé « voices »
dans la voix correspondante du fichier LilyPond.

De la même manière,

@example
%%LY slyrics more words
@end example

@noindent
placera le texte suivant le mot-clé « slyrics » dans une ligne de
paroles.

@knownissues
Le standard ABC n'est pas si « standard » que cela.  Pour des
fonctionnalités étendues, comme la polyphonie, existent différentes
conventions.

Un fichier comportant plusieurs morceaux ne peut être converti.

ABC synchronise paroles et musique en début de ligne ; @command{abc2ly}
ne le fait pas.

@command{abc2ly} ignore les ligatures ABC.


@node Utilisation d'etf2ly
@subsection Utilisation de @code{etf2ly}
@translationof Invoking etf2ly

@warning{Ce programme ne bénéficie d'aucune maintenance.  Il est
susceptible d'être supprimé des futures versions de LilyPond.}

@cindex Enigma Transport Format
@cindex ETF
@cindex enigma
@cindex Finale
@cindex Coda Technology

ETF (Enigma Transport Format) est l'un des formats utilisés par le
logiciel Finale, édité par Coda Music Technology.  @command{etf2ly}
convertit partiellement les fichiers ETF en fichiers source LilyPond.

Pour le lancer en ligne de commande, procédez ainsi :

@example
etf2ly [@var{option}]@dots{} @var{fichier-etf}
@end example

Notez bien que, par « ligne de commande », nous parlons de la ligne de
commande du système.  Pour plus de précisions, reportez-vous à
@ref{Conversion à partir d'autres formats}.

@command{etf2ly} accepte les options suivantes :

@table @code
@item -h, --help
Afficher cette aide.

@item -o, --output=@var{file}
Générer le résultat dans le fichier @var{file}.

@item --version
Afficher le numéro de version.
@end table

@knownissues
La liste des scripts d'articulation est incomplète.  Les mesures vides
perturbent @command{etf2ly}.  Les séquences de notes d'ornement ne se
terminent pas de manière satisfaisante.


@node Autres formats
@subsection Autres formats
@translationof Other formats

@cindex programmes externes générant des fichiers LilyPond

LilyPond ne prend pas en charge d'autre format.  Cependant, certains
outils indépendants permettent de générer des fichiers LilyPond, comme
indiqué à la page @rweb{Facilités d'édition}.


@node Inclusion de partition LilyPond dans d'autres programmes
@section Inclusion de partition LilyPond dans d'autres programmes
@translationof LilyPond output in other programs

Nous allons nous intéresser ici à différents moyens d'associer texte
et musique, en laissant de côté l'automatisation grâce à
@command{lilypond-book}.

@menu
* LuaTeX::
* OpenOffice et LibreOffice::
* Autres programmes::
@end menu


@node LuaTeX
@subsection Lua@TeX{}
@translationof LuaTeX

@cindex Lua@TeX{}
@cindex lyluatex

Tout comme avec @code{lilypond-book}, les utilisateurs de Lua@TeX{} peuvent
intégrer le résultat de LilyPond dans leurs documents à l'aide de
l'extension
@uref{https://github.com/jperon/lyluatex/blob/master/README.md,lyluatex}.


@node OpenOffice et LibreOffice
@unnumberedsubsec OpenOffice et LibreOffice
@translationof OpenOffice and LibreOffice

@cindex OpenOffice.org
@cindex LibreOffice.org
@cindex OOoLilyPond

@uref{https://github.com/openlilylib/LO-ly,OOoLilyPond} permet
d'insérer directement des partitions LilyPond dans OpenOffice ou
LibreOffice. OOoLilyPond (OLy) fonctionne avec les versions récentes
d'OpenOffice et LibreOffice. Il devrait être fonctionnel également avec
d'anciennes versions. Il a même été testé avec OpenOffice 2.4 sans
problème.


@node Autres programmes
@unnumberedsubsec Autres programmes
@translationof Other programs

Pour les nombreux programmes qui sont capables de contenir des images,
que ce soit au format @file{PNG}, @file{EPS} ou @file{PDF}, mieux vaut
utiliser @command{lilypond} que @command{lilypond-book}.  Chaque extrait
devra être généré séparément avant d'être inséré dans votre document.
Consultez la documentation du logiciel en question quant à l'insertion
de fichiers provenant d'autres sources.

Les options suivantes vous permettront de réduire notablement les
contours de l'image LilyPond :

@example
\paper@{
  indent=0\mm
  line-width=120\mm
  oddFooterMarkup=##f
  oddHeaderMarkup=##f
  bookTitleMarkup = ##f
  scoreTitleMarkup = ##f
@}

@var{@dots{} musique @dots{}}
@end example

@noindent
En procédant comme ci-après, vous obtiendrez des images @file{EPS} :

@example
lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts monfichier.ly
@end example

@noindent
des images @file{PNG} :

@example
lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png monfichier.ly
@end example

@noindent
ou bien des images @file{PNG} avec transparence :

@smallexample
lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts -dpixmap-format=pngalpha --png myfile.ly
@end smallexample

@cindex fragments musicaux
@cindex recopie d'extraits
@cindex extraits, recopie

Si d'aventure vous deviez recopier un certain nombre d'extraits d'une
même partition, vous pouvez recourir à « l'emporte pièce » -- la
fonction @emph{clip systems} -- comme indiqué au chapitre
@ruser{Extraction de fragments musicaux}.


@node Inclusion du travail des autres
@section Inclusion du travail des autres
@translationof Independent includes

Certains utilisateurs ont, pour obtenir des effets particuliers, écrit
des fichiers qu'il est toujours possible d'intégrer à LilyPond avec
l'instruction @code{\include}.  Plusieurs sont même désormais inclus
dans le programme.  Voir aussi @ruser{Travail sur des fichiers texte}.

@menu
* MIDI et articulations::
@end menu


@node MIDI et articulations
@subsection MIDI et articulations
@translationof MIDI articulation

@cindex MIDI
@cindex le projet @emph{Articulate}

Le projet @uref{http://www.nicta.com.au/people/chubbp/articulate,
@emph{articulate}} (site en anglais) s'est donné pour objectif
d'améliorer la sortie MIDI de LilyPond.  Les notes qui ne sont pas liées
sont ainsi raccourcies dans le but « d'articuler ».  Ce raccourcissement
dépend de l'articulation appliquée à la note : un @emph{staccato}
raccourcira la note de moitié, un @emph{tenuto} lui gardera sa durée
entière…  Voir @ruser{Amélioration du rendu MIDI}.
