Écrire des livres avec txt2tags par Aurelio Jargas %!target : xhtml %!encoding: UTF-8 %!style : ../English/writing-book.css %!options: -n --toc --css-sugar --css-inside -o writing-book-fr.html %!preproc: URL_RE_BOOK http://guia-er.sourceforge.net/ %!preproc: URL_HTMLDOC http://www.easysw.com/htmldoc/ %!preproc: SORRY txt2tags ne peut pas vous aider %!postproc: URL_PC_BOOK http://www.picocontainer.org/Contructor+Dependency+Injection+...+Book+Announcement Ce document est un guide rapide montrant l'intérêt d'utiliser txt2tags pour écrire un livre. C'est aussi applicable pour d'autres gros documents tels des guides ou des thèses. = Préface = Je suis l'auteur de txt2tags ``[1]`` et a écrit deux documents publiés en l'utilisant : [Regular Expressions book URL_RE_BOOK] (96 pages) et Shell Programming Course (108 pages). La procédure d'écriture était régulière et sans douleur, donc je veux faire partager cette expérience. Un livre est un vrai gros travail, mais cela n'a pas à être compliqué. Ecrire est organiser des idées dans des structures de texte comme des paragraphes, des sections et des listes. Txt2tags est un outil qui rend cette tâche simple et aisée. Écrire seul ou dans une équipe, avec ou sans gestion de version, un contenu technique ou non, du texte seul ou avec des graphiques, dans tous les cas txt2tags peut être utilisé comme outil principal pour la création de livre. ``[1]`` Txt2tags lit un fichier texte avec un minimum de marques comme ""**gras**"" et ""//italique//"" et convertir en documents HTML, LaTeX et Adobe PageMaker. plus d'infos sur : http://txt2tags.org. = Éditeurs graphiques contre langage à balise = Les deux facons communes d'écrire un livre sont d'utiliser un éditeur visuel (//Microsoft Word//, //Adobe Pagemaker//) ou un langage à balises (//LaTeX//, //docbook//). Avec les éditeurs visuels, vous écrivez et mettez en forme le contenu en même temps. Cette approche est bonne pour de courts documents mais pour des livres de 300 pages, la mise en forme consomme du temps et distrait l'auteur. Dans les langages à balises, vous écrivez le contenu et insérez les marques, un programme externe le convertit dans sa forme finale. L'auteur ne s'occupe pas de la mise en forme mais insérer des ```` et ``\encore{des marques}``. Cela est source d'erreur et très ``intrusive``, rendant le contenu très difficile à lire dans les fichiers source. Txt2tags utilise aussi les balises, mais la grosse différence est que les marques sont minimales, et aussi naturelles que d'utiliser des tirets pour les listes d'items. Ainsi l'auteur ne se concentre que sur le contenu et les fichiers source restent lisibles. = L'approche Txt2tags = En utilisant txt2tags, le processus d'écriture du livre suit les étapes suivantes : + L'auteur(s) apprend quelques règles de marques très simples. + L'auteur écrit le contenu du livre, sans s'occuper des détails tels que les marges, les fontes les couleurs et les tailles. + L'auteur (ou l'éditeur) ouvre le contenu sur un processeur de texte graphique qui lit le HTML (ou le LaTeX ou ...) et termine la mise en forme. L'étape 1 dure quelques minutes. L'étape 2 peut prendre des mois, et l'étape 3 prend quelques jours ou semaines. Vous écrivez le contenu quand vous voulez y passer du temps, il est donc important que cela soit simple, productif et plaisant. Nous allons montrer les arguments qui font que txt2tags peut être utilisé pour cette tâche. = Rapide et acharné = Le temps est le plus important. En utilisant txt2tags vous allez avoir une grande productivité parce que vous écrivez le contenu, pas la mise en forme. - **Première révision rapide** Il est très difficile de démarrer quelque chose, mais txt2tags a une approche agréable pour régler ce problème. Installez vous et écrivez du texte brut. Au bout de quelques minutes, vous ajoutez les marques txt2tags sur le texte et il est prêt à être converti et publié. - **Prévisualisation rapide** Le format final n'a pas d'importance, HTML est le format préféré au moment de l'écriture. Une image de ce qui a été réalisé peut être faite à tout moment, en convertissant les sources en pages HTML, ainsi on peut le lire avec n'importe quel butineur. Si vous avez besoin d'une version imprimable, convertissez le en PDF avec l'excellent outil [htmldoc URL_HTMLDOC]. - **Vue du contenu** Pour avoir rapidement une vue globale du contenu du livre utilisez l'option txt2tags //TOC Only//. Le programme montre la table des matières avec la liste des chapitres et section, numérotés ou non, avec n'importe quelle profondeur. - **Écriture rapide** Les marques de txt2tags sont simples et minimales, très faciles à apprendre. Pas de noms, d'option ou de paramètres. Vous ne devez pas arrêter d'écrire pour insérer des marques, elles se coulent dans le texte. Si vous ne vous rappelez pas d'une marque spécifique oubliez la et continuez à écrire. A la fin faites une relecture globale et insérez rapidement les marques manquantes. - **Conversion Rapide** Même si vous faites un livre de 500 pages, la conversion est rapide. C'est parce que txt2tags agit comme un filtre, convertissant d'un format à l'autre. Il ne fait pas d'index, de compilation, de compression, de tracé ou de traitement important sur les sources. Plus de librairies, de catalogues, de schémas ou de cauchemars DTD. = Organiser les sources en dossiers = Txt2tags a un commande interne pour inclure des fichiers externes n'importe où dans le document. On peut découper le source en de multiples fichiers. - **Chaque chapitre dans un dossier** Vous pouvez faire un dossier pour chaque chapitre, enregistrant les sources dans une arborescence structurée. Dans chaque dossier (chapitre) vous pouvez créer des sous-dossiers pour enregistrer des images, des configurations ou des fichiers inclus. - **Plus de conflits** En séparant les chapitres, des personnes différentes peuvent travailler sur des chapitres différents sans interférence. Chaque équipe travaille sur son propre dossier, éliminant les conflits dus à des changements intempestifs. - **Contrôle d'accès flexible** Avec l'organisation des dossiers et des fichiers, on peut implémenter des règles de contrôle d'accès, positionnant les propriétés et les permissions pour chacun des fichiers ou chapitres. On peut utiliser des outils systèmes standard pour configurer les autorisations de lecture-écriture, comme dans le schéma "utilisateurs et groupes". - **Vue globale des source** Structurer les sources aide aussi à avoir une vue globale du livre, en utilisant une butineur pour voir rapidement la quantité du texte et des images de chaque chapitre. (Astuce : sur UNIX, commandes ``tree`` et ``du``). - **Travaillez sur votre chapitre, oubliez les autres** En séparant les sources en fichiers, vous pouvez convertir un seul chapitre , pas besoin d'attendre que le livre soit terminé. En plus de la rapidité de conversion, un chapitre seul peut être envoyé aux relecteurs ou publié seul, comme échantillon du livre complet. - **Vous découpez, txt2tags regroupe** À la conversion, txt2tags va automatiquement concaténer tous les chapitres dans le livre final, quelle que soit la taille et la grandeur des dossiers. = Le contrôle de version rendu facile = Txt2tags aide le contrôle de version avec des outils ligne (tels que //CVS// and //Subversion//). Les sources sont du texte brut, pas des //données compilées. - **Travaillez avec des lignes courtes** Vous pouvez faire des lignes courtes en les coupant à 72 caractères. Cela va aider au contrôle de version, puisque c'est un outil ligne. Si le format final nécessite une longue ligne (comme PageMaker), txt2tags va les concaténer automatiquement. - **Sources lisibles** Avec des marques minimales, les sources sont lisibles. On peut voir aisément ce qui a changé d'une version à l'autre. Les marques ne polluent pas le texte. - **Gros contenus, petits sources** Avec du texte brut, vous pouvez avoir un gros contenu, avec peu d'occupation du disque. Les gens peuvent faire des ``checkout`` (des sorties du contrôle d'accès) et des ``commits`` même avec des connexions lentes. - **Versionnage de chapitre** Comme vu auparavant, les sources sont organisés en dossiers. Cela rend le contrôle de version séparé possible par chapitre ou par section, cela dépendant de la granularité désirée. = La qualité en premier = Vous pouvez écrire un livre ou écrire LE livre. Txt2tags a des possiblités intégrées pour augmenter la qualité du travail. - **Correction orthographique** Comme les marques de txt2tags sont des symboles et pas des mots, vous pouvez utiliser un correcteur orthographique sur les sources. Il ne s'occupera que du texte et n'essayera pas de corriger les marques. - **Base d'alias** Txt2tags a un //Pre Processing Filters// (filtre avant conversion), où vous pouvez définir des couples clé/valeur. Partout où la clé est trouvée dans le source, elle est remplacée par la valeur au moment de la conversion. Par exemple si vous utilisez la chaine ``URL_GOOGLE`` dans votre texte, elle va apparaître comme ``http://www.google.com`` dans votre livre. Si l'URL de Google change, il n'y a qu'à changer la définition du filtre et toutes les occurences seront remises à jour. Vous pouvez définir autant de clés que vous voulez, et cela sans limite. - **Contenu dynamique** Txt2tags a une commande pour inclure à la conversion du texte pré-formatté dans le document, par exemple un échantillon de code source. Vous pouvez séparer le code source du document et le remettre à jour soit manuellement soit automatiquement. Une bonne idée est de marquer le code source du programme avec des commentaires spécifiques, et un petit programme extrait les parties marquées dans des fichiers séparés. - **Contrôle sur le résultat** Txt2tags a //Post Processing Filters//(filtre après conversion), où vous pouvez définir des règles qui ajustent le document généré. Ainsi si la conversion standard de txt2tags ne vous satisfait pas, vous pouvez ``improve`` avec vos propres filtres. Vous pouvez utiliser les expressions régulières pour faire vos filtres. = Autres avantages = Et il y a plus ! - **Séparer la mise en forme de l'écriture** En utilisant le HTML comme format de sortie, vous pouvez utiliser les fichiers CSS pour voir plusieurs rendus du livre. CSS définit la mise en forme pour les pages HTML, et il y a des éditeurs graphiques pour créer des fichiers CSS. Une équipe peut travailler sur les fichers CSS pendant que l'autre écrit le contenu. - **Inclure des structures complexes** Txt2tags n'a pas le support de toutes les structures utilisées dans les textes : listes, définitions, ``quotation``, ``verbatim area`` et tables. Mais si votre livre a besoin d'une structure plus complexe vous pouvez utiliser la possibilité des "inclusions marquées" (``Pass-Thru Include``) où vous insérez le texte déjà marqué comme une jolie table HTML. Avec txt2tags, les exceptions ne sont pas un problème ! - **Utiliser n'importe quel éditeur** Comme les sources sont du texte brut, même le plus modeste éditeur du monde peut être utilisé pour écrire un livre. Il n'a pas besoin d'autres capacités que d'écrire et sauver du texte. Si vous utilisez un éditeur avec le support txt2tags vous aurez la //coloration syntaxique//, qui aide à identifier les marques txt2tags. Ce sont les éditeurs : Vim, Emacs, Kat et Nano. - **Support technique** Txt2tags a différents canaux de support technique : deux mailing lists (anglais et portugais), un canal IRC et une communauté ``ORKUT``. Pour des projets de livre, vous pouvez envoyer directement des emails à l'auteur du programme, qui vous répondra prioritairement. = Aucun outil ne couvre tous les besoins = Il y a des cas spécifiques où txt2tags n'est pas un bon outil pour écrire un livre. - **Livres très complexes** Les livres qui utilisent des tables compliquées, des formules ou des structures spécifiques, ont besoin d'un éditeur graphique ou un langage de balises plus complexe comme LaTeX. Si votre livre correspond à cela, SORRY. - **Notes de bas de page** Txt2tags n'a pas de support pour les notes de bas de page. Si vous en utlisez peu vous pouvez les ajouter après. Si vous voulez en faire un usage intensif, SORRY. (NdT : Malgré tout avec le système de preproc et postproc propre à txt2tags, il est relativement aisé de rajouter des notes en LaTeX et de les simuler en html). - **Réferences pour des pages, des tables et des images** On peut utiliser un éditeur graphique au moment de la publication pour inclure les index pour les pages, les tables et les images, pas de problème. Mais si vous voulez y référer dans le texte comme "//voir table 4.11 page 35//", SORRY. ---------------------------------------------------------------------- //Writing Books with Txt2tags - Oct/2004// ([voir le source %%infile]) Traduit par Claude Hiebel.