freetable

Autres langues

Langue: pl

Autres versions - même langue

Version: 2001-12-02 (debian - 07/07/09)

Section: 1 (Commandes utilisateur)

NAME

freetable - program u³atwiaj±cy tworzenie HTML-owych tabeli

WERSJA

Ten dokument opisuje freetable w wersji 2.3.

Mo¿e byæ nie w pe³ni prawid³owy je¶li u¿ywasz innej wersji.

SYNOPSIS

freetable [opcje] nazwapliku

lub

freetable [opcje]

Dostêpne opcje to :

-h, --help Program wydrukuje informacjê o sposobie u¿ycia i skoñczy

-V, --version Program wydrukuje numer wersji i skoñczy

-c, --comment Program wstawi przed ka¿d± komórk± komentarz o jej pozycji

-b, --no-nbsp Program nie wstawi   do pustych komórek celem wizualnego ich obni¿enia na graficznych przegl±darkach

-w, --warning Program wstawi ostrze¿enie ¿e powinna¶ raczej zmieniaæ Œród³o ni¿ tabelê przed ka¿d± tabel±, któr± stworzy.

-l, --location Program zamieni tagi lokacyjne <row> i <col> wewn±trz tabeli na pozycjê komórki, w której wyst±pi±.

-m, --macro [program]
               Program przepu¶ci tabelê przez makroprocesor (domy¶lnie: m4)

OSTRZE¯ENIE

  NIE U¯YWAJ MAKROPROCESORA NA NIEPEWNYM ¬RÓDLE
  M4 MO¯E ZOSTAÆ U¯YTE DO NARUSZENIA TWEGO BEZPIECZEÑSTWA
  WIÊCEJ INFORMACJI ZNAJDZIESZ URUCHAMIAJ¡C :
 
 

info m4 'UNIX commands' syscmd

DESCRIPTION

Ten program jest wyzwolonym (wolnodostêpnym) nastêpc± wwwtable.

HTML to ¶wietny jêzyk, ale ma straszn± niedoróbê : tabele. Spêdzi³em wiele czasu wpatruj±c siê w HTMLowy kod i próbuj±c zgadn±æ, która komórka kodu odpowiada której w przegl±darce.

Je¶li równie¿ mia³e¶ ten problem, to byæ mo¿e za chwilê zostanie rozwi±zany.

Program czyta z pliku lub ze stdin. Szuka linii zaczynaj±cej opis tabeli :

     <wwwtable [opcje]>
 
 

Analizuje ten opis, wstawia poprawn± HTML-ow± tabelê i szuka nastêpnego opis, a¿ plik siê skoñczy.

SK£ADNIA TABELI

Jest bardzo prosta :
     wwwtable 
     <wwwtable [opcje]>
     [preambu³a]
     [komórka]
     [komórka]
     ...
     </wwwtable>
 
 

opcje bêd± przekazane do taga <table>. Preambu³a to dowolny HTML-owy text. Bêdzie umieszczony bezpo¶rednio przed tabel±.

komórka to albo normalna_komórka (tag <td>) albo nag³ówkowa_komórka (tag <th>). Tak przynajmniej by³o w starszych wersjach freetable. W nastêpnej sekcji s± opisane nowe metody adresowania komórek.

     normalna_komórka :
     (rz±d,kolumna) opcje
     zawarto¶æ
 
 
     nag³ówkowa_komórka :
     ((rz±d,kolumna)) opcje  
     zawarto¶æ
 
 

opcje bêd± przekazane do komórkowego taga. Atrybuty colspan i rowspan s± uwzglêdniane podczas tworzenia tabeli.

zawarto¶æ ma¿e zawieraæ text, tagi a nawet osadzon± tabelê.

Je¶li u¿ywasz opcji -m (lub --macro), zawarto¶æ bêdzie przerobiona przez m4(1), z <row> i <col> ustawionymi na adres aktualnej komórki

rz±d i kolumna mog± byæ zarówno liczbami, wyra¿eniami wzglêdnymi, albo regex'ami. W przeciwieñstwie do wwwtable, z freetable mo¿esz u¿ywaæ regex'ów równie¿ dla komórek nag³ówka. Mo¿esz równie¿ u¿ywaæ *, co znaczy dok³adnie tyle co .*.

Wyra¿enia wzglêdne to :

= albo pusta znaczy : tyle samo co w poprzedniej komórce

+ albo +X znaczy : o 1 lub X wiêcej ni¿ w poprzedniej komórce

- albo -X znaczy : o 1 lub X wiêcej ni¿ w poprzedniej komórce

Je¶li wiele definicji adresuje t± sam± komórkê zarówno opcje jak i zawarto¶æ s± doklejane w kolejno¶ci wyst±pienia.

Je¶li chcesz u¿ywaæ tylko regex'ów musisz powiedzieæ programowi o adresie ostatniej komórki :

     <wwwtable>
     (*,1)
     to s± piewsze kolumny
     (1,*)
     to s± piewsze rzêdy
     (4,4)
     </wwwtable>
 
 

ALTERNATYWNE ADRESY KOMÓREK

Adresowanie komórek za pomoc± wyra¿eñ regularnych jest bardzo niewygodne. Z tego powodu, w freetable 2.0 zosta³y wprowadzone dwie nowe metody. Obie mog± byæ u¿yte zarówno do komórek normalnych jak i nag³ówkowych.

Zachowana jest pe³na wsteczna kompatybilno¶æ. W tym celu zosta³a wprowadzona nowa sk³adnia. Niestety, nie mo¿esz adresowaæ rzêdu i kolumny u¿ywaj±c odmiennych metod. ¯eby obej¶æ ten problem, obie nowe metody s± bardzo tolerancyjne i pozwalaj± na u¿ycie =, +, -, +X -X oraz pustego ³añcucha z tym samym znaczeniem, jakie maj± one w starej metodzie.

Nowe metody potrafi± samodzielnie ustaliæ rozmiar tabeli.

ZASIÊGI

     (zasiêg rzêdów;zasiêg kolumn) opcje
     zawarto¶æ
 
 

Sk³adnia wygl±da jak: 1-2,4-7,9,12. Zduplikowane adresy zostaj± wyeliminowane. Dla potrzeb adresowania relatywnego, u¿yty jest ostatni podany numer. A wiêc je¶li napiszesz

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

Komórka (33,1) bêdzie zawieraæ `foobar' a wszystkie pozosta³e tylko `foo'.

DOWOLNY KOD PERL

     ({kod dla rzêdów},{kod dla kolumn}) opcje
     zawarto¶æ
 
 

Mo¿esz u¿ywaæ dowolnego kodu Perl o ile zmie¶ci siê w jednej linijce, pasuje do naszego wyra¿enia regularnego i da w wyniku listê. Niestety, nie istnieje wyra¿enie regularne pasuj±ce do dowolnego kodu Perl, ale dopóki twój kod nie zawiera },{ ani }), powinno dzia³aæ. Przyk³ad:

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

Da tabele 100 rzêdów x 4 kolumny z `foo' w ka¿dej 1wszej, 2giej i 4tej kolumnie ka¿dego rzêdu o numerze daj±cym reszte 1 w dzieleniu przez 3.

Je¶li chcesz u¿yæ ``dowolnego kodu'' w jednej czêsci adresu a zasiêgu w drugiej zast±p w definicji zasiêgu - przez .. i w³ó¿ zasiêg miêdzy { i }.

Je¶li chcesz u¿yæ ``dowolnego kodu'' w jednej czêsci adresu a wyra¿enia regulernego w drugiej, musisz napisaæ {grep {/wyra¿enie/} od..do}. Niestety, w tym wypadku musisz podaæ rozmiar tablicy.

NIEZGODNOŠCI Z WWWTABLE

Je¶li poprzednio u¿ywa³e¶ wwwtable, a teraz chcesz siê przesi±¶æ, powiniene¶ przeczytaæ ten rozdzia³. Wiêkszo¶æ jest o regex'ach. Zauwa¿ równie¿, ¿e wwwtable nie móg³ u¿ywaæ podstawiania tagów lokacyjnych ani makroprocesora.

Opcja -w ma przeciwne znaczenie. Domy¶lnie ¿adne ostrze¿enie nie jest drukowane, a -w albo --warning s³u¿± wymuszeniu takiego ostrza¿enia.

Komórki nag³ówkowe mog± byæ zdefiniowane za pomoc± regex'ów :

     ((1,*))
 
 

Nie by³o to mo¿liwe z wwwtable.

Liczniki pozycji na osiach s± 100%-owo niezale¿ne. Wynika z tego ¿e kod :

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

umie¶ci Co¶¶ w 3ciej kolumnie. Je¶li chcesz, by by³o w 1wszej, napisz :

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

albo

     (*,) width=30
     (*,+) width=35
     (*,+) width=40
     (=,1)
     Co¶¶
 
 

W freetable 2.0 zosta³y wprowadzone dwie nowe metody adresowania komórek. S± ca³kowicie niezgodne z wwwtable.

BUGS

Adres typu ``Dowolny Kod Perl'' mo¿e nie dzia³aæ ze skomplikowanym kodem.

ZOBACZ RÓWNIE¯

m4(1)

AUTOR

Tomasz Wegrzanowski <taw@users.sourceforge.net>

(zarówno angielska jak i polska wersja)