1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281
|
=head1 NOM
B<freetable> - outil de gnration automatique de tableaux HTML
=head1 VERSION
Cette documentation dcrit l'utilisation de B<freetable> version 2.3.
Si vous utilisez une autre version, certaines diffrences peuvent
apparaitre.
=head1 SYNOPSIS
B<freetable> I<[options]> F<fichier>
ou
B<freetable> I<[options]>
Options:
I<-h>, I<--help> Affiche cette aide et stoppe
I<-V>, I<--version> Affiche seulement le numro de version
I<-c>, I<--comment> Affiche un commentaire avant chaque
cellule pour indiquer son emplacement
I<-b>, I<--no-nbsp> N'ajoute pas I< > dans les cellules
vides pour modifier le rendu 3D
I<-w>, I<--warning> Affiche un commentaire avant chaque
tableau, indiquant que le tableau est
gnr automatiquement et ne doit pas
tre dit
I<-l>, I<--location> Remplace les indicateurs C<E<lt>rowE<gt>> (ligne)
et C<E<lt>colE<gt>> (colonne) l'intrieur des
tableaux par la position de la cellule
courante.
I<-m>, I<--macro> I<[program]>
Avec cette option, le contenu des
cellules est pass un pr-processeur,
qui est B<m4> par dfaut
=head1 AVERTISSEMENT SUR LA SCURIT
N'UTILISEZ PAS DE MACRO-PROCESSEUR SUR UN
FICHIER SOURCE DONT VOUS N'TES PAS SR.
CELA POURRAIT COMPROMETTRE LA SCURIT DE
VOTRE SYSTME
Plus d'informations dans la documentation de B<m4>,
en particulier la commande I<syscmd>.
=head1 DESCRIPTION
Ce programme est un logiciel libre qui remplace B<wwwtable>.
HTML est un langage agrable, mais avec un norme dfaut : les tableaux.
J'ai pass de nombreuses heures lire le code source que j'avais tout
juste crit pour essayer de comprendre quelle cellule dans le code
source correspond ce qui est affich dans le navigateur.
Si cela vous rappelle une exprience similaire, alors lisez cette
documentation et votre peine ne sera plus qu'un mauvais souvenir.
Le programme reoit en entre du code HTML provenant soit de l'entre
standard (I<stdin>), soit d'un fichier. Il recherche alors les
caractres suivants, qui annoncent l'ouverture d'un tableau:
<wwwtable [options]>
Il analyse le contenu jusqu' dtecter la fin du tableau, affiche le
code HTML correspondant puis continue le traitement avec les tableaux
suivants.
=head1 SYNTAXE
La syntaxe est trs simple:
wwwtable:
<wwwtable [wwwtable_options]>
[preambule]
[cellule]
[cellule]
...
</wwwtable>
La chane optionnelle wwwtable_options est passe telle quelle comme
attribut de la balise C<E<lt>tableE<gt>>. Le prambule n'est pas trait,
il peux contenir n'importe quel code HTML, il sera insr au dbut du
tableau.
Les cellules sont soit des cellules normales (balise C<E<lt>tdE<gt>>),
soit des cellules d'en-tte (balise C<E<lt>thE<gt>>).
Il en tait ainsi jusqu'aux versions 1.x, voyez la prochaine section
pour une autre mthode d'adressage des colonnes.
cellule normale:
(ligne,colonne) options_cellule
contenu_cellule
cellule en-tte:
((ligne,colonne)) options_cellule
contenu_cellule
Le texte contenu dans options_cellule est pass comme attribut
de la balise de la cellule. Les mots-cls I<colspan> et I<rowspan>
sont interprts pour gnrer des tableaux corrects.
Le contenu des cellules (contenu_cellule) est quelconque, il peut mme
contenir d'autres wwwtables !
Si vous utilisez l'option I<-m> (ou son synonyme I<--macro>), le contenu
des cellules sera pass comme entre standard de la commande B<m4>(1),
aprs avoir remplac les chanes de caractres B<E<lt>rowE<gt>> (resp.
B<E<lt>colE<gt>>) par le numro de ligne (resp. colonne) de la cellule.
Les indices de ligne et colonne sont soit des nombres, soit un adressage
relatif, soit une expression rgulire qui dsigne un ensemble de
cellules. la diffrence de B<wwwtable>, B<freetable> peut aussi
utiliser des expressions rgulires dans les cellules d'en-tte. Un
autre ajout est la possiblit d'utiliser I<*> la place de I<.*>.
L'adressage relatif est de la forme :
I<=> ou vide : mme indice que la cellule prcdente
I<+> ou I<+X> : incrmente l'indice de I<X> (dfaut: 1)
I<-> ou I<-X> : dcrmente l'indice de I<X> (dfaut: 1)
Lorsqu'une cellule est dsigne par plusieurs expressions, la fois les
options et le contenu de chaque cellule sont ajouts.
Si vous n'utilisez que des expressions rgulires, il faut indiquer au
programme la position de la dernire cellule.
<wwwtable>
(*,1)
cellules de la colonne 1
(1,*)
cellules de la ligne 1
(4,4)
</wwwtable>
=head1 AUTRE SYNTAXE D'ADRESSAGE
Il n'est pas trs pratique de spcifier les numros de cellules avec des
expressions rgulires. B<Freetable> 2.0 a introduit deux nouvelles
mthodes d'adressage, qui peuvent tre utilises sur les cellules
normales et les cellules d'en-tte.
Une compatibilit totale avec les versions antrieures est assure.
Pour cette raison, il n'tait pas question de modifier la syntaxe
actuelle. Malheureusement, vous ne pouvez pas spcifier les lignes en
utilisant une syntaxe d'adressage, et les colonnes avec une autre
syntaxe. Pour remdier ce problme, les deux mthodes sont trs
souples, si bien que vous ne devriez jamais avoir les mlanger, et
elles vous permettent d'utiliser I<=>, I<+>, I<->, I<+X>, I<-X> et la
chane vide de la mme faon qu'avec B<freetable> 1.x.
De plus, ces nouvelles mthodes dterminent automatiquement la dernire
cellule, contrairement l'adressage par des expressions rgulires.
=head2 BORNES EXPLICITES
(bornes_ligne;bornes_colonne) options_cellule
contenu_cellule
La syntaxe pour I<bornes_ligne> et I<bornes_colonne> est de la forme:
1-2,4-7,9,12. Les doublons sont limins. Pour les besoins de
l'adressage relatif, le dernier nombre est utilise. Ainsi, quand vous
crivez
(1-100,32;1)
foo
(+,)
bar
la cellule (33,1) contiendra foo bar et toutes les autres seulement
foo .
=head2 CODE PERL QUELCONQUE
({code pour les lignes},{code pour les colonnes}) options_cellule
contenu_cellule
Vous pouvez utiliser n'importe quel code Perl qui tient sur une seule
ligne du moment qu'il est repr oar notre expression rgulire (pas
trs fute) et renvoie une liste. Il n'est malheureusement pas possible
de dtecter n'importe quel code de Perl grce une expression
rgulire, mais du moment qu'il ne contient pas les squences I<},{> et
I<})>, cela devrait marcher. Exemple :
<wwwtable>
({grep {$_%3 == 1} 1..100},{1..2,4})
foo
</wwwtable>
va crer un tableau de 100 lignes par 4 colonnes avec foo dans les
premires, deuxime et quatrime colonnes de chaque ligne dont le numro
vaut 1 modulo 3.
Si vous voulez mlanger cet adressage avec le prcdent, il suffit de
remplacer I<-> par I<..> dans la dfinition des bornes, et l'entourer
par des accolades I<{> et I<}>.
Si vous voulez mlanger cet adressage avec une expression rgulire,
vous pouvez remplacer cette dernire par I<{grep {/expression/} min..max}>.
Il est malheureusement obligatoire de spcifier explicitement la
dimension du tableau.
=head1 INCOMPATIBILITS AVEC WWWTABLE
Les utilisateurs de B<wwwtable> qui dcident de passer B<freetable>
devraient lire cette section. La majorit des incompatibilits
proviennent du traitement des expressions rgulires. Il faut aussi
noter que B<wwwtable> ne permettait ni le remplacement automatiques des
numros de lignes et de colonnes, ni l'utilisation d'un
pr-processeur.
L'option I<-w> a le comportement oppos. Nous n'crivons aucun
commentaire par dfaut, et I<-w> ou I<--warning> est utilise pour les
ajouter.
Les cellules d'en-tte peuvent tre dfinies avec des expressions
rgulires, par exemple
((1,*))
ce qui tait impossible avec B<wwwtable>.
Les indices des axes sont 100% orthogonaux, ce qui signifie qu'avec le code
suivant
(*,1) width=30
(*,2) width=35
(*,3) width=40
(=,=)
Foo
Foo va apparaitre en 3e colonne, et si vous vouliez qu'il soit en 1e
position, il faut crire
(*,1) width=30
(*,2) width=35
(*,3) width=40
(=,1)
Foo
ou
(*,) width=30
(*,+) width=35
(*,+) width=40
(=,1)
Foo
Avec B<freetable> 2.0, deux mthodes compltement nouvelles d'adressage
des cellules ont t introduites. Elles sont totalement incompatibles
avec B<wwwtable>.
=head1 BUGS
L'utilisation de code Perl quelconque chouera avec du code
complexe.
=head1 VOIR AUSSI
B<m4(1)>
=head1 AUTEUR
Tomasz Wegrzanowski <taw@users.sourceforge.net>
Traduction franaise de la documentation:
Denis Barbier <barbier@debian.org>
=cut
|