aplat

Documents structurés pour Unix
git clone git://git.asteride.xyz/~ldp/aplat.git
Journaux | Fichiers | Références | LISEZ-MOI | LICENCE

commit 55a36962297667de7d0e53dff08b47bf0caa9152
parent 31e28c31e3ddb90ce8d5c41a871455bac66e696d
Auteur: Selve <selve@asteride.xyz>
Date:   Mon, 22 Jan 2024 15:01:32 -0500

ajout d'un fichier LISEZ-MOI.txt

Diffstat:
ALISEZ-MOI.txt | 125+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 125 insertions(+), 0 deletions(-)

diff --git a/LISEZ-MOI.txt b/LISEZ-MOI.txt @@ -0,0 +1,125 @@ +aplat(1) +======== + +Convertir le format aplat au format plat. + +Les formats aplat et plat sont équivalents. Le premier a été conçu pour être +facile d'utilisation pour un humain et le second, pour bien s'intégrer aux +utilitaires de traitement de texte des environnements de type Unix. + +dépendances d'exécution +----------------------- + +- POSIX +- libintl + +dépendances de compilation +-------------------------- + +- compilateur C89 +- POSIX +- make (supportant les assignations avec « != ») +- utilitaires gettext + +installation +------------ + +Compiler le programme : + +$ make + +Installer le programme, avec les pages du manuel et les traductions des messages +du programme : + +(Ils s'installeront sous PREFIX, MAN_DOS et I18N_DOS, respectivement. Ces +variables ont chacune une valeur prédéfinie dans Makefile, mais il peut être +utile de les modifier) + +# make install + +objectif +-------- + +Le format XML est très utile pour créer et pour manipuler des documents +structurés. Il est cependant pénible à écrire à la main et trop complexe pour +les besoins de plusieurs projets. Il s'intègre en outre généralement très mal +aux environnements de type Unix. + +Le programme aplat(1) a été conçu pour rendre plus agréable la création de +documents structurés hiérarchiquement et pour rendre possible l'utilisation des +utilitaires de traitement de texte qui fonctionnent bien avec des documents +organisés selons le principe des lignes et des champs (grep, sed, awk, cut, +etc.). + +Deux formats de document ont donc dû être créés : l'un agréable pour les humains +(aplat) ; l'autre agréable pour les machines (plat). Il faut concevoir le format +plat comme un format intermédiaire que divers programmes pourront manipuler le +long d'un tube et qu'on pourra ensuite convertir vers un ou plusieurs autres +formats (XML, HTML, texte, gemtext, epub, etc.) + +utilisation +----------- + +Voici un extrait d'un document au format aplat(5) qui aurait pu servir à la +génération de ce LISEZ-MOI. + +$ cat lisez-moi.aplat +(doc + (@ (titre "Lisez-moi!") + ("nom du programme" aplat) + (description "Convertir le format aplat au format plat")) + (par "Les formats aplat et plats…") + (sous-titre "dépendances") + (par "…")) + +$ aplat <lisez-moi.aplat >lisez-moi.plat + +$ cat lisez-moi.plat +:doc ( +:doc:@ ( +:doc:@:titre () Lisez-moi! +:doc:@:nom du programme () aplat +:doc:@:description () Convertir le format aplat au format plat +:doc:@ ) +:doc:par () Les formats aplat et plats… +:doc:sous-titre () dépendances +:doc:par () … +:doc ) + +On peut alors extraire le titre du document avec la suite de commandes : + +$ <lisez-moi.plat grep '^:doc:@:titre ' | cut -f3 | { tr -d '\n' ; echo ; } +Lisez-moi! + +Le dernier segment de la séquence {tr -d '\n' ; echo ;} est nécessaire parce que +le troisième champ peut s'étendre sur plusieurs lignes. Ainsi, + + :doc:@:titre () Lisez-moi! +et + :doc:@:titre ( Lise + :doc:@:titre ) z-moi! + +sont équivalents. + +Une description de ces deux formats se trouvent dans les pages du manuel +aplat(5) et plat(5). + +contribuer +---------- + +Pour tout commentaire, rapport de bogue ou diff, on peut m'envoyer un courriel +au selve@asteride.xyz. + +Aussi, les messages de ce programme ont été traduits du français au catalan, à +l'espagnol et à l'anglais. La documentation, cependant, n'existe pour l'instant +qu'en français. De l'aide est toujours bienvenue. + +licence +------- + +aplat est disponible sous licence GPLv3. + +auteur +------ + +aplat a été créé et est maintenu par Selve <selve@asteride.xyz>.