1 |
Salut tout le monde, j'aimerais savoir s'il y a un spécialiste parmi vous |
2 |
qui sait comment ça fonctionne le xslt, car j'ai commencé à regarder ça et |
3 |
j'aimerais me faire confirmer que je comprend bien comment fonctionne votre |
4 |
fichier guide.xsl |
5 |
|
6 |
On dirait que tout le monde utilise le fichier guide.xsl sans que personne |
7 |
ne sachent comment ça fonctionne vraiment ???? |
8 |
|
9 |
À date voici ce que je pense en gros : |
10 |
Voici comment ça fonctionne l'index : |
11 |
|
12 |
xsltproc --stringparam part 1 --stringparam chap 0 --stringparam style |
13 |
printable test/guide.xsl DocGentoo.xml > test/index.html |
14 |
|
15 |
1.On appelle <xsl:template match="/book"> |
16 |
C'est le main du programme |
17 |
Je vais construire l'index,donc je fais faire apply-templates |
18 |
select="author". |
19 |
|
20 |
2.On appelle <xsl:template match="/book/part"> parce que part =1. |
21 |
|
22 |
3.On appel <xsl: call-template name="printdoclayout"/> parce qu'on a |
23 |
printable comme paramètre. |
24 |
Ça va construire tout sauf le body. |
25 |
|
26 |
4. On appelle <xsl:call-template name="content"/> |
27 |
|
28 |
5.On appelle <xsl:call template name="bookpartcontent"> parce qu'on est dans |
29 |
/part. |
30 |
C'est là qu'on va créer l'index.html |
31 |
|
32 |
6.Il y a aucun trigger d'activé pour cette page, car tout est générer |
33 |
manuellement. |
34 |
7. C'est fini ...voilà !!! |
35 |
|
36 |
Voici comment ça fonctionne un chapitre : |
37 |
|
38 |
xsltproc --stringparam part 1 --stringparam chap 2 --stringparam style |
39 |
printable test/guide.xsl DocGentoo.xml > test/hb_part1_chap1.html |
40 |
|
41 |
1.On appelle <xsl:template match="/book"> |
42 |
C'est le main du programme |
43 |
|
44 |
2.On appelle <xsl:apply-templates select="part" />,car j'ai part = 1. |
45 |
3.On appelle <xsl:apply-templates select="chapter" />, car j'ai chap = 2. |
46 |
4.On appelle <xsl:template match="/book/part/chapter"> |
47 |
5.On appelle <xsl:call-template name="printdoclayout" /> |
48 |
6.On appelle <xsl:call-template name="content"/> |
49 |
7.On appelle <xsl:call-template name="bookpartchaptercontent" /> |
50 |
C'est dans ce template qu'on fait l'index avec le titre du chapitre et les |
51 |
liens direct dans le fichier. |
52 |
|
53 |
8.On va avancer d'un noeud <xsl:apply-templates |
54 |
select="$FILE/sections/section" />. |
55 |
Permet de monter le titre du chapitre dans la section |
56 |
Exemple : 2.a. Configuration du son |
57 |
|
58 |
9.On va aller chercher le body et les sous-section de la section en cours. |
59 |
<xsl:apply-templates select="body|subsection"> |
60 |
<xsl:with-param name="chpos" select="$pos"/> |
61 |
</xsl:apply-templates> |
62 |
Techniquement, une section ne contient pas de body. |
63 |
(Note : Tester si ça fonctionne sans le select="body|") |
64 |
|
65 |
10.On va appeler <xsl:template match="/sections/section/subsection"> |
66 |
C'est là-dedans qu'on va mettre le titre de la sous-section : |
67 |
Exemple : Installation de alsa-utils pour avoir l'utilitaire alsaconf |
68 |
|
69 |
11.C'est maintenant temps d'aller mettre le body de la sous-section. |
70 |
<xsl:apply-templates select="body" /> |
71 |
|
72 |
12. |
73 |
<xsl:apply-templates select="body"> |
74 |
<xsl:with-param name="chid" select="$chid"/> |
75 |
</xsl:apply-templates> |
76 |
</xsl:template> |
77 |
Le select="$chid" est super important, car il va sélectionner tous les fils |
78 |
du body en cours. |
79 |
Donc, tous les triggers vont se déclencher automatiquement au fur et à |
80 |
mesure qu'on va attraper une balise. |
81 |
|
82 |
13.Et voilà c'est finit. |
83 |
|
84 |
J'attends de vos nouvelles,car j'aimerais bien maitriser ce language qui |
85 |
semble très puissant !!! |
86 |
|
87 |
Salut |
88 |
alp |
89 |
Sylvain Alain |
90 |
|
91 |
|
92 |
-- |
93 |
gentoo-user-fr@g.o mailing list |