|
1 On Mon, Apr 23, 2001 at 11:57:49PM +0200, Jean-Luc et Anna-Maria Donnadieu wrote: |
|
2 > > Je fais tout à partir du XML à la place: il y a plus de souplesse ainsi |
|
3 > > et j'ai jamais trop apprécié les logiciels de transformations |
|
4 > > tex->html... c'est généralement du bizounage pas très solide. |
|
5 > > |
|
6 > > Pour information (attention, je deviens technique là), voici un peu |
|
7 > > l'arbre de transformations: |
|
8 > > |
|
9 > > XML+DSL -->{jade}--> HTML -->{HTML2TEXT}--> Text |
|
10 > > | +-> {html2ps} --> PS |
|
11 > > +-> TeX --> {jadetex} --> DVI -->{dvips} --> PS |
|
12 > > | +-> PDF -->{ps2pdf}--> PS |
|
13 > > +-> RTF |
|
14 > > |
|
15 > > Ça demande toutefois pas mal de matériels installés: |
|
16 > > ... |
|
17 > > apt-get install task-sgml make w3m xfig gs |
|
18 > > ... |
|
19 > |
|
20 > Je me suis mis a la debian, et je vais essayer d'utiliser jade. Mais |
|
21 > j'ai du mal a debuter. J'ai telecharge les sources des arpeges, j'ai |
|
22 > tape make, et j'ai tout un tas de formats qui ont ete generes, c'est |
|
23 > super ! |
|
24 > Maintenant, j'ai du pain sur la planche pour comprendre le |
|
25 > fonctionnement ;-) |
|
26 |
|
27 Tout est dans le fichier Makefile.rules qui peut-être pratiquement |
|
28 utilisé comme tel pour un autre projet similaire. Tu y trouveras les |
|
29 lignes de commandes nécessaire pour faire les transfo. Avec le schéma |
|
30 ci-dessus, tu devrais être capable de t'y retrouver... Et rappelle-toi, |
|
31 man et /usr/share/doc/package sont tes amis! |
|
32 |
|
33 L'autre partie de la magie est dans les fichiers .dsl et dans le |
|
34 répertoire dtd. Voici une petite description de chacun: |
|
35 |
|
36 print.dsl: Fichier DSSSL contenant les instructions pour formatter |
|
37 les éléments XML dans une version imprimable (TeX, PS, PDF). C'est du |
|
38 scheme principalement, avec quelques primitives supplémentaires. Ca |
|
39 vaut la peine de lire la doc fourni dans le paquet |
|
40 docbook-stylesheets-doc pour s'y retrouver un peu. Il donne un bon |
|
41 exemple sur comment ajouter un formattage spécial lorsqu'on ajoute un |
|
42 élément à Docbook (en l'occurence les éléments complist et comp). |
|
43 |
|
44 html.dsl: Meme chose que print.dsl, mais comme le html est une forme de |
|
45 SGML (comme le XML), c'est plus des instructions de transformations |
|
46 (transformer un <emphasize>...</emphasize> en <em>...</em>). Le |
|
47 principe est donc un peu différent. Même paquet pour la doc. |
|
48 |
|
49 arpeges.dtd: Fichier principal qui se contente d'inclure les autres DTD |
|
50 (Document Type Description). C'est ça qui va définir qu'est-ce qui est |
|
51 permis et qu'est-ce qui l'est pas. |
|
52 |
|
53 comp.dtd: Ajout des éléments complist et comp à docbook. Un bon |
|
54 exemple de comment augmenter docbook avec ces propres définitions. Le |
|
55 paquet docbook-doc donne plus d'infos là-dessus, ainsi que Docbook, the |
|
56 definitive guide chez O'Really (aussi disponible sur le net sur |
|
57 www.docbook.org!). Le livre est une excellente référence. |
|
58 |
|
59 struct.dtd: Définition des fichiers des Arpèges. Dans la version |
|
60 courante, tu retrouveras une inclusion conditionnelle: c'est la version |
|
61 simplifié des arpèges, dans laquelle de nombreux fichiers sont exclus |
|
62 (simplement en les faisant pointer vers /dev/null). Note que tu peux |
|
63 définir deux fois la même entité mais seule la PREMIÈRE définition (pas |
|
64 de redéfinition possible!) est prise en compte (ce qui permet de faire |
|
65 un parser en une seule passe)... C'est pourquoi l'ordre d'inclusion est |
|
66 très important. |
|
67 |
|
68 terms.dtd: Définition d'abbréviations. En fait, très peu sont des |
|
69 abbréviations... Ce sont plus des termes que je veux garder afin de les |
|
70 retrouver plus facilement s'il change. J'ai mis quelques abrégés connus |
|
71 (&mj; => meneur du jeu) mais l'expérience m'a montré qu'à la longue, |
|
72 c'était bon d'éviter d'en faire trop et que c'était plus facilement |
|
73 lisible ainsi. De plus, avec un éditeur comme Emacs et le mode PSGML, |
|
74 c'est pas plus long à écrire. La touche miracle? Ctrl-/ qui complète |
|
75 un mot à partir des mots déjà écrit. Par exemple, si tu as déjà écrit |
|
76 une fois &Competence;, tu n'as qu'à faire &Com<CTRL-/> et il va te |
|
77 trouver la première occurence d'un mot qui commence par &Com... Si c'est |
|
78 pas le bon, C-/ à nouveau et tu passes au suivant. Chouette, n'est-ce |
|
79 pas. Si tu préfères Vim, dans le mode d'insertion, c'est C-N (en mode |
|
80 insertion) qui fait un truc semblable. ':help completion' pour les |
|
81 autres raccourcis. |
|
82 |
|
83 Le reste, c'est du SGML bien standard, du texte. |
|
84 Toutefois, j'avoue sans humilité que les Arpèges sont un exemple |
|
85 intéressant des capacités des Arpèges. |
|
86 |
|
87 > Connais-tu une bonne adresse pour trouver de la doc ? |
|
88 |
|
89 Pour le XML, XMLfr.org est excellent et contient beaucoup de tutoriels |
|
90 en français. Par contre, ça parle beaucoup des XPath, XSL et tout le |
|
91 reste, dont les outils sont encore plutôt bêta (et principalement en |
|
92 Java en plus; très lourd pour ma machine donc). Même chose pour |
|
93 www.xml.org et www.w3.org. Le paquet wdg-html-reference contient |
|
94 plusieurs des documents (standards) qu'on retrouve sur le site de |
|
95 w3.org. Mais c'est un peu lourd parfois comme lecture. À utiliser plus |
|
96 comme référence. |
|
97 |
|
98 J'utilise présentement du DSSSL pour les Arpèges qui est du Scheme avec |
|
99 des primitives pour l'impression. Le site de Normand Walsh |
|
100 (www.nwalsh.com) et celui de James Clark (www.jclark.com) contiennent |
|
101 beaucoup d'infos et tutoriel à ce niveau mais la spec elle-même est peu |
|
102 digestible. Si tu as le courage et que tu es prêt à faire des |
|
103 tentatives, Norman Walsh a déjà un docbook-stylesheets en XSL ainsi que |
|
104 des instructions à ce sujet sur son site. D'excellents livres à ce |
|
105 sujet ainsi que sur le XML. J'ai bien apprécié the XML companion ainsi |
|
106 que the XSL companion chez Addison Wesley. Ce dernier peut aussi |
|
107 fournir une bonne introduction au modèle de mise-en-page utiliser pour |
|
108 le DSSSL (et les CSS) puisque c'est pratiquement le même avec des |
|
109 primitives presque identiques. Il y'a aussi the XML Blackbook chez |
|
110 Coriolis qui semble aussi bien fourni. |
|
111 |
|
112 Finalement, il y a aussi le site de openjade.sourceforge.net. Je n'ai |
|
113 toutefois pas encore essayé ce dernier mais les dernières nouvelles (qui |
|
114 sont quand même assez vieille) indiqué l'introduction de quelques |
|
115 incompabilité avec jade standard... c'est donc à tes risques. |
|
116 |
|
117 > |
|
118 > Jean-Luc |
|
119 |
|
120 |
|
121 Bonne chance! Moi, il me reste juste à mettre tout ça dans un fichier |
|
122 HACKING pour ne pas avoir à le réécrire la prochaine fois ;) A+ et |
|
123 bienvenue sur Debian... |
|
124 |
|
125 En passant, si tu as upgradé sur woody, un petit package bien cool et |
|
126 pratique pour faire le ménage: debfoster... ça ajoute le petit rien qui |
|
127 manquait à apt pour en faire mon package tool de rêve. C'est d'ailleurs |
|
128 probablement recompilable sur potato (dépendance sur libc seulement)... |
|
129 Faudrait que j'y vois. http://packages.debian.org/debfoster pour plus |
|
130 d'infos. |
|
131 |
|
132 Fabien |
|
133 |
|
134 -- |
|
135 -------------------------------* *------------------------- |
|
136 Fabien Niñoles / / fabien@tzone.org |
|
137 Chevalier Servant de Sa Dame / / C15D FE9E BB35 F596 127F |
|
138 Veneur Gris par la Clef / / BF7D 8F1F DFC9 BCE0 9436 |
|
139 Développeur pour Debian / / http://www.tzone.org/~fabien |
|
140 --------------------------* *------------------------------ |