3.2.4 DocBook

Per inserir fragments del LilyPond convé intentar mantenir la conformitat del document del DocBook, permetent d’aquesta manera l’ús d’editors del DocBook, validació, etc. Així doncs, no usem etiquetes personalitzades, sols especifiquem una convenció basada en els elements estàndard del DocBook.

Convencions usuals

Per inserir tota classe de fragments utilitzem els elements mediaobject i inlinemediaobject, de forma que els nostres fragments poden formatar-se en línia o fora de línia. Les opcions de format del fragment s’escriuen sempre dins de la propietat role de l’element més intern (vegeu les seccions següents). Les etiquetes s’escullen de forma que permetin als editors del DocBook formatar el contingut satisfactòriament. Els fitxers del Docbook que es processaran amb lilypond-book han de tenir l’extensió ‘.lyxml’.

Inclusió d’un fitxer del LilyPond

Aquest és el cas més senzill. Hem d’usar l’extensió ‘.ly’ per al fitxer inclòs, i inserir-lo com un imageobject estàndard, amb l’estructura següent:

<mediaobject>
  <imageobject>
    <imagedata fileref="music1.ly" role="printfilename" />
  </imageobject>
</mediaobject>

Observeu que podeu usar mediaobject o inlinemediaobject com l’element més extern, a la vostra elecció.

Inclusió de codi del LilyPond

Es pot incloure codi del LilyPond mitjançant la utilització d’un element programlisting, en el qual el llenguatge s’estableix com lilypond amb l’estructura següent:

<inlinemediaobject>
  <textobject>
    <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
\context Staff \with {
  \remove "Time_signature_engraver"
  \remove "Clef_engraver"}
  { c4( fis) }
    </programlisting>
  </textobject>
</inlinemediaobject>

Com es pot veure, l’element més extern és un mediaobject o un inlinemediaobject, i hi ha un element textobject que porta el programlisting en el seu interior.

Processament del document de Docbook

En executar lilypond-book sobre el fitxer ‘.lyxml’ es crearà un document de DocBook vàlid que es pot processar posteriorment amb l’extensió ‘.xml’. Si useu dblatex, crearà un fitxer PDF automàticament a partir d’aquest document. Per a la generació d’HTML (HTML Help, JavaHelp, etc.) podeu usar les fulles d’estil oicial de DocBook, tot i que és possible que haureu d’aplicar-les algun tipus de personalització.


LilyPond — Utilització v2.23.82 (branca de desenvolupament).