Page d'accueil(allemand)     Choses ordinateur(anglais) [deutsch]     [english]

fortext

pour réformater les textes de ascii

Téléchargement

fortext-0.04.tgz (8K) [Le code exécutable et stripped est environ 12KB. Le paquet contient les sources et un modèle pour une page de man.]

(n'est besoin que de fichiers include standard.)


Description

Souvent je voulait formater de nouveau des textes de ascii, que j'avait recueillies quelque part dans le réseau. Le gros d'ouvrage toujours était de séparer les paragraphes avec des lignes blanches et puis reformater les sections entre ces lignes avec longeur fixe (év. nouveau). Le dernier peut être fait avec chaque éditeur raisonnable. Le premier j'avais toujours à faire manuellement.

fortext est un programme, qui essaye à deviner les paragraphes dans le texte, et puis reformate le texte d'une manière ou d'une autre suivant les options données. Exécuté sans options il lit de stdin et écrit le résultat à stdout, mais on peut aussi lire d'une fichier et écrire à une fichier. Pour plus informations on peut voir la page de man, qui est produit par un make.

Ici un exemple: J'avais le texte suivant défiguré par des divers lecteurs de nouvelles.

Of the Spirit
-------------
(c) Jasjit Singh, March 1999

The crew of the USS Voyager was celebrating.  They had 
just completed
another milestone in their long journey towards Earth, and 
everyone was in
a jovial mood.  A group of the senior staff agreed to head down 
to the mess
hall for their celebration.  On their way, Tom Paris and 
Seven of Nine
encountered Chakotay in the hallway.

"Chakotay, you'll be joining us in the mess hall?" inquired Paris.
Chakotay grinned but shook his head.
"I need to be getting back to my quarters," he replied.
"Its early still! Come on, have a drink with us," cajoled Paris.
"Thanks but I can't.  It is coming close to my meditation time," said
Chakotay, smiling politely.
"Ah, yes, the daily meditation," Paris nodded.  "You have been doing that
day in and day out, every day since I've known you.  Doesn't it get
repetitive?"
"Repetitive, no.  Customary, yes.  Beneficial, absolutely."
"I don't know, Chakotay.  We're in the twenty fourth century.  We have warp
drive.  We are out among the stars!  Is ancient religion really that
important any more?"

[...]

Sans options fortext produit le r&eacaute;sultat suivant:


Of the Spirit ------------- (c) Jasjit Singh, March 1999

The crew of the USS Voyager was celebrating. They had just completed
another milestone in their long journey towards Earth, and everyone was in
a jovial mood. A group of the senior staff agreed to head down to the mess
hall for their celebration. On their way, Tom Paris and Seven of Nine
encountered Chakotay in the hallway.

"Chakotay, you'll be joining us in the mess hall?" inquired Paris. Chakotay
grinned but shook his head.

"I need to be getting back to my quarters," he replied.

"Its early still! Come on, have a drink with us," cajoled Paris. "Thanks
but I can't. It is coming close to my meditation time," said Chakotay,
smiling politely.

"Ah, yes, the daily meditation," Paris nodded. "You have been doing that
day in and day out, every day since I've known you. Doesn't it get
repetitive?"

"Repetitive, no. Customary, yes. Beneficial, absolutely."

"I don't know, Chakotay. We're in the twenty fourth century. We have warp
drive. We are out among the stars! Is ancient religion really that
important any more?"

[...]

Mais si la ligne avec le paragraphe avant-derrier (jusqu'à "absolutely") serait seulement quelques lettres plus longue, fortext n'avait pas reconnu cette paragraphe correctement, mais l'avait joint avec les lignes suivantes.

fortext-0.02 est, comme le numéro de version le montre, un de mes essais premiers. C'est pourquoi je ne sais pas combien le programme vaut en pratique. Quelques paramètres internes ont encore besoin leur valeurs optimales, ou ils sont au moins à faire configurables par des options.

Copyright

Tous les parts du programme sont sous le licence BSD.

Conditions au système

Le programme fonctionne sur mes boîtes Linux (SuSE-6.4 et 7.0) est sous CygWin sur des systèmes Windows, et se laisse compiler avec le gcc. Les ajustements aux autres bibliothèques C et/ou autres systèmes d'exploitations ne soient pas difficile, parce que le code n'est pas très large.


Page d'accueil(allemand)     Choses ordinateur(anglais) by Michael Becker, 10/2001. Traduit 12/2001. Dernière modification 7/2002