Provided by:
freetable_2.3-4_all 
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)