Provided by: freetable_2.3-4_all bug

NAME

       freetable - program uXatwiajXcy tworzenie HTML-owych tabeli

WERSJA

       Ten dokument opisuje freetable w wersji 2.3.

       MoXe byae nie w peXni prawidXowy jeXli uXywasz innej wersji.

SYNOPSIS

       freetable [opcje] nazwapliku

       lub

       freetable [opcje]

       Dostepne opcje to :

       -h, --help    Program wydrukuje informacje o sposobie uXycia i skon~czy

       -V, --version Program wydrukuje numer wersji i skon~czy

       -c, --comment Program wstawi przed kaXdX komorkX komentarz o jej
       pozycji

       -b, --no-nbsp Program nie wstawi   do pustych komorek celem
       wizualnego ich obniXenia na graficznych przeglXdarkach

       -w, --warning Program wstawi ostrzeXenie Xe powinnaX raczej zmieniaae
       XrodXo niX tabele przed kaXdX tabelX, ktorX stworzy.

       -l, --location Program zamieni tagi lokacyjne <row> i <col> wewnXtrz
       tabeli na pozycje komorki, w ktorej wystXpiX.

       -m, --macro [program]
                      Program przepuXci tabele przez makroprocesor (domyXlnie:
       m4)

OSTRZEXENIE

        NIE UXYWAJ MAKROPROCESORA NA NIEPEWNYM XRODLE
        M4 MOXE ZOSTA UXYTE DO NARUSZENIA TWEGO BEZPIECZEN~STWA
        WIECEJ INFORMACJI ZNAJDZIESZ URUCHAMIAJXC :

       info m4 'UNIX commands' syscmd

DESCRIPTION

       Ten program jest wyzwolonym (wolnodostepnym) nastepcX wwwtable.

       HTML to Xwietny jezyk, ale ma strasznX niedorobe : tabele.  SpedziXem
       wiele czasu wpatrujXc sie w HTMLowy kod i probujXc zgadnXae, ktora
       komorka kodu odpowiada ktorej w przeglXdarce.

       JeXli rownieX miaXeX ten problem, to byae moXe za chwile zostanie
       rozwiXzany.

       Program czyta z pliku lub ze stdin. Szuka linii zaczynajXcej opis
       tabeli :

           <wwwtable [opcje]>

       Analizuje ten opis, wstawia poprawnX HTML-owX tabele i szuka nastepnego
       opis, aX plik sie skon~czy.

SKXADNIA TABELI

       Jest bardzo prosta :

           wwwtable
           <wwwtable [opcje]>
           [preambuXa]
           [komorka]
           [komorka]
           ...
           </wwwtable>

       opcje bedX przekazane do taga <table>.  PreambuXa to dowolny HTML-owy
       text. Bedzie umieszczony bezpoXrednio przed tabelX.

       komorka to albo normalna_komorka (tag <td>) albo nagXowkowa_komorka
       (tag <th>).  Tak przynajmniej byXo w starszych wersjach freetable.  W
       nastepnej sekcji sX opisane nowe metody adresowania komorek.

           normalna_komorka :
           (rzXd,kolumna) opcje
           zawartoXae

           nagXowkowa_komorka :
           ((rzXd,kolumna)) opcje
           zawartoXae

       opcje bedX przekazane do komorkowego taga. Atrybuty colspan i rowspan
       sX uwzgledniane podczas tworzenia tabeli.

       zawartoXae maXe zawieraae text, tagi a nawet osadzonX tabele.

       JeXli uXywasz opcji -m (lub --macro), zawartoXae bedzie przerobiona
       przez m4(1), z <row> i <col> ustawionymi na adres aktualnej komorki

       rzXd i kolumna mogX byae zarowno liczbami, wyraXeniami wzglednymi, albo
       regex'ami.  W przeciwien~stwie do wwwtable, z freetable moXesz uXywaae
       regex'ow rownieX dla komorek nagXowka.  MoXesz rownieX uXywaae *, co
       znaczy dokXadnie tyle co .*.

       WyraXenia wzgledne to :

       = albo pusta znaczy : tyle samo co w poprzedniej komorce

       + albo +X znaczy : o 1 lub X wiecej niX w poprzedniej komorce

       - albo -X znaczy : o 1 lub X wiecej niX w poprzedniej komorce

       JeXli wiele definicji adresuje tX samX komorke zarowno opcje jak i
       zawartoXae sX doklejane w kolejnoXci wystXpienia.

       JeXli chcesz uXywaae tylko regex'ow musisz powiedzieae programowi o
       adresie ostatniej komorki :

           <wwwtable>
           (*,1)
           to sX piewsze kolumny
           (1,*)
           to sX piewsze rzedy
           (4,4)
           </wwwtable>

ALTERNATYWNE ADRESY KOMOREK

       Adresowanie komorek za pomocX wyraXen~ regularnych jest bardzo
       niewygodne. Z tego powodu, w freetable 2.0 zostaXy wprowadzone dwie
       nowe  metody.  Obie mogX byae uXyte zarowno do komorek normalnych jak i
       nagXowkowych.

       Zachowana jest peXna wsteczna kompatybilnoXae.  W tym celu zostaXa
       wprowadzona nowa skXadnia.  Niestety, nie moXesz adresowaae rzedu i
       kolumny uXywajXc odmiennych metod.  Xeby obejXae ten problem, obie nowe
       metody sX bardzo tolerancyjne i pozwalajX na uXycie =, +, -, +X -X oraz
       pustego Xan~cucha z tym samym znaczeniem, jakie majX one w starej
       metodzie.

       Nowe metody potrafiX samodzielnie ustaliae rozmiar tabeli.

       ZASIEGI

           (zasieg rzedow;zasieg kolumn) opcje
           zawartoXae

       SkXadnia wyglXda jak: 1-2,4-7,9,12.  Zduplikowane adresy zostajX
       wyeliminowane.  Dla potrzeb adresowania relatywnego, uXyty jest ostatni
       podany numer. A wiec jeXli napiszesz

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

       Komorka (33,1) bedzie zawieraae `foobar' a wszystkie pozostaXe tylko
       `foo'.

       DOWOLNY KOD PERL

           ({kod dla rzedow},{kod dla kolumn}) opcje
           zawartoXae

       MoXesz uXywaae dowolnego kodu Perl o ile zmieXci sie w jednej linijce,
       pasuje do naszego wyraXenia regularnego i da w wyniku liste.  Niestety,
       nie istnieje wyraXenie regularne pasujXce do dowolnego kodu Perl, ale
       dopoki twoj kod nie zawiera },{ ani }), powinno dziaXaae.  PrzykXad:

           <wwwtable>
           ({grep {$_%3 == 1} 1..100},{1..2,4})
           foo
           </wwwtable>

       Da tabele 100 rzedow x 4 kolumny z `foo' w kaXdej 1wszej, 2giej i 4tej
       kolumnie kaXdego rzedu o numerze dajXcym reszte 1 w dzieleniu przez 3.

       JeXli chcesz uXyae "dowolnego kodu" w jednej czesci adresu a zasiegu w
       drugiej zastXp w definicji zasiegu - przez .. i wXoX zasieg miedzy { i
       }.

       JeXli chcesz uXyae "dowolnego kodu" w jednej czesci adresu a wyraXenia
       regulernego w drugiej, musisz napisaae {grep {/wyraXenie/} od..do}.
       Niestety, w tym wypadku musisz podaae rozmiar tablicy.

NIEZGODNOXCI Z WWWTABLE

       JeXli poprzednio uXywaXeX wwwtable, a teraz chcesz sie przesiXXae,
       powinieneX przeczytaae ten rozdziaX. WiekszoXae jest o regex'ach.
       ZauwaX rownieX, Xe wwwtable nie mogX uXywaae podstawiania tagow
       lokacyjnych ani makroprocesora.

       Opcja -w ma przeciwne znaczenie. DomyXlnie Xadne ostrzeXenie nie jest
       drukowane, a -w albo --warning sXuXX wymuszeniu takiego ostrzaXenia.

       Komorki nagXowkowe mogX byae zdefiniowane za pomocX regex'ow :

           ((1,*))

       Nie byXo to moXliwe z wwwtable.

       Liczniki pozycji na osiach sX 100%-owo niezaleXne. Wynika z tego Xe kod
       :

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

       umieXci CoXX w 3ciej kolumnie. JeXli chcesz, by byXo w 1wszej, napisz :

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

       albo

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

       W freetable 2.0 zostaXy wprowadzone dwie nowe metody adresowania
       komorek. SX caXkowicie niezgodne z wwwtable.

BUGS

       Adres typu "Dowolny Kod Perl" moXe nie dziaXaae ze skomplikowanym
       kodem.

ZOBACZ ROWNIEX

       m4(1)

AUTOR

       Tomasz Wegrzanowski <taw@users.sourceforge.net>

       (zarowno angielska jak i polska wersja)