JJak tto zzrobić (JTZ) czyli HOWTO po polsku
Bartosz Maruszewski B.Maruszewski@jtz.org.pl
Michał Malarski malarz@it.pw.edu.pl
Piotr Pogorzelski piotr.pogorzelski@ippt.gov.pl
v 3.6, 11 Grudnia 2001
Informacje co to takiego JTZ, skąd się to wzięło, czemu to ma służyć,
komu to jest potrzebne, a komu nie. Najnowsza wersja tego dokumentu
znajduje się na naszym serwerze FTP ftp.jtz.org.pl
oraz na Polskiej Stronie Tłumaczeń
. Chciałbym zauważyć, że
dokument ten dość często się zmienia, więc pilnuj proszę czy masz
najnowszą wersję. Szczególnie zwracam uwagę na słowniczek.
______________________________________________________________________
Spis treści
1. Projekt JTZ
1.1 Co to jest JTZ ?
1.2 Ustalenia, które stały się obowiązującym prawem.
1.3 Ludzie, czyli kto to robi
1.4 Pierwsze rezultaty
1.5 Przetłumaczone dokumenty
2. Słownik
3. Trochę danych technicznych dla tłumaczy.
3.1 Krótki minikurs SGML-a.
3.2 sgml-tools
3.3 Teraz trochę o konwersji.
3.4 Polonizacja pakietu
3.5 Co mam zrobić jeśli chcę poprawić dokument.
4. Technikalia - historia
4.1 Jak korzystać z trybu psgml pod Xemacsem?
4.2 konwersja txt i html a sprawa polska
4.3 Konwersja SGML -> LaTeX a sprawa polska
4.3.1 LaTeX i LaTeX2e (epsilon)
4.3.2 Co nam generuje sgml2latex ?
4.3.3 Program sgml2latex i pliki DVI oraz PS
4.3.4 Konwersja właściwa, czyli jak uzyskać DVI lub PS
4.3.5 Uwagi
5. Od autorów
______________________________________________________________________
11.. PPrroojjeekktt JJTTZZ
11..11.. CCoo ttoo jjeesstt JJTTZZ ??
Wszystko zaczęło się od tego, że kilku osobom chciało się poświęcić
troche czasu (bynajmniej nie wolnego) (choć jeden z nich sugerował, że
podobno miał mieć jakieś ferie, czy coś w tym stylu, lecz przecież
każdy rozsądny człowiek wie, że nie ma czegoś takiego jak ferie,
urlop, wolna chwila. To są puste pojęcia wymyślone przez *owców, które
mają jedynie namącić ludziom w głowach) i wspomóc World Linux
Domination Project Polska (choć część z nich na pewno sobie nie
zdawała sprawy z tego co robi) tłumacząc HOWTO na nasz rodzimy język.
Dosyć szybko zebrała się mała grupka ludzi, którzy rzuciwszy w kąt
inne sprawy zabrali się do dyskusji co przetłumaczyć, jak to
przetłumaczyć i co z tymi tłumaczeniami robić. Na szczęście nie byli w
tym najlepsi (w tłumaczeniach też nie, jak sami zobaczycie), więc się
zajęli innym sprawami (wesela, kino, spacer itp.).
Ku ogólnemu zdziwieniu okazało się, że ich wysiłek nie poszedł na
marne i zaczęły pojawiać się pierwsze efekty ich działań (o nich za
chwilę). Również ich dyskusje, zaowocowały pewnymi ustaleniami, które
od tej pory stały się obowiązującym prawem.
OOssoobbąą kkoooorrddyynnuujjąąccąą projekt jest BBaarrttoosszz MMaarruusszzeewwsskkii
B.Maruszewski@jtz.org.pl
11..22.. UUssttaalleenniiaa,, kkttóórree ssttaałłyy ssiięę oobboowwiiąązzuujjąąccyymm pprraawweemm..
Te ogniste dyskusje, o których wcześniej pisałem (wymiana kilkunastu
listów między trzema osobami) doprowadziły do przyjęcia następujących
zasad :
ˇ Postanowiliśmy, że każdy kto chce dołożyć swoją cegiełkę do tego
projektu, zanim cokolwiek zacznie robić, powinien się z nami
skontaktować i sprawdzić, czy to co chce robić nie zostało już
przez kogoś wzięte. Wyślij list na adres B.Maruszewski@jtz.org.pl i
zatytułuj go "HOWTO-info". Otrzymasz wtedy dokładną listę kto co
robi i jakie dokumenty są wolne.
ˇ Jeśli dokument jest "wolny", zanim się go zacznie tłumaczyć trzeba
o tym poinformować osobę koordynującą rozdział dokumentów
(B.Maruszewski@jtz.org.pl).
ˇ Upewnij się, że posiadasz najnowszą wersję dokumentu (po co się
męczyć dwa razy?) i sprawdź czy autor nie ma jakichś zastrzeżeń co
do tłumaczenia. ZZaawwsszzee informuj autora, że chcesz przetłumaczyć
jego dokument. Możesz zacząć tłumaczyć od razu po wysłaniu listu,
nie czekając na odpowiedź, bo szansa, że autor się nie zgodzi jest
raczej jak 1:1 000 000 :)
ˇ Jeśli jest dostępna wersja oryginału w sgml, to tłumacz raczej ją.
ˇ WW ttłłuummaacczzeenniiaacchh wwyykkoorrzzyyssttuujjeemmyy oopprraaccoowwaannyy wwssppóóllnniiee ssłłoowwnniikk,
starając się zachować wspólne słownictwo (niestety trzeba
zrezygnować z ulubionych zwrotów). Słownik taki otrzymasz wysyłając
list na adres B.Maruszewski@jtz.org.pl i tytułując go "HOWTO-
slownik". Zapoznaj się z nim przed rozpoczęciem tłumaczenia -
uchroni cię to od niepotrzebnych, długotrwałych poprawek. Słownik
ten znajduje się także w tym dokumencie.
ˇ Każdy nagłówek pliku ma wyglądać tak samo. Skopiuj poniższy i zmień
dane:
___________________________________________________________________
Tytuł
Autor: Imię Nazwisko
v0.75, 1 Sierpnia 1996 <-- wersja i data oryginału
Wersja polska: Imię Nazwisko tłumacza
v1.3, 28 Marca 1997 <-- wersja i data tłumaczenia
___________________________________________________________________
Zawsze umieszczaj tę sekcję. Z reguły autorzy także ją umieszczają.
Dodaj tylko od siebie dwie poniższe informacje. Jeśli jej nie ma, to
załóż ją z tymi informacjami.
______________________________________________________________________
Dokument ten został napisany w standardzie ISO-8859-2.
Oryginał tego dokumentu znajduje się pod adresem...
jeśli autor nie podał, to podaj
ftp.icm.edu.pl/pub/Linux/sunsite/docs/HOWTO/(mini)
______________________________________________________________________
Zwróć szczególną uwagę na wszystkie newline.
ˇ Wszystkie teksty piszemy w formacie SGML, z wykorzystaniem
definicji dokumentu (DTD) nazwanej linuxdoc. Polskie litery
kodujemy w jjeeddyynnyymm aktualnym standardzie (dla nieuświadomionych
dodam, że nazywa się on ISO-8859-2). Więcej informacji odnośnie
standardu kodowania można znależć na Polskiej Stronie Ogonkowej
ˇ Zajmujemy się tylko tłumaczeniem, choć bardzo byśmy chcieli nie
możemy jednocześnie aktualizować tłumaczonych dokumentów.
Aktualizować oznacza, że nie możemy weryfikować danych znajdujących
się w oryginale. Jeśli oryginał zostanie zaktualizowany, to każdy
tłumacz jest zobowiązany do uaktualnienia swojego tłumaczenia.
ˇ Każdy dokument musi zawierać rozdział, w którym podane są wszelkie
wprowadzone zmiany w stosunku do oryginału. Najlepiej na końcu
zatytuowany OOdd ttłłuummaacczzaa.
ˇ Tłumaczymy dokumenty HOWTO. Jeśli w przyszłości ich nam zabraknie,
być może weźmiemy się za coś innego.
ˇ Nazw plików nie tłumaczymy, Installation-HOWTO pozostanie dalej
Installation-HOWTO. Dodajemy jedynie rozszerzenie ..ppll..ssggmmll.
ˇ Jak już przetłumaczysz, sprawdzisz i stwierdzisz, że można
tłumaczenie oddać do użytku, to przedtem sprawdź, czy dokument
można przekonwertować na inne formaty.
ˇ Po przetłumaczeniu i sprawdzeniu powyższego poinformuj osobę
koordynującą, czyli Bartka Maruszewskiego B.Maruszewski@jtz.org.pl,
że skończyłeś tłumaczyć dany dokument. TTUU BBYYŁŁYY IINNFFOORRMMAACCJJEE OO
NNAAGGRRYYWWAANNIIUU NNOOWWYYCCHH DDOOKKUUMMEENNTTÓÓWW NNAA FFTTPP
ˇ Jeśli pracujesz nad obszernym dokumentem i chcesz udostępnić jakiś
zrobiony fragment, to też to jest możliwe. TTUU BBYYŁŁYY IINNFFOORRMMAACCJJEE OO
NNAAGGRRYYWWAANNIIUU NNOOWWYYCCHH DDOOKKUUMMEENNTTÓÓWW NNAA FFTTPP
ˇ Oprócz numeracji oryginału stosujemy także numerację tłumaczenia.
Patrz kilka punktów wyżej na temat nagłówka pliku sgml. Numeracja
ta jest niezależna od numeracji oryginału i zawsze zaczynamy od
wersji 1.0
ˇ Jeśli zmieniasz wersję tłumaczenia, to zastosuj się do poniższych
reguł:
ˇ Jeśli są to duże poprawki/zmiany, np.: przeróbka kilku sekcji,
likwidacja niektórych, dodanie nowych, to zmień wersję główną ((11..00
-->> 22..00))
ˇ Jeśli są to średnie poprawki/zmiany, np.: poprawka większej ilości
błędów zmiana kilku adresów, to zmień wersję poboczną ((11..00 -->> 11..11))
ˇ Jeśli są to małe poprawki/zmiany, np.: usunięcie paru literówek,
zmiana jednego/dwóch adresów, to zmień drugą cyfrę po przecinku
((11..00 -->> 11..0011))
Będzie to ułatwienie dla użytkowników, którzy będą wiedzieć czy
opłaca się ściągać nową wersję czy nie.
ˇ Jeśli jest to możliwe, to staraj się w miarę postępowania prac nad
danym dokumentem podawać ich procentowe zaawansowanie. Odpowiedni
formularz jest na WWW. TTOO OODD DDAAWWNNAA JJEESSTT PPOOBBOOŻŻNNYYMM ŻŻYYCCZZEENNIIEEMM..
ˇ Jeśli w dokumencie znajduje się odwołanie do przetłumaczonego już
HOWTO, to zrób odwołanie do tego tłumaczenia a nie oryginału.
Tłumaczenia na serwerze WWW znajdują się w katalogach:
ˇ Html/ - HOWTO
ˇ Html/mini - mini-HOWTO
Nazwa pliku to:
ˇ Nazwa-HOWTO.pl.html - HOWTO
ˇ Nazwa.pl.html - mini-HOWTO
ˇ W związku z powyższym punktem bbaarrddzzoo pprroosszzęę wszystkich tłumaczy,
aby stosowali się do powyższego szablonu.
ˇ Jeśli uaktualniasz swoje tłumaczenie, to bardzo proszę przyślij
osobie koordynującej, czyli Bartkowi Maruszewskiego
B.Maruszewski@jtz.org.pl wiadomość, że to zrobiłeś, żebym mógł
umieścić nowszą wersję na WWW. Przecież nie może myśleć o
wszystkim.
ˇ Pytacie czasami czy możecie wstawiać własne tagi ( itd.).
Otóż żadnych zasad na ten temat nie wypracowaliśmy. Ja tłumaczę
dokument tak jak jest i nie upiększam go, bo nie mam czasu i mi się
nie chce. Wg. mnie jeśli chcesz sie pobawić - proszę bardzo.
ˇ Zastanawiacie się także, czy można używać "mniej oficjalnych" słów.
Otóż wg. mnie takie HOWTO jest pisane przez ludzi i dla ludzi i nie
jest to żadne rządowe pismo super oficjalne itp. Już nie raz
widziałem taki slang, że po kilkukrotnym przeczytaniu nie
wiedziałem o co chodzi... Jednak należy pamiętać o pewnym
umiarze... nie przesadzajmy :)
ˇ Zdarzają sie czasami takie wyrażenia, które ciężko przetłumaczyć na
polski i wychodzą z tego jakieś dziwolągi językowe albo w ogóle nie
mają odpowiednika w j. polskim. W takim przypadku przetłumacz to,
ale podaj dodatkowo w nawiasie wersję oryginalną wyrażenia. Stosuj
to także jeśli tłumaczenie jest dwuznaczne.
11..33.. LLuuddzziiee,, cczzyyllii kkttoo ttoo rroobbii
CChhwwiilloowwoo jest nas niewielu. Ci, o których wiemy (być może są tacy,
którzy samotnie, w zapomnieniu zrobili już tę całą robotę, lecz my o
nich nic nie wiemy) to:
ˇ [mg] Maciek Grochal frytek@tichy.ch.uj.edu.pl
ˇ [bm] Bartosz Maruszewski B.Maruszewski@jtz.org.pl
ˇ [po] Pawko Olszewski alder@amg.com.pl
ˇ [pp] Piotr Pogorzelski piotr.pogorzelski@ippt.gov.pl
ˇ [pt] Piotr Tęczyński pteczyn@amu.edu.pl
ˇ [zb] Ziemek Borowski ziembor@digilab.com.pl
ˇ [bb] Benedict P. Barszcz poseidon@mail.ziplink.net
ˇ [jc] Jakub Chmielewski yacoob@manager.ae.wroc.pl
ˇ [jb] Janusz Batko janus@krakow.linux.org.pl
ˇ [ps] Paweł Świerszcz vampire@aule.mdkna102.krakow.pl
ˇ [jp] Jacek Pliszka Jacek.Pliszka@fuw.edu.pl
ˇ [gsn] Gwidon S. Naskrent naskrent@hoth.amu.edu.pl
ˇ [zb] Zbigniew von Borgosz borg@kki.net.pl
ˇ [bp] Bartek Papierski bartekp@dom.vr.pl
ˇ [pd] Piotr DUDA s0074@pjwstk.waw.pl
ˇ [mm] Michał Malarski malarz@it.pw.edu.pl
ˇ [gn] Grzegorz Nalepa nalepa@ibm.uci.agh.edu.pl
Jeśli chcesz do nas dołączyć zapisz się na naszą listę, lecz pamiętaj,
że jest ona przeznaczona, dla osób pprraaccuujjąąccyycchh nad tłumaczeniami, nie
służy do przyglądania się, jak postępują prace. Adres listy to
_j_t_z_@_i_p_p_t_._g_o_v_._p_l lub _j_t_z_@_j_t_z_._o_r_g_._p_l. Aby się na nią zapisać wyślij na
adres majordomo@ippt.gov.pl list zawierający
subscribe jtz Imię Nazwisko
Paweł Więcek _c_o_v_e_n_@_p_w_r_._w_r_o_c_._p_l opiekuje się pakietem naszych tłumaczeń
dostarczanym dla Debiana. Pakiet ten jest dostępny jako _"_u_n_s_t_a_b_l_e
_d_o_c_-_l_i_n_u_x_-_p_l_" pod adresem
lub na dowolnej kopii serwera GNU/Linux Debian .
Michał Malarski _m_a_l_a_r_z_@_i_t_._p_w_._e_d_u_._p_l stworzył pakiet tłumaczeń
przeznaczonych dla RedHata. Pakiet ten dostępny jest pod adresem
.
11..44.. PPiieerrwwsszzee rreezzuullttaattyy
Postanowiliśmy, że przetłumaczone dokumenty będą udostępniane
szerszemu gronu dopiero, kiedy będą się do tego nadawały ;-). To
znaczy, że przetłumaczony dokument musi wpierw troche poczekać, zostać
ponownie sprawdzony przez autora i dopiero potem może pokazać się
szerszej publiczności.
Chcemy jednak, abyście wiedzieli czego możecie oczekiwać w najbliższym
czasie i jaki jest stopień zaawansowania prac. Czekamy również na
wasze reakcje i oczekiwania. Wasze głosy mogą wpłynąć na kolejność w
jakiej będą tłumaczone te dokumenty. Zajrzyj na Polską Stronę
Tłumaczeń .
Jeśli chcesz wiedzieć nad czym w tej chwili pracujemy, wyślij na adres
B.Maruszewski@jtz.org.pl list, który
w polu SSuubbjjeecctt:: zawiera napis HOWTO-info. Otrzymasz mniej więcej taką
odpowiedz:
______________________________________________________________________
From: Bartosz Maruszewski
Subject: Re: HOWTO-info
Date: Tue, 25 Feb 1997 16:47:27 +0100 (MET)
Lines: 38
========== KTO ========== ===== CO ROBI ===== ===== CO ZROBIL =====
Ja SMB BootPrompt
Kernel
m. Locales
m. DOS2Linux
--------------------------------------------------------------------
Piotr P. META Instalation
Serial ISP-HookUp
NET2 LargeDisk
Ethernet
--------------------------------------------------------------------
Piotr T. XFree86,
WWW
Java-CGI
--------------------------------------------------------------------
Pawko O. Sound
Modules
========== SPIS ==========
Howtos:
BootPrompt(*), BootDisk(*), Instalation(*), Kernel(*), Modules(*),
Printing(-Usage), SCSI, SMB(*), Serial(*), Sound(*), UMSDOS, ISP-HookUp(*),
META(*), NET2(*), Ethernet(*)
Mini-Howtos:
LILO, LargeDisk(*), Colour-ls, Consoles(-Many), DOS2LINUX(*), Getty-ps,
KeySetup, Keystroke, Locales(*), Quota, Swap-Space, Upgrade, X*(*), Diald,
(*) - oznacza zrobione, badz w trakcie tlumaczenia
m. - mini HOWTO
______________________________________________________________________
11..55.. PPrrzzeettłłuummaacczzoonnee ddookkuummeennttyy
Aktualne informacje znajdziesz na Polskiej Stronie Tłumaczeń
.
Wszystkie przetłumaczone dokumenty (w różnych formatach) można znaleźć
na naszym serwerze FTP
22.. SSłłoowwnniikk
Jeśli znajdziesz jakieś nowe słowo/wyrażenie, które nadaje się do
słownika, albo znajdziesz lepsze określene dla któregoś
słowa/wyrażenia już będącego w słowniku, to wyślij je do Bartka
Maruszewskiego B.Maruszewski@jtz.org.pl.
**
v3.4.6
**
acknowledgement - podziękowania (jako tytuł sekcji), wyrazy uznania
actual - rzeczywisty, ostateczny, faktyczny, bieżący
adapter - sterownik
affect - dotyczyć, mieć negatywny wpływ na
aggregate works - prace zebrane
arrangement - ustawienie
aspect ratio - współczynik kształtu/obrazu
based - oparty na
bit bucket - kosz na bity
boot - załadować, wystartować system,
boot diskette - dyskietka startowa
boot prompt - zachęta startowa
broadcasting - rozgłaszanie, nadawanie
can access - ma dostęp
carry out - wypełnij, wykonać, przeprowadzić
chip - układ scalony
command - polecenie
command output - wynik/rezultat polecenia
(to) crash - wywalić się, załamanie, pad/paść
credits - wyrazy uznania
debug - odpluskwiać
derivative works - prace pochodne
disable - wyłączyć
disclaimer - zastrzeżenie
driver - sterownik
to edit - (z)modyfikowac
entry - pozycja
EPROM burner - programator eprom-ów
expire - wygasnąć
feed - zasilać, zasilanie, dostarczać
figure out - stwierdzić
filesystem - system plików
flexibility - elastyczność
for details - więcej na temat szczegółów dotyczących
hack - przerobić (odnośnie jądra Linuksa)
hardware - sprzęt
header/include files - pliki nagłówkowe
interface - interfejs
introduction - wprowadzenie
issue a command - wykonać
xxx issue - sprawa dotycząca xxx
jumper - zworka, przełącznik
kill - usun (o procesie)
learn about - nauczyć się, dowiedzieć się o
line - wiersz
maintain - opiekować się
maintained - prowadzony/pielęgnowany/utrzymywany przez
major - liczba główna
man - podręcznik (man)
map - odwzorowywać
masquerading - maskowanie
memory window - ramka pamięci
minor - liczba poboczna
mirror - kopia
normal - zwykly
note - zauważ, uwaga, zapamiętaj
obey - podlegać, być posłusznym
override -- zmienić, nadpisać
pipe -- potok
poll - sprawdzać, próbkować, monitorować
probe - przeszukiwać, sprawdzać, wykrywać, dokonywać detekcji
processed - interpretowane, przetwarzane
prompt - zachęta
put - umieścić
to query - pytać, sprawdzać
reboot - przeładowanie
reflect - odzwierciedlać
release - wersja, wydanie
root - administrator
root filesystem - główny system plików
section - rozdział
shadow - przesłaniać
share - współdzielić
shell - powłoka, interpreter
shell prompt - zachęta powłoki, interpretera
software - oprogramowanie
spool directory - katalog zadań, katalog buforowania
stream -- strumień
support - obsługiwać
symbolic link - dołączenie/dowiązanie/wskazanie symboliczne
system call - funkcja systemowa
terms of use - warunki stosowania/używania/korzystania
third-party books - książki wydawnictw/autorów, nie związanych z
firmą produkującą opisywaną rzecz
albo
książki osób trzecich
total - całkowity
tune - ustawić, dostroić
unlike - w przeciwieństwie do, niepodobny do
upgrade - odnawianie, odswieżanie, uaktualnianie
usage - stosowanie
using this technique - za pomocą tego sposobu, tym sposobem
utility, tool - narzędzie
work-around - obejści
X - nazwa systemu graficznych okienek uniksa to:
X
X Window System
X Version 11
X Window System, Version 11
X11
***** Żadnej innej _SZCZEGÓLNIE_ *XWindows* nie przyjmuję *****
skróty od zwrotów:
- według - wg
- wyżej wymienione - ww.
==========================================================
Wyrazy których nie tłumaczymy:
firewall, bridge, host, proxy, log, stdin, stdout, locale, *roff,
timeout, routing, router
mieszczą się tutaj także wszelkie polecenia systemowe i nazwy programów
X, emacs, *TeX, *script.
===========================================================
Jak odmieniać wyrazy nietłumaczone, zaczerpnięte z j. angielskiego oraz
wszelkie skróty?
Wyrazy zaczerpnięte z ang. to takie jak: Linux, Unix, fax...
***************
UWAGA
***************
Odmiana słowa Linux:
(podaję za słownikiem języka polskiego)
ten Linux
tego Linuksa
temu Linuksowi
tego Linuksa
z Linuksem
o Linuksie
O! Linuksie. :)
Żadnej innej nie przyjmuję. Jeśli znajdę w jakimś tłumaczeniu:
Linuxie, Linux-ie itp, to NIE AKCEPTUJE go.
Jeśli wyraz kończy się na spółgłoskę, to piszemy
końcówkę polską wg rodzaju jaki dany wyraz przyjmuje w j. polskim
(NIE STOSUJEMY myslnikow do oddzielenia polskiej koncowki od skrotu):
np: ten firewall -- tego firewalla
ten RAM -- tego RAMu
W dopełniaczu (kogo? czego?) skrótu kończącego się na spółgłoskę zawsze
używamy końcówki 'u': DOSu, BIOSu itd.
Jeśli wyraz kończy się na samogłoskę, to dodajemy apostrof i piszemy
końcówkę polską wg rodzaju jaki dany wyraz przyjmuje w j. polskim:
np: ten bridge - tego bridge'a
Jeśli wyraz kończy się na tzw. nieme "e", to lepiej unikać jego
odmiany, np: edytor joe -- w edytorze joe, edytora joe. A nie edytorze
joe'u czy edytora joe'a ...
33.. TTrroocchhęę ddaannyycchh tteecchhnniicczznnyycchh ddllaa ttłłuummaacczzyy..
Wcześniej już zostało wspomniane, że piszemy w formacie SGML. Format
ten bardzo przypomina HTML więc jeśli znasz ten ostatni, to nie
powinien on ci nastręczać większych trudności. Do konwersji z formatu
SGML na inne formaty służy pakiet ssggmmll--ttoooollss.
33..11.. KKrróóttkkii mmiinniikkuurrss SSGGMMLL--aa..
Wielu z was chce się przyłączyć, ale pisze do mnie, że nie zna SGMLa.
No i piszę do każdego litanię wszystkich zasad itp. Żeby tego nie
robić postanowiłem zamieścić kilka porad jak z niego korzystać.
ˇ Przede wszystkim chciałbym zauważyć, że SGML jest podobny do HTMLa
jeśli chodzi o składnię - można właściwie powiedzieć, że jest taka
sama. Np.: w HTMLu piszesz a w SGMLu , w HTMLu - w
SGMLu (wielkość liter oczywiście nie ma znaczenia).
ˇ W SGMLu, tak samo jak w HTMLu, są pewne znaczki o znaczeniu
specjalnym. Są to np.: &, <, >, ~ itp. Żeby je zapisać należy użyć
specjalnej notacji. I tak odpowiednio są to: &, <, >,
˜. Zobacz punkt 3.2 w podręczniku w katalogu
/usr/doc/sgmltools-xxx.
ˇ Najprostszym sposobem na zorientowanie się jak powinien wyglądać
plik źródłowy w SGMLu jest zajrzenie, do któregoś z już napisanych
dokumentów. Ogólnie metoda jest prosta:
- bierzesz nagłówek podany w drugim punkcie tego dokumentu i
kopiujesz go do swojego tłumaczenia.
- dalej wszystko tak samo jak w innych dokumentach SGML.
ˇ Jeszcze jedna ważna uwaga, która przysparza trochę kłopotów. Jeśli
chcesz między początkowym tagiem a końcowym użyć znak /<, to parser
potraktuje, to jako koniec tagu. Należy wtedy stosować tagi w
pełnej postaci, czyli np. tekst. Piszę to, bo można też
stosować skrótową formę:
Pakiet sgml-tools wywodzi się od dawnego pakietu linuxdoc-sgml.
Zmianę nazwy pakietu argumentuje się tym, że poprzednia nazwa wiązała
pakiet z Linuxem, co nie było zgodne z rzeczywistością. Można go było
używać również pod kontrolą innych systemów operacyjnych.
Aktualnie projekt ten jest chwilowo zawieszony, więc z wszelkimi
problemami musimy rodzić sobie sami. Aktualne wersje tego pakietu są
dwie:
ˇ 11..00..99 - ostatnia wersja pakietu wspierająca DTD lliinnuuxxddoocc.
ˇ 22..00..22 - najnowsza wersja pakietu. Od wersji 2.0 nie obsługiwany
jest DTD lliinnuuxxddoocc tylko DTD ddooccbbooookk.
Ponieważ jesteśmy zainteresowani DTD lliinnuuxxddoocc to używamy wersji 11..00..99.
Co prawda nie każę używać ci dokładnie tej wersji, ale nie jestem w
stanie ci powiedzieć, czy wersja, którą używasz można łatwo przekonać
do obsługi polskich tłumaczeń.
33..33.. TTeerraazz ttrroocchhęę oo kkoonnwweerrssjjii..
Jak już wspomniałem do konwersji z formatu SGML służy pakiet programów
ssggmmll--ttoooollss. Programy z tego pakietu, których będziesz używał to
najprawdopodobniej:
ˇ ssggmmllcchheecckk - sprawdzanie poprawności dokumentu SGML
ˇ ssggmmll22hhttmmll - konwersja dokumentu SGML na format HTML
ˇ ssggmmll22ttxxtt - konwersja dokumentu SGML na format tekstowy
ˇ ssggmmll22llaatteexx - konwersja dokumentu na formaty LaTeX / DVI /
PostScript
Aby wygenerować poprawne JTZ-ty musisz prawdopodobnie zmodyfikować
kilka plików z pakietu _s_g_m_l_-_t_o_o_l_s. Informacje jak to zrobić znajdzesz
poźniej.
Do wygenerowania pięciu głównych formatów (poza SGML oczywiście)
należy wykonać kolejno polecenia:
______________________________________________________________________
sgml2html -s 0 -l pl nazwa.pl.sgml
sgml2txt -f -c latin nazwa.pl.sgml
sgml2latex -o ps -p a4 nazwa.pl.sgml
sgml2latex -o dvi -p a4 nazwa.pl.sgml
sgml2latex -o tex -p a4 nazwa.pl.sgml
______________________________________________________________________
W powyższym przykładzie zmienna systemowa PPLLIIKK oznacza nazwę dokumentu
poddawanego konwersji. Jeżeli często przeprowadzasz konwersję do
wszystkich formatów polecam napisanie sobie podobnego skryptu.
______________________________________________________________________
#!/bin/sh
sgml2html -s 0 $1.pl.sgml
sgml2txt -f -l pl -c latin $1.pl.sgml
sgml2latex -o ps -p a4 $1.pl.sgml
sgml2latex -o dvi -p a4 $1.pl.sgml
sgml2latex -o tex -p a4 $1.pl.sgml
______________________________________________________________________
Aby dokonać konwersji należy wywołać powyższy skrypt z parametrem
bedącym nazwą dokumentu SGML (z pominięciem rozszerzeń .pl.sgml)
Oczywiście możesz również eksperymentować z innymi opcjami, ale ten
zestaw opcji wydaje się być najwłaściwszy. Opcje te oznaczają:
ˇ --cc - zestaw znaków użytych w tekście - parametr istotny jedynie
podczas konwersji do formatu tekstowego
ˇ --ss - liczba poziomów podziału na oddzielne pliki dokumentu w
formacie HTML
ˇ --oo - format wyjściowy programu _s_g_m_l_2_l_a_t_e_x
ˇ --pp - format papieru - istotny dla _s_g_m_l_2_l_a_t_e_x
ˇ --ll - język dokumentu - istotne dla _s_g_m_l_2_h_t_m_l w przypadku podziału
dokumentu na pliki
33..44.. PPoolloonniizzaaccjjaa ppaakkiieettuu ssggmmll--ttoooollss
Instrukcja ta dotyczy wersji _1_._0_._9_-_2 pakietu _s_g_m_l_-_t_o_o_l_s. Informacja ta
nie oznacza, że w innych wersjach należy postąpić inaczej. Sposób
postępowania na pewno nie zmienił się od wersji _1_._0_._7. Sposób
postępowania dla starszych wersji pakietu _s_g_m_l_-_t_o_o_l_s czy też dla
pakietu _l_i_n_u_x_d_o_c_-_s_g_m_l (poprzednika pakietu _s_g_m_l_-_t_o_o_l_s) opisany jest w
sekcji historycznej.
Chcemy uzyskiwać poprawne dokumenty w formatach:
ˇ tekstowym (_t_x_t) - nie ma żadnych problemów
ˇ html-owym (_h_t_m_l) - gdy tworzymy wieolopoziomowy dokument HOWTO,
chcemy aby odnośniki typu _P_o_p_r_z_e_d_n_i, _N_a_s_t_ę_p_n_y były odnośnikami w
języku polskim
ˇ LaTeX'owym (_t_e_x) - mamy problem z konwersją polskich liter oraz
napisem Spis Treści
ˇ PostScriptowym (_p_s, _d_v_i - jeżeli dla dokumentu LaTeX jest wszystko
w porządku to tutaj też.
Aby poradzić sobie z powyższymi problemami musimy zmodyfikować dwa
pliki.
Pierwszy z nich odpowiada za odnośniki w wersjach HTML dokumentów.
Jest to plik
/usr/lib/sgml-tools/SGMLTools/Lang.pm
W pliku tym musimy dodać definicję języka polskiego, oraz odpowiednie
napisy dla tej definicji.
Drugi z plików jest plikiem odpowiadającym za znaczniki w generowanym
pliku w formacie LaTeX. Plikiem tym jest
/usr/lib/sgml-tools/dist/linuxdoc/latex2e/mapping
w pliku tym modyfikujemy informację o nagłówku dokumentu LaTeX twor
zonego podczas konwersji. Musimy zdefiniować użycie znaków wg. stan
dardu Latin2 oraz języka polskiego.
Aby było łatwiej dokonać te zmiany przygotowałem odpowiedni patch do
automatycznego dokonania potrzebnych zmian. Patch ten jest dostępny w
sieci .
Ponieważ niektórzy mogą mieć problem ze ściągnięciem ww. pliku jego
zawartość zamieszczam też poniżej:
______________________________________________________________________
*** /usr/lib/sgml-tools/SGMLTools/org/Lang.pm Mon Mar 22 05:29:00 1999
--- /usr/lib/sgml-tools/SGMLTools/Lang.pm Tue May 18 22:44:50 1999
***************
*** 60,65 ****
--- 60,66 ----
pt portuges portuguese
ca catalŕ catalan
it italiano italian
+ pl polski polish
ro română romanian
);
***************
*** 164,169 ****
--- 165,171 ----
"pt" => "Página anterior",
"ca" => "Pŕgina anterior",
"it" => "Indietro",
+ "pl" => "Poprzednia",
"ro" => "Înapoi"
},
"Next" => {
***************
*** 177,182 ****
--- 179,185 ----
"pt" => "Página seguinte",
"ca" => "Pŕgina següent",
"it" => "Avanti",
+ "pl" => "Następna",
"ro" => "Înainte"
},
"Contents" => {
***************
*** 190,195 ****
--- 193,199 ----
"pt" => "Índice",
"ca" => "Índex",
"it" => "Indice",
+ "pl" => "Spis treści",
"ro" => "Cuprins"
},
"Table of Contents" => {
***************
*** 203,208 ****
--- 207,213 ----
"pt" => "Índice geral",
"ca" => "Índex general",
"it" => "Indice Generale",
epackage\[latin2\]{inputenc}\n"
"\\usepackage{t1enc}\n"
- "\\usepackage{babel}\n"
+ "\\usepackage\[polish\]{babel}\n"
"\\usepackage{epsfig}\n"
"\\usepackage{[OPTS]}\n"
"\\def\\addbibtoc{\n"
@@ -39,9 +39,9 @@
"\\usepackage{linuxdoc-sgml}\n"
"\\usepackage{qwertz}\n"
"\\usepackage{url}\n"
- "\\usepackage\[latin1\]{inputenc}\n"
+ "\\usepackage\[latin2\]{inputenc}\n"
"\\usepackage{t1enc}\n"
- "\\usepackage{babel}\n"
+ "\\usepackage\[polish\]{babel}\n"
"\\usepackage{epsfig}\n"
"\\usepackage{[OPTS]}\n"
"\\def\\addbibtoc{\n"
@@ -56,9 +56,9 @@
"\\usepackage{linuxdoc-sgml}\n"
"\\usepackage{qwertz}\n"
"\\usepackage{url}\n"
- "\\usepackage\[latin1\]{inputenc}\n"
+ "\\usepackage\[latin2\]{inputenc}\n"
"\\usepackage{t1enc}\n"
- "\\usepackage{babel}\n"
+ "\\usepackage\[polish\]{babel}\n"
"\\usepackage{epsfig}\n"
"\\usepackage{[OPTS]}\n"
"\\def\\title#1{\n"
______________________________________________________________________
Aby wykorzystać ten plik należy wykonać komendę:
patch -p0 < sgml-tools.patch
To jest wwsszzyyssttkkoo ccoo mmuussiisszz zzrroobbiićć. Powtórzę jeszcze raz: jedyne
operacje jakie musisz wykonać, aby spolonizować _s_g_m_l_-_t_o_o_l_s _1_._0_9 to:
ˇ Wejść w posiadanie pliku ssggmmll--ttoooollss..ppaattcchh.
ˇ Wykonać polecenie ppaattcchh z odpowiednimi parametrami.
ˇ _s_g_m_l_-_o_w_a_ć_, _k_o_n_w_e_r_t_o_w_a_ć_, _t_ł_u_m_a_c_z_y_ć_, _._._. _;_-_)
Jeżeli ktoś jest zainteresowany co dokładnie zostało i dlaczego
zmienione to zapraszam do sekcji TTeecchhnniikkaalliiaa -- hhiissttoorriiaa.
33..55.. CCoo mmaamm zzrroobbiićć jjeeśśllii cchhccęę ppoopprraawwiićć ddookkuummeenntt..
Po pierwsze wszelkie poprawki trzeba nanosić w formacie SGML.
Jeśli znalazłeś literówki, to po prostu popraw je i wyślij poprawioną
wersję do tłumacza. Upewnij się przedtem czy masz najnowszą wersję, bo
może błędy, które poprawiasz są już poprawione w nowszej wersji.
Jeśli chcesz ingerować w treść dokumentu, to postępuj wg. poniższej
instrukcji:
ˇ zachowaj kopię tłumaczenia
ˇ nanieś poprawki, które uważasz za stosowne
ˇ programem ddiiffff utwórz plik zmian wydając polecenie:
___________________________________________________________________
diff -Nu stara-wersja nowa-wersja > zmiany
___________________________________________________________________
ˇ tak utworzony plik zmiany wyślij do tłumacza
44.. TTeecchhnniikkaalliiaa -- hhiissttoorriiaa
Ponieważ niektórzy korzystają ze starszych wersji oprogramowania i z
różnych powodów nie chcą ich zmienić zdecydowaliśmy sie na
pozostawienie starych sposobów zmuszenia do współpracy tamtego
oprogramowania.
44..11.. JJaakk kkoorrzzyyssttaaćć zz ttrryybbuu ppssggmmll ppoodd XXeemmaaccsseemm??
UUWWAAGGAA!!
Wraz z aktualnymi wersjami emacs'a dostarczany jest plik sgml-mode.elc
odpowiedzialny za tryb SGML pod emacsem.
Całkiem prosto:
ˇ zainstalować pakiet linuxdoc-sgml
ˇ dopisać do pliku .bashrc wiersze
LINUXDOCLIB=/usr/lib/linuxdoc-sgml
export LINUXDOCLIB
SGML_PATH=$LINUXDOCLIB/dtd/%N.dtd:$LINUXDOCLIB/dtd/%P.dtd:$LINUXDOCLIB/dist/linuxdoc/html/%N
export SGML_PATH
ˇ uruchomić xemacsa i pisać!
44..22.. kkoonnwweerrssjjaa ttxxtt ii hhttmmll aa sspprraawwaa ppoollsskkaa
UUWWAAGGAA!!
Konwersja na formaty TXT oraz HTML dla użytkowników pakietu linuxdoc-
sgml.
Do konwersji pliku źródłowego SGMLa na HTML i TXT służą odpowiednio
programy _s_g_m_l_2_h_t_m_l i _s_g_m_l_2_t_x_t. Wszystko co musisz pamiętać, to użycie
odpowiedniej opcji dla _s_g_m_l_2_t_x_t, żeby zostawił polskie znaki w
spokoju. Opcja ta, to --ll. Podczas konwersji występuje z reguły błąd
_C_o_u_l_d_n_'_t _f_i_n_d _f_o_n_t _'_C_' czy jakoś tak - otóż nie ma się czym
przejmować. Poprawny dokument tekstowy zostanie wygenerowany.
Co do konwersji na HTML, to tutaj problemu z polskimi literami nie ma,
ale trzeba pamiętać, aby użyć opcji --LL ppoolliisshh, żeby odwołania _N_e_x_t,
_T_a_b_l_e _o_f _C_o_n_t_e_n_t_s i _P_r_e_v_i_o_u_s zamienić na polskie odpowiedniki. Przed
konwersją załóż plik /usr/lib/linuxdoc-sgml/rep/html/polish i wpisz w
nim:
PrevPage: Poprzednia
NextPage: Następna
TOC: Spis Treści
44..33.. KKoonnwweerrssjjaa SSGGMMLL -->> LLaaTTeeXX aa sspprraawwaa ppoollsskkaa
UUWWAAGGAA!!
O ile dobrze pamiętam opis ten dotyczy ostatniej wersji pakietu
lliinnuuxxddoocc--ssggmmll.
_W _p_o_n_i_ż_s_z_y_m _t_e_k_ś_c_i_e _o_p_i_s_u_j_ę _m_o_j_e _u_d_a_n_e _p_r_ó_b_y _k_o_n_w_e_r_s_j_i _d_o_k_u_m_e_n_t_u _z
_p_o_l_s_k_i_m_i _z_n_a_k_a_m_i _d_i_a_k_t_r_y_c_z_n_y_m_i _z_a_p_i_s_a_n_e_g_o _w _f_o_r_m_a_c_i_e _S_G_M_L _n_a _f_o_r_m_a_t
_L_a_T_e_X _o_r_a_z _D_V_I _(_D_e_v_i_c_e _I_n_d_e_p_e_n_d_e_n_t_) _i _P_S _(_P_o_s_t_S_c_r_i_p_t_)_.
44..33..11.. LLaaTTeeXX ii LLaaTTeeXX22ee ((eeppssiilloonn))
Bezproblemowo znaki różnych alfabetów możemy używać tylko w nowym
formacie LaTeXa (tzw. LaTeXu 2e), standardowo pozwalającym na pisanie
z ogonkami. Aby można było używać jawnie polskich liter w LaTeXu w
nagłówku dokumentu w formacie LaTeX wygenerowanego przez program
sgml2latex muszą wystąpić następujące linie:
______________________________________________________________________
\usepackage{t1enc}
\usepackage[latin2]{inputenc}
\usepackage[polish]{babel}
______________________________________________________________________
Najważniejsza jest pierwsza z nich:
______________________________________________________________________
\usepackage{t1enc}
______________________________________________________________________
Linia ta umożliwia w ogóle pisanie z ogonkami.
Kolejna linia:
______________________________________________________________________
\usepackage[latin2]{inputenc}
______________________________________________________________________
umożliwia zapisanie polskich liter w standardzie ISO Latin 2 (ISO
8859-2) a nie jakimiś przedziwnymi zaklęciami magicznymi LaTeXa.
Trzecia z nich, a mianowicie:
______________________________________________________________________
\usepackage[polish]{babel}
______________________________________________________________________
daje nam jedynie dodakowy bajer: słowa w języku polskim w razie
potrzeby zostaną poprawnie podzielone (zgodnie z regułami języka
polskiego oczywiście).
Niestety program sgml2latex, generujący za każdym razem najpierw plik
w formacie LaTeX, a dopiero później korzystając z tego pliku generuje
pliki w formatach DVI i/lub PS, nie generuje odpowiednich linii w tym
pliku.
44..33..22.. CCoo nnaamm ggeenneerruujjee ssggmmll22llaatteexx ??
Program sgml2latex umożliwia wygenerowanie pliku w formacie LaTeX lub
LaTeX2e (z opcją -2e). Wszystko byłoby fajnie gdyby ten plik był
poprawny dla nas (czyli zawierał linie wymienione powyżej). Niesety
tak nie jest. Żeby to poprawić wystarczy jedynie trochę zmodyfikować
plik
/usr/lib/linuxdoc-sgml/rep/latex2e/mapping
w którym jest opisany sposób konwersji pliku SGML do formatu LaTeX2e.
W pliku tym we fragmencie dotyczącym konwersji tagu zamiast
linii
______________________________________________________________________
"\\usepackage\[latin1\]{inputenc}\n"
______________________________________________________________________
należy wstawić trzy następujące linie:
______________________________________________________________________
"\\usepackage{t1enc}\n"
"\\usepackage\[latin2\]{inputenc}\n"
"\\usepackage\[polish\]{babel}\n"
______________________________________________________________________
Pierwsze dwie z tych linii muszą znaleźć się koniecznie, natomiast
trzecia wedle upodobania. Muszę jednak dodać, że w wypadku dodania
trzeciej z tych linii konieczne jest odpowiednie skonfigurowanie
programu dvips (przynajmniej ja to zrobiłem, w każdym razie
korzystając z programu texconfig dodałem polski sposób dzielenia
wyrazów.
Jeżeli korzystając z formatu SGML tworzymy także inne dokumenty można
w taki sam sposób dokonać zmian w sekcjach dotyczących konwersji tagów
, oraz . Te zmiany nie są jednak konieczne gdy
pracujemy wyłącznie z dokumentami HOWTO.
44..33..33.. PPrrooggrraamm ssggmmll22llaatteexx ii pplliikkii DDVVII oorraazz PPSS
Już mamy poprawne generowanie plików w formacie LaTeX2e. Teraz jeszcze
musimy posiadać LaTeXa w wersji 2e. Jeżeli mamy zainstalowany pakiet
tetex (chyba jeden z popularniejszych w dystrybucjach Linuxa) to mamy
odpowiedni program. Ponieważ program sgml2latex oczekuje, że program
LaTeX2e wywołujemy przez latex2e to musimy mu taki sposób wywołania
tego programu zapewnić. Najprościej jest w katalogu /usr/bin utworzyć
skrót o nazwie latex2e do programu latex, czyli:
______________________________________________________________________
cd /usr/bin
ln -s latex latex2e
______________________________________________________________________
44..33..44.. KKoonnwweerrssjjaa wwłłaaśścciiwwaa,, cczzyyllii jjaakk uuzzyysskkaaćć DDVVII lluubb PPSS
Po dokonaniu wyżej wymienionych modyfikacji żadne zmiany w dokumentzch
SGML nie są już konieczne. Wystarczą jedynie odpowiednie opcje
programu sgml2latex. Należy pamiętać o użyciu opcji -2e aby program
generował pliki w formacie LaTeX2e a nie w starszym (LaTeX).
Aby uzyskać wersję w formacie DVI używamy komendy:
sgml2latex -2e -a -d nasz_plik.sgml
Analogicznie możemy wygenerować pliki w formacie PS:
sgml2latex -2e -a -p nasz_plik.sgml
44..33..55.. UUwwaaggii
Rozwiązanie jest w paru miejscach trochę toporne, ale skuteczne.
Osobiście były to moje pierwsze kroki w LaTeXu, więc opis do
czynności, które należy wykonać może być trochę nieodpowiedni.
Wszelkie informacje o LaTeXu jakie potrzebowałem do uzyskania
satysfakcjonujących mnie wyników uzyskałem z Polskiej Strony
Ogonkowej.
55.. OOdd aauuttoorróóww
Wszelkie uwagi do treści tego dokument będą oczywiście mile widziane.
Gwoli wyjaśnienia dodamy tylko, że osobą koordynująca całością prac
jest tylko i wyłącznie Bartosz Maruszewski B.Maruszewski@jtz.org.pl.
Wszelkie uwagi dotyczące sekcji PPrroojjeekktt JJTTZZ oraz SSłłoowwnniikk należy
kierować więc wyłącznie do niego.
Natomiast jeżeli będziesz miał jakieś problemy od strony technicznej z
konwersją dokumentów z formatu SGML, czy też uwagi dotyczące sekcji
TTeecchhnniikkaalliiaa zgłoś się do Michała Malarskiego malarz@it.pw.edu.pl