Provided by: freetable_2.3-4_all bug

NOM

       freetable - outil de generation automatique de tableaux HTML

VERSION

       Cette documentation decrit l'utilisation de freetable version 2.3.

       Si vous utilisez une autre version, certaines differences peuvent apparaitre.

SYNOPSIS

       freetable [options] fichier

       ou

       freetable [options]

       Options:

       -h, --help        Affiche cette aide et stoppe

       -V, --version     Affiche seulement le numero de version

       -c, --comment     Affiche un commentaire avant chaque
                         cellule pour indiquer son emplacement

       -b, --no-nbsp     N'ajoute pas   dans les cellules
                         vides pour modifier le rendu 3D

       -w, --warning     Affiche un commentaire avant chaque
                         tableau, indiquant que le tableau est
                         genere automatiquement et ne doit pas
                         etre edite

       -l, --location    Remplace les indicateurs "<row>" (ligne)
                         et "<col>" (colonne) a l'interieur des
                         tableaux par la position de la cellule
                         courante.

       -m, --macro [program]
                         Avec cette option, le contenu des
                         cellules est passe a un pre-processeur,
                         qui est m4 par defaut

AVERTISSEMENT SUR LA SECURITE

        N'UTILISEZ PAS DE MACRO-PROCESSEUR SUR UN
        FICHIER SOURCE DONT VOUS N'ETES PAS SUR.
        CELA POURRAIT COMPROMETTRE LA SECURITE DE
        VOTRE SYSTEME

       Plus d'informations dans la documentation de m4, en particulier la commande syscmd.

DESCRIPTION

       Ce programme est un logiciel libre qui remplace wwwtable.

       HTML est un langage agreable, mais avec un enorme defaut : les tableaux. J'ai passe de
       nombreuses heures a lire le code source que j'avais tout juste ecrit pour essayer de
       comprendre quelle cellule dans le code source correspond a ce qui est affiche dans le
       navigateur.

       Si cela vous rappelle une experience similaire, alors lisez cette documentation et votre
       peine ne sera plus qu'un mauvais souvenir.

       Le programme recoit en entree du code HTML provenant soit de l'entree standard (stdin),
       soit d'un fichier. Il recherche alors les caracteres suivants, qui annoncent l'ouverture
       d'un tableau:

          <wwwtable [options]>

       Il analyse le contenu jusqu'a detecter la fin du tableau, affiche le code HTML
       correspondant puis continue le traitement avec les tableaux suivants.

SYNTAXE

       La syntaxe est tres simple:

           wwwtable:
           <wwwtable [wwwtable_options]>
           [preambule]
           [cellule]
           [cellule]
           ...
           </wwwtable>

       La chaine optionnelle wwwtable_options est passee telle quelle comme attribut de la balise
       "<table>". Le preambule n'est pas traite, il peux contenir n'importe quel code HTML, il
       sera insere au debut du tableau.

       Les cellules sont soit des cellules normales (balise "<td>"), soit des cellules d'en-tete
       (balise "<th>"). Il en etait ainsi jusqu'aux versions 1.x, voyez la prochaine section pour
       une autre methode d'adressage des colonnes.

           cellule normale:
           (ligne,colonne) options_cellule
           contenu_cellule

           cellule en-tete:
           ((ligne,colonne)) options_cellule
           contenu_cellule

       Le texte contenu dans options_cellule est passe comme attribut de la balise de la cellule.
       Les mots-cles colspan et rowspan sont interpretes pour generer des tableaux corrects.

       Le contenu des cellules (contenu_cellule) est quelconque, il peut meme contenir d'autres
       wwwtables !

       Si vous utilisez l'option -m (ou son synonyme --macro), le contenu des cellules sera passe
       comme entree standard de la commande m4(1), apres avoir remplace les chaines de caracteres
       <row> (resp. <col>) par le numero de ligne (resp. colonne) de la cellule.

       Les indices de ligne et colonne sont soit des nombres, soit un adressage relatif, soit une
       expression reguliere qui designe un ensemble de cellules. A la difference de wwwtable,
       freetable peut aussi utiliser des expressions regulieres dans les cellules d'en-tete. Un
       autre ajout est la possiblite d'utiliser * a la place de .*.

       L'adressage relatif est de la forme :

       = ou vide : meme indice que la cellule precedente

       + ou +X : incremente l'indice de X (defaut: 1)

       - ou -X : decremente l'indice de X (defaut: 1)

       Lorsqu'une cellule est designee par plusieurs expressions, a la fois les options et le
       contenu de chaque cellule sont ajoutes.

       Si vous n'utilisez que des expressions regulieres, il faut indiquer au programme la
       position de la derniere cellule.

           <wwwtable>
           (*,1)
           cellules de la colonne 1
           (1,*)
           cellules de la ligne 1
           (4,4)
           </wwwtable>

AUTRE SYNTAXE D'ADRESSAGE

       Il n'est pas tres pratique de specifier les numeros de cellules avec des expressions
       regulieres. Freetable 2.0 a introduit deux nouvelles methodes d'adressage, qui peuvent
       etre utilisees sur les cellules normales et les cellules d'en-tete.

       Une compatibilite totale avec les versions anterieures est assuree. Pour cette raison, il
       n'etait pas question de modifier la syntaxe actuelle. Malheureusement, vous ne pouvez pas
       specifier les lignes en utilisant une syntaxe d'adressage, et les colonnes avec une autre
       syntaxe. Pour remedier a ce probleme, les deux methodes sont tres souples, si bien que
       vous ne devriez jamais avoir a les melanger, et elles vous permettent d'utiliser =, +, -,
       +X, -X et la chaine vide de la meme facon qu'avec freetable 1.x.

       De plus, ces nouvelles methodes determinent automatiquement la derniere cellule,
       contrairement a l'adressage par des expressions regulieres.

       BORNES EXPLICITES

           (bornes_ligne;bornes_colonne) options_cellule
           contenu_cellule

       La syntaxe pour bornes_ligne et bornes_colonne est de la forme: 1-2,4-7,9,12. Les doublons
       sont elimines. Pour les besoins de l'adressage relatif, le dernier nombre est utilisee.
       Ainsi, quand vous ecrivez

           (1-100,32;1)
           foo
           (+,)
           bar

       la cellule (33,1) contiendra X foo bar X et toutes les autres seulement X foo X.

       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 repere oar notre expression reguliere (pas tres futee) et renvoie une liste. Il
       n'est malheureusement pas possible de detecter n'importe quel code de Perl grace a une
       expression reguliere, mais du moment qu'il ne contient pas les sequences },{ et }), cela
       devrait marcher. Exemple :
           <wwwtable>
           ({grep {$_%3 == 1} 1..100},{1..2,4})
           foo
           </wwwtable>

       va creer un tableau de 100 lignes par 4 colonnes avec X foo X dans les premieres, deuxieme
       et quatrieme colonnes de chaque ligne dont le numero vaut 1 modulo 3.

       Si vous voulez melanger cet adressage avec le precedent, il suffit de remplacer - par ..
       dans la definition des bornes, et l'entourer par des accolades { et }.

       Si vous voulez melanger cet adressage avec une expression reguliere, vous pouvez remplacer
       cette derniere par {grep {/expression/} min..max}. Il est malheureusement obligatoire de
       specifier explicitement la dimension du tableau.

INCOMPATIBILITES AVEC WWWTABLE

       Les utilisateurs de wwwtable qui decident de passer a freetable devraient lire cette
       section. La majorite des incompatibilites proviennent du traitement des expressions
       regulieres. Il faut aussi noter que wwwtable ne permettait ni le remplacement automatiques
       des numeros de lignes et de colonnes, ni l'utilisation d'un pre-processeur.

       L'option -w a le comportement oppose. Nous n'ecrivons aucun commentaire par defaut, et -w
       ou --warning est utilisee pour les ajouter.

       Les cellules d'en-tete peuvent etre definies avec des expressions regulieres, par exemple

           ((1,*))

       ce qui etait impossible avec 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
       ecrire

           (*,1) width=30
           (*,2) width=35
           (*,3) width=40
           (=,1)
           Foo

       ou

           (*,) width=30
           (*,+) width=35
           (*,+) width=40
           (=,1)
           Foo

       Avec freetable 2.0, deux methodes completement nouvelles d'adressage des cellules ont ete
       introduites. Elles sont totalement incompatibles avec wwwtable.

BUGS

       L'utilisation de X code Perl quelconque X echouera avec du code complexe.

VOIR AUSSI

       m4(1)

AUTEUR

       Tomasz Wegrzanowski <taw@users.sourceforge.net>

       Traduction francaise de la documentation: Denis Barbier <barbier@debian.org>