Langues: es - fr - en

frundis : un langage de balisage sémantique

1 Introduction

frundis est un langage de balisage sémantique avec une syntaxe à la roff simplifiée, originellement créé pour écrire des romans, mais il peut être utilisé pour des documents divers. Le programme frundis du même nom exporte des fichiers écrits dans ce langage vers les formats LaTeX, XHTML, EPUB, markdown et groff mom. Uniquement les exports vers LaTeX, XHTML et EPUB sont considérés complets et mûrs.

Le langage met l'accent sur la simplicité en faisant usage d'un petit nombre de macros prédifinies flexibles, et essaie de produire de bons messages d'erreurs, tout en permettant de contrôler explicitement le résultat spécifique à un format lorsque c'est nécessaire.

Voici une liste de ses caractéristiques principales :

2 Documentation

frundis est documenté par ses pages man (en anglais) :

Pour un aperçu rapide, jetez un coup d'œil à l'exemple plus bas.

Voici une liste d'autres documents utiles (plus totalement à jour) :

3 Installation

Suivre les instructions du README sur github. Le programme est publié sous licence libre (du type BSD). La dernière version (0.5) peut être téléchargée ici aussi.

La vieille version Perl peut toujours s'obtenir depuis CPAN.

Des patches ou des demandes de pull sont bienvenus !

4 Communauté

Il est possible de s'inscrire à la liste de diffusion des utilisateurs de frundis.

5 Un exemple : cette même page !

Voici le code permettant de générer cette page :

.\" Cette ligne est un commentaire
.\"
.\" Déclarations de tags
.X mtag -f xhtml -t program-name -c span
.X mtag -f xhtml -t code -c code
.X mtag -f xhtml -t voc -c span
.X dtag -f xhtml -t frundis-code -c div
.\" Définition d'une macro pour ne pas trop se répeter :
.#de frundis
.\" Marquage de texte
.Sm -t program-name frundis \$@
.\" Ensuite on pourra écrire .frundis à la place de la
.\" ligne qui précède. Le \$@ est remplacé par les
.\" arguments, utile pour la ponctuation, par exemple.
.\" Fin de la définition :
.#.
.\" La langue : utile en particulier pour l'ajout
.\" automatique d'espaces insécables pour respecter les
.\" règles typographiques françaises.
.X set lang fr
.\" Titre
.X set document-title "frundis: un langage de balisage sémantique"
.\"
.\" Table des matières
.Tc
.\" Image avec « Frundis »
.Im /images/frundis-mini.jpg
.\" Une section
.Sh Introduction
.\" Appel de la macro définie .frundis
.frundis
est un langage de balisage sémantique avec une syntaxe à
la roff simplifiée, originellement créé pour écrire des
romans, mais il peut être utilisé pour des documents
divers. Le programme
.Sm -t code frundis
du même nom exporte des fichiers écrits dans ce langage
vers les formats LaTeX, XHTML, EPUB, markdown et groff
mom.
.Bm
Uniquement les exports vers LaTeX, XHTML et EPUB sont
considérés complets et mûrs.
.Em
.P
Le langage met l'accent sur la simplicité en faisant
usage d'un petit nombre de macros prédifinies flexibles,
et essaie de produire de bons messages d'erreurs, tout
en permettant de contrôler explicitement le résultat
spécifique à un format lorsque c'est nécessaire.
.P
Voici une liste de ses caractéristiques principales:
.\" Commencer une liste "Begin list"
.Bl
.It
Éléments communs comme des liens, images, références
internes, listes (poèmes inclus), tables simples, table
des matières, etc.
.It
EPUB avec méta-données arbitraires. Fichiers html
indexés.
.It
Permet de définir des
.Sm -t voc tags
de balisage dont le rendu peut être configuré.
.It
Insertion de blocs LaTeX, HTML, etc.
.It
Inclusion d'autres fichiers. Filtres, macros et
variables.
.It
Syntaxe à la roff: simple, claire et s'harmonise bien
avec grep et diff.
.It
Ajout automatique d'espaces insécables pour respecter
les règles typographiques françaises.
.\" Fin de la liste "End list"
.El
.Sh Documentation
.frundis
est documenté par ses pages man (en anglais):
.Bl
.It
.Lk /frundis/frundis-1.html frundis(1)
décrit l'usage en ligne de commande du programme.
.It
.Lk /frundis/frundis_syntax-5.html frundis(5)
décrit la syntaxe du langage.
.El
Pour un aperçu rapide, jetez un coup d'œil à
.\" lien interne avec label
.Sx label "l'exemple plus bas" .
.P
Voici une liste d'autres documents utiles
(plus totalement à jour):
.Bl
.It
.Lk /frundis/faq-fr/index.html "La FAQ de frundis"
.It
.Lk /frundis/tutorial/tuto-projet-multilingue-fr.html \
    "Organiser avec frundis un projet multi-documents et multilingue"
.It
.Lk https://linuxfr.org/users/anaseto/journaux/frundis-philosophie-motivations-et-nouveautes \
    "Sur la philosophie de frundis"
(journal que j'ai posté sur linuxfr pour le première
version de frundis en Perl: un certain nombre de choses
ne sont plus valables).
.El
.Sh Installation
Suivre les instructions du README sur
.Lk https://github.com/anaseto/gofrundis/ github .
Le programme est publié sous licence libre (du type BSD).
.If version.frundis \" fichier définissant le numéro de version
La dernière version (\*[version]) peut être téléchargée
.Lk /frundis/frundis-\*[version].tar.gz ici
aussi.
.P
La vieille version Perl peut toujours s'obtenir
.Lk https://cpan.metacpan.org/authors/id/A/AN/ANASETO/Text-Frundis-2.16.tar.gz "depuis CPAN" .
.P
Des patches ou des demandes de pull sont bienvenus!
.Sh Communauté
Il est possible de s'inscrire à la
.Lk https://listengine.tuxfamily.org/lists.tuxfamily.org/frundis-users/ \
  "liste de diffusion des utilisateurs de frundis" .
.Sh -id label Un exemple: cette même page!
.\" inclure fichier définissant des macros pour blocs de
.\" code
.If ../code.frundis
Voici le code permettant de générer cette page:
.Bd -t frundis-code
.\" Le code source est lui-même filtré par un petit
.\" script de coloration html puis inclus tel quel.
.X ftag -t frundis -shell "perl html_coloration.pl"
.include-code-with-filter frundis intro-fr.frundis
.Ed