Page du projet.

1 Débuter avec frundis

1.1 Un exemple minimal pour se faire une idée

Avec frundis, un fichier minimal ressemble à cela :

Ceci est le premier paragraphe de ma petite histoire.
.P
Et ceci est un nouveau paragraphe. Puis nous allons commencer un
dialogue:
.D
La musique ne se brise jamais —dit Frundis dans un roulement de tambours.

Note. Les espaces insécables nécessaires sont rajoutés automatiquement si le paramètre lang est activé pour le français ; pour cela on écrira .X set lang fr.

Après, pour créer le fichier latex, par exemple, il faudra utiliser frundis en ligne de commande :

frundis -s -T latex nom-fichier.frundis > nom-fichier.tex

Si l'option -s (standalone) est utilisée, un fichier LaTeX complet avec un préambule par défaut assez simple sera généré.

Pour exporter vers HTML on écrira :

frundis -a -s -T xhtml nom-fichier.frundis > nom-fichier.html

L'option -a (all in one file) spécifie à frundis que l'on veut un seul fichier : sans cette option, frundis divisera le fichier par parties et chapitres s'il y en a (macros Pt et Ch).

1.2 Comment faire plus qu'une simple emphase ?

Il est possible d'ajouter aux macros Sm, Bm et Bd des tags que l'on utilisera pour pouvoir baliser de manière précise le texte pour l'export LaTeX, HTML et EPUB. Ces tags se définissent grâce aux modifieurs mtag et dtag de la macro X :

.X mtag -f latex -t oeuvre -c emph -b « -e »
.X mtag -f xhtml,epub -t oeuvre -c em -b « -e »
.X mtag -f latex -t auteur -c textsc
.X mtag -f xhtml,epub -t auteur -c b
.X dtag -f latex -t centrer -c center
.X dtag -f xhtml,epub -t centrer -c div

Ces tags vont être retranscrits en LaTeX par des commandes/environnements et en HTML et EPUB par des balises HTML auxquelles s'ajoutera une classe avec le nom du tag précisé en frundis.

Les mtag Les définitions avec mtag (marquant du texte au sein d'un paragraphe) pourront être utilisées grâce à la macro Sm ou son analogue multiligne formé des macros Bm et Em :

Hier, j'ai lu
.Sm -t oeuvre Le Quichotte ,
de
.Bm -t auteur
Cervantès
.Em .

Qui sera rendu : “Hier j'ai lu « Le Quichotte », de Cervantès.”

Note. Si un .P apparaît à l'intérieur d'un block délimité par .Bm et .Em, en LaTeX et HTML les commandes et éléments de marquage se refermeront avant la fin du paragraphe, puis se rouvriront en début du paragraphe suivant.

Les dtag Les définitions avec dtag (pouvant englober plusieurs paragraphes de texte) pourront être utilisées grâce aux macros Bd et Ed :

.Bd -t centrer
Texte centré.
.Ed

Ce texte sera centré et apparaîtra en LaTeX dans l'environnement « center » (entre \begin{center} et \end{center}).

En HTML, on obtiendra un <div class="centrer"> ... </div> : il faudra ajouter au style css la class « centrer » du <div> créé (par défaut, si l'on ne spécifie pas, ce sera toujours un <div>).

1.3 Comment inclure du texte frundis pour un format spécifique ?

Un certain nombre de macros acceptent une option -f qui permet de préciser que le champ d'action de cette macro ne concerne qu'un format spécifique.

En particulier, des morceaux de code frundis peuvent être inclus conditionnellement à l'aide de la macro : #if :

.\" par exemple pour n'inclure la table de matières que pour LaTeX:
.#if -f latex
.Tc
.#;

Un autre cas courant, est celui de la macro If (Include file), utilisée pour inclure un fichier :

.\" Pour n'inclure un fichier que lors de l'export EPUB:
.If -f epub fichier-a-inclure.frundis

1.4 Comment inclure du HTML ou du LaTeX tels quels ?

Pour cela, il faut utiliser la macro Ft ou son analogue multiligne formé des macros Bf et Ef. Par exemple :

.\" Écrire un <hr> en HTML:
.Ft -f xhtml <hr>

Si la quantité de LaTeX ou HTML à inclure tel quel est importante, il peut être intéressant de la déplacer vers un autre fichier, puis de l'inclure grâce à l'option -as-is de la macro If :

.\" Inclure tel quel un fichier HTML:
.If -as-is -f xhtml fichier.html

1.5 Comment faire une page de titre simple ?

Pour utiliser la page de titre par défaut de frundis, il faut d'abord définir trois paramètres :

.X set document-title "Mon titre"
.X set document-author "L'auteur"
.X set document-date "2058"

Il suffira alors de changer la valeur du paramètre : title-page

.X set title-page 1

et la page de titre sera créée.

1.6 Comment personnaliser les entêtes et métadonnées ?

Lorsque l'on utilise l'option s (standalone), frundis insère un préambule minimal pour LaTeX, et un fichier HTML complet avec entêtes pour HTML.

Pour personnaliser encore plus la sortie LaTeX, il est possible d'inclure son propre préambule LaTeX, et cela via le paramètre latex-preamble :

.X set latex-preamble chemin/vers/le/préambule/latex

Pour personnaliser la sortie EPUB, il existe également des paramètres : epub-css pour le style, epub-cover pour introduire la couverture, etc. Il est possible de choisir la version de l'EPUB (2 ou 3) grâce au paramètre epub-version. On peut, d'autre part, ajouter des métadonnées arbitraires avec epub-metadata.

1.7 Les poèmes

Les poèmes utilisent la même macro que les listes. Chaque strophe est délimitée grâce à la macro de paragraphe P :

.Bl -t verse "Le Corbeau et le Renard (optionnel)"
.It Maistre Corbeau sur un arbre perché
.It Tenoit en son bec un fromage.
.P
.It Maistre Renard par l'odeur alleché
.It Lui tint à peu près ce language.
.It Et bon jour, Monsieur du Corbeau.
.It Que vous estes joly! que vous me semblez beau!
.El

Il est toujours possible, après, d'améliorer l'export LaTeX, par exemple, en utilisant des commandes LaTeX à l'intérieur :

.Bl -t verse "Le Corbeau et le Renard (optionnel)"
.It Maistre Corbeau
.\" pour introduire une coupure dans le vers par exemple:
.Ft -f latex " \everselinebreak "
sur un arbre perché
.It Tenoit en son bec un fromage.
.El

Note. La macro Ft introduit tel quel le texte pour le format spécifié, comme Bf et Ef, mais sur une seule ligne.