/* _ _____ _ _ * / _ \ \_ _/ | \| \ * / ___/ | | | |\_|\ \ * <_/ |_| |_| \_> * * PTM FAQ v1.0.6 * 1999-2000 Przemek Borys * Napisane w oparciu o pierwotne FAQ PawÅa Olszewskiego * Opis otrzymywania konta w CVS: Tomasz KÅoczko * Druga wersja polonizowania systemu: Filipa Ozimek * Sprawy Debianowe: Piotr Roszatycki * Skrypt add2ptm, sprawa .so, identyfikacja źródeÅ, * Jak tÅumaczyÄ Info: Wojtek Kotwica * Ispell, skrypty i zmienne Årodowiskowe: PaweÅ Wilk * * Spis treÅci: * 1. Co to jest PTM? * 2. Jak zainstalowaÄ pakiet PTM u siebie? (por. też p. 18) * 3. ChcÄ przyÅÄ czyÄ siÄ do projektu! Co zrobiÄ? * 4. O co chodzi w jÄzyku makr, w którym sÄ pisane manuale!? * 5. PrzyjÄte konwencje tÅumaczenia nazw sekcji. * 6. Apropos mi nie dziaÅa po polsku. Co zrobiÄ?! * 7. Jak wydrukowaÄ polskie manuale w postscripcie? * 8. Jak zrealizowaÄ pomysÅ, by nie ÅciÄ gaÄ przy każdej zmianie caÅej * paczki manuali, a tylko manuale, które siÄ zmieniÅy? * 9. Jak zainstalowaÄ pakiet PTM na systemie Debiana? * 10. SÅownik * 11. OdÅwieżanie zawartoÅci manuali * 12. Skrypty i zmienne Årodowiskowe * 12.1 add2ptm * 12.2 heniu * 13. Po co jest plik ispell.sprawdzane? * 14. Apropos/whatis pokazujÄ , że jest tÅumaczenie, a mimo to zamiast * niektórych polskich wyÅwietlane sÄ angielskie strony manuala. * Co zrobiÄ? * 15. Dla tÅumaczy: Linux czy Linuks * 16. Dla tÅumaczy: spolszczanie nazwy X Window System * 17. Identyfikacja źródeÅ * 18. Instalowanie dokumentacji info * 19. Dla tÅumaczy: na co uważaÄ w plikach Texinfo * 20. Kwestie prawne: czy pytaÄ autorów podrÄczników o zgodÄ na tÅumaczenie? * Dodatek I: Literatura * */ /* * 1. Co to jest PTM? */ Od jakiegoÅ czasu daje siÄ zauważyÄ na Åwiecie ÅadnÄ tendencjÄ do lokalizowania (w tym tÅumaczenia) wszelkich pakietów. Do pakietów takich naleÅ¼Ä również strony podrÄcznika systemowego man -- potocznie "manuale". PTM ma na celu tÅumaczenie tych stron na jÄzyk polski. DosÅownie, PTM oznacza Projekt TÅumaczenia Manuali. KoordynujÄ go ja, czyli Przemek Borys <pborys@dione.ids.pl> Projekt powstaÅ w okolicach wrzeÅnia 1998 roku, najstarsze tÅumaczenie, jakie udaÅo mi siÄ znaleÅºÄ w bazie to 11 wrzesieÅ 1998. Podobne projekty istniejÄ na caÅym Åwiecie; wystarczy choÄby przyjrzeÄ siÄ trochÄ anonsom na comp.os.linux.announce. Nawiasem mówiÄ c, nasz wydaje siÄ byÄ na razie jednym z wiÄkszych :) PoczÄ tkowo PTM miaÅo na celu przetÅumaczyÄ standardowy zestaw manuali z pakietu man pages. Jednak szybko okazaÅo siÄ, że to za maÅo. Wiele z niemal we wszystkich systemach obecnych programów dostarcza swoje strony man poza tym systemem. Dlatego w tej chwili nasze prace obejmujÄ wÅaÅciwie wszystko, czego przetÅumaczenie może byÄ użyteczne. Dodatkowo, poczynajÄ c od lipca roku 2000, PTM z inicjatywy Wojtka Kotwicy zaczyna również prace nad polonizowaniem dokumentacji info (dotyczy to przede wszystkim przypadków, gdzie jest ona na dziÅ dzieÅ autorytatywnym źródÅem informacji). Obecnie oficjalnÄ stronÄ projektu jest http://ptm.linux.pl /* * 2. Jak zainstalowaÄ pakiet PTM u siebie? */ Trzeba wykonaÄ kilka kroków. Oto one: a) RozpakowaÄ pakiet do katalogu z manualami, np. /usr/local/man. [PrzemysÅaw Sztoch] man'y standardowo w RH sa w /usr/man, a nie jak napisaliscie w FAQ /usr/local/man. [koniec komentarza] Tak naprawdÄ jest to kwestia konfiguracji programu `man'. (ad PB) b) UstawiÄ zmiennÄ ÅrodowiskowÄ $LANG na wartoÅÄ pl_PL. W bash robi to komenda export LANG=pl_PL c) SkonfigurowaÄ program `man' tak, aby wyÅwietlaÅ polskie znaki -- w tym celu trzeba wyedytowaÄ /etc/man.config i zamieniÄ tam wywoÅania groffa z parametrem -Tascii na -Tlatin1. (W innych dystrybucjach, np. Slackware 7 może to byÄ w pliku /usr/lib/man/conf.) d) JeÅli chcesz, by wyrazy byÅy przenoszone z jednej linii na drugÄ w polskiej konwencji Åamania, skopiuj z /usr/lib/texmf/tex/generic/hyphen/ plik pohyph.tex do pliku /usr/lib/groff/tmac/hyphen.pl. NastÄpnie w /usr/lib/groff/tmac/troffrc ustaw makra .\" Set the hyphenation language to PL'. .do hla pl .\" Load hyphenation patterns from yphen.pl' (in the tmac directory). .do hpf hyphen.pl e) Należy też, o ile tego jeszcze nie masz ustawionego, zadbaÄ o to, by sam manual-pager obsÅugiwaÅ polskie znaki. Np. dla `less' trzeba ustawiÄ zmiennÄ ÅrodowiskowÄ LESSCHARSET=latin1. Znacznie Åadniejszym wyÅciem jest jednak zmiana manual-pagera na na przykÅad pinfo :) (autoreklama -- http://zeus.polsl.gliwice.pl/~pborys/) f) PamiÄtaj o odpowiednich prawach zapisu/odczytu katalogu z manualami, oraz samych manuali (odczytaÄ je powinien móc każdy). /* * 2.1 UzupeÅniajÄ cy sposób -- opisany przez Filipa Ozimka */ (a) można na "sztywno" ustawiaÄ (np. w /etc/profile) zmiennÄ MANPATH na "/usr/local/man/pl_PL:$MANPATH" (b) albo dokonaÄ drobnych modyfikacji w /etc/manpath.config, tj. zastÄ piÄ linie bardzo podobne to tych, nastÄpujÄ cymi: MANPATH_MAP /bin /usr/local/man/pl_PL/ MANPATH_MAP /usr/bin /usr/local/man/pl_PL/ MANPATH_MAP /sbin /usr/local/man/pl_PL/ MANPATH_MAP /usr/sbin /usr/local/man/pl_PL/ MANPATH_MAP /usr/local/bin /usr/local/man/pl_PL/ MANPATH_MAP /usr/local/sbin /usr/local/man/pl_PL/ MANPATH_MAP /usr/X11R6/bin /usr/local/man/pl_PL/ MANPATH_MAP /usr/bin/X11 /usr/local/man/pl_PL/ MANPATH_MAP /usr/games /usr/local/man/pl_PL/ MANPATH_MAP /opt/bin /usr/local/man/pl_PL/ MANPATH_MAP /opt/sbin /usr/local/man/pl_PL/ oraz dodaÄ MANDATORY_MANPATH /usr/local/man/pl_PL oraz MANDB_MAP /usr/local/man/pl_PL/ /var/catman/pl_PL Ten manewr skutecznie u mnie dziaÅa, tzn. "przesÅania" angielskie strony polskimi oraz w razie braku polskiej wyÅwietla angielskÄ . /* * 2.2 UzupeÅniajÄ cy sposób bazujÄ cy na CVSie -- opisany przez JarosÅawa * Kampera */ Opisana metoda pozwala nie tylko zainstalowaÄ najnowsze tÅumaczenia manuali, ale również późniejsze odÅwieżania już istniejÄ cej bazy poprzez pobieranie tylko naniesionych poprawek. Do korzystania z CVS niezbÄdne jest zainstalowanie pakietu cvs dostÄpnego w każdej dystrybucji (chyba) lub ze strony domowej http://www.cyclic.com/. Sposób używania CVS opisany jest w pkt 3 tego FAQ. Po pobraniu zawartoÅci z repozytorium pl_PL należy dodaÄ do zmiennej $MANPATH (znajdujÄ cej siÄ np. w /etc/profile) ciÄ g $HOME/CVS/pl_PL (zakÅadajÄ c, że wÅaÅnie tam skÅadujemy manuale z repozytorium), najlepiej na poczÄ tku zmiennej $MANPATH, wpisujÄ c peÅnÄ (dostÄpnÄ ) ÅcieżkÄ katalogu (np. u mnie /home/jack/CVS/pl_PL) oddzielajÄ c nowy wpis ":" na koÅcu od pozostaÅych argumentów zmiennej. UWAGA: aby wprowadzona nowa wartoÅÄ zmiennej $MANPATH "zadziaÅaÅa" należy siÄ wylogowaÄ i zalogowaÄ ponownie. /* * 3. ChcÄ przyÅÄ czyÄ siÄ do projektu! Co zrobiÄ? */ Przede wszystkim zastanów siÄ, co chcesz tÅumaczyÄ. JeÅli jest ci to obojÄtne -- w porzÄ dku. NastÄpnie zgÅoÅ chÄÄ dziaÅania koordynatorowi projektu (czyli mnie) -- na adres `Przemek Borys <pborys@dione.ids.pl>'. JeÅli masz preferencje co do tÅumaczenia, dobrze je zgÅosiÄ, lecz wpierw spróbuj sprawdziÄ, czy rzeczy, którymi chcesz siÄ zajÄ Ä nie sÄ już (prze)tÅumaczone (sprawdź na stronach www projektu). NastÄpnie przydzielÄ ci teksty do tÅumaczenia i zaznaczÄ w bazie, że siÄ nimi zajmujesz. Ostatnio wrzuciÅem bazÄ z tÅumaczami do CVS (patrz niżej). Można siÄ wiÄc już do niej zapisywaÄ bezpoÅrednio, bez konsultacji ze mnÄ . Plik z bazÄ tÅumaczy to `zasoby/robotnicy', w którym umieszczane sÄ pliki, nad którymi dana osoba pracuje. JeÅli tÅumaczysz manuale, umieszczasz nazwÄ manuala. JeÅli info, umieszczasz nazwÄ plik.texi. Mimo tego odhumanizowania mechanizmu zapisów, postaraj siÄ jednak poinformowaÄ mnie co robiÄ -- sÄ sytuacje, kiedy jako koordynator muszÄ mieÄ rozeznanie, co gdzie siÄ dzieje. W tym momencie dobrze jest siÄ zapisaÄ na listÄ dyskusyjnÄ ptm, wysyÅajÄ c do majordomo@amg.net.pl list o treÅci subscribe ptm WypisaÄ siÄ z niej można wysyÅajÄ c temu samemu robotowi polecenie unsubscribe ptm Na liÅcie możesz liczyÄ na pomoc w tÅumaczeniach i w innych zwiÄ zanych z pracÄ sprawach. Po przetÅumaczeniu tekstu, sÄ dwie drogi do jego zaÅÄ czenia do dystrybucji projektu: a) ZaÅatwiÄ sobie konto CVS na cvs.pld.org.pl. CVS to mechanizm `Concurent Versions System', dajÄ cy w sieci swego rodzaju katalog (taki jak normalne katalogi na twoim dysku), do którego majÄ dostÄp wszyscy pracujÄ cy nad projektem. Katalog ten daje możliwoÅÄ synchronizacji z twojÄ lokalnÄ kopiÄ tych danych i umożliwia ich aktualizacjÄ oraz wprowadzanie zmian, które pochodzÄ od ciebie. CVS posiada oczywiÅcie jeszcze inne możliwoÅci, ale te wydajÄ siÄ najistotniejsze. "Å»eby uzyskaÄ dostÄp RW trzeba wysÅaÄ na pld-cvs@pld.org.pl: - e-adres kontaktowy, - imiÄ i nazwisko - to co zwróci: $ echo -n "<login>:"; perl -e 'print crypt "<password>", "<salt>"; print "\n";' <salt> to dwie dowolne literki. <login> i <password> to chyba nie musze tÅumaczyÄ .. :)" Po uzyskaniu dostÄpu RW do cvs, należy wyeksportowaÄ sobie do Årodowiska zmiennÄ CVSROOT=":pserver:login@cvs.pld.org.pl:/cvsroot". Wtedy można już korzystaÄ z CVS -- przejdź do katalogu, w którym chciaÅbyÅ przechowywaÄ lokalnÄ kopiÄ CVS (np. ~/CVS) i wydaj komendÄ cvs login Wtedy siÄ zalogujesz. NastÄpnie wydaj komendÄ cvs co pl_PL Sprawdzi (CheckOut) ona, czy w repozytorium nie ma czegoÅ nowego -- a jeÅli bÄdzie, to ÅciÄ gnie te zmiany na twój dysk. NastÄpnie robisz coÅ takiego cd ~/CVS/pl_PL/man[1-9] cp /sciezka/gdzie/masz/przetÅumaczony_manual . cvs add przetÅumaczony_manual cd ~/CVS W ten sposób dodaje siÄ pliki do repozytorium. NastÄpnie trzeba je przesÅaÄ (commit) na serwer CVS cvs ci pl_PL I gotowe. BÄdziesz musiaÅ jeszcze tylko wypeÅniÄ opis, co wysyÅasz. b) Mniej zalecany sposób, ale jeÅli nie jesteÅ w stanie używaÄ CVS, to podrzuÄ mi przetÅumaczonego manuala jako zaÅÄ cznik w poczcie. /* * 4. O co chodzi w jÄzyku makr, w którym sÄ pisane manuale!? */ Manuale sÄ pisane z wykorzystaniem makr groffa. Najważniejsze rzeczy, jakie o nich powinien wiedzieÄ czÅonek PTM, to fakt, że makra te majÄ nastÄpujÄ cÄ postaÄ: .X linijka tekstu lub \fX tekst gdzie X okreÅla zmianÄ fontu (np. `B' wÅÄ cza bold, `I' wÅÄ cza kursywÄ, `R' wÅÄ cza standardowy font Roman -- dlatego np. czÄsto można spotkaÄ "wciÄcia" w tekÅcie, majÄ ce postaÄ "teraz sobie coÅ napiszemy \fBboldem\fR, a teraz \fIkursywÄ \fR". Ten tekst można napisaÄ inaczej, np. teraz sobie coÅ napiszemy .B boldem, a teraz .I kursywÄ . W tym drugim wypadku bÄdziemy jednak mieli ten problem, że zarówno przecinek, jak i kropka nie bÄdÄ napisane fontem Roman. Aby to wyeliminowaÄ, stosuje siÄ inny wariant tej metody, przykÅad: teraz sobie coÅ napiszemy .BR boldem , a teraz .IR kursywÄ . Gdy używa siÄ komendy ".XY", to znaczy że pierwsze sÅowo (lub tekst ujÄty w cudzysÅów) po makrze należy wypisaÄ fontem "X", a drugi fontem "Y". JeÅli wystÄpuje wiÄcej sÅów, to wystÄ pi naprzemienne użycie fontów: .RI ( opcje ) lewy nawias zwykÅym fontem, sÅowo 'opcje' kursywÄ , prawy nawias ponownie zwykÅym fontem. Makra typu ".X" dziaÅajÄ na tylko poczÄ tku wiersza, makra "\fX" w dowolnym miejscu tekstu. Komentarze obejmujÄ ce pojedynczy wiersz wprowadza siÄ sekwencjÄ .\" Komentarz IstniejÄ też inne, zwykle kilkuznakowe makra formatujÄ ce. WiÄksze partie tekstu (np.kilka wierszy) najproÅciej komentowaÄ przy użyciu makra ".ig" koniec komentarza wyznaczany jest wówczas makrem ".." .ig komentarz z wielu wierszy; powinny byÄ pominiÄte, np. dlatego, że odnoszÄ siÄ do poprzedniej wersji opisywanego programu .. Dodatkowo, manuale zwykle dzieli siÄ na sekcje. Do wprowadzenia tekstu "nagÅówkowego", informujÄ cego o sekcji, stosuje siÄ makro .SH SEKCJA Poza tym, czÄsto zdarza siÄ, że w manualach wystÄpujÄ np. listy (makra ".TP", i inne symbole) -- ale tÅumacz wÅaÅciwie nie musi już wiedzieÄ co one oznaczajÄ -- wystarczy zostawiÄ je w spokoju. Dla dociekliwych pozostaje zawsze dostÄpna dokumentacja groffa i ewentualnie man-howto lub `man 7 man', `man 7 me' (nawiasem mówiÄ c przetÅumaczone w ramach PTM :). /* * 5. PrzyjÄte konwencje tÅumaczenia nazw sekcji. */ WiÄkszoÅÄ manuali dzieli siÄ na sekcje. W jÄzyku angielskim ich nazewnictwo jest jednolite; celowe jest zatem uczynienie tego samego dla jÄzyka polskiego. PrzyjÄliÅmy nastÄpujÄ ce tÅumaczenia: NAME NAZWA SYNOPSIS SKÅADNIA (ewentualnie STRESZCZENIE, co jest dosÅownym tÅumaczeniem, lecz nie zawsze oddaje istotÄ rzeczy) DESCRIPTION OPIS FILES PLIKI SEE ALSO ZOBACZ TAKÅ»E AUTHOR AUTOR COPYING KOPIOWANIE ERRORS BÅÄDY BUGS BÅÄDY (ewentualnie gdy kÅóci siÄ z ERRORS -- USTERKI) ENVIRONMENT ÅRODOWISKO EXAMPLES PRZYKÅADY RUNLEVELS POZIOMY PRACY BOOTFLAGS FLAGI STARTOWE (ew. USTAWIENIA POCZÄTKOWE) CONFORMING TO ZGODNE Z CAVEATS ZASTRZEÅ»ENIA/PRZESTROGI (ma to jakby znaczenie umywania rÄ k, ostrzeżenia, itp.) USAGE UÅ»YTKOWANIE RETURN VALUE WARTOÅÄ ZWRACANA /* * 6. Apropos mi nie dziaÅa po polsku! Co zrobiÄ? */ Apropos do dziaÅania potrzebuje wpisu whatis w korzeniu katalogu z manualami. Wraz z dystrybucjÄ powinieneÅ dostaÄ wpis whatis. JeÅli jednak go nie bÄdzie lub bÄdzie nieaktualny, uruchom skrypt makewhatis, dostarczany z dystrybucjÄ . /* * 7. Jak wydrukowaÄ polskie manuale w postscripcie? */ [Pisze Jarek Woloszyn] Ja sobie z ogonkify jakiÅ czas temu nie poradziÅem. Może jakieÅ nowe ogonkify zadziaÅa. Problem pomógÅ mi rozwiÄ zaÄ Staszek Ciszewski. StworzyÅ on po prostu dodatkowe urzÄ dzenie, które obsÅuguje fonty latin2. Trzeba poÅataÄ groffa (ver 1-11). [koniec] NiezbÄdna Åata jest dostÄpna pod adresem http://ptm.linux.pl. AlternatywÄ do drukowania manuali w postscripcie jest drukowanie ich z formatu ASCII (man problem | colcrt > plik.do.wydruku). Traci siÄ jednak pewne elementy skÅadu, jak np. pogrubienia, podkreÅlenia, itp. Pogrubienia w wielu wypadkach można zachowaÄ, drukujÄ c plik bez filtrowania nadstukiwaÅ przez colcrt (man problem > plik.do.wydruku). /* * 8. Jak zrealizowaÄ pomysÅ, by nie ÅciÄ gaÄ przy każdej zmianie caÅej * paczki manuali, a tylko manuale, które siÄ zmieniÅy? */ Skorzystaj z CVS. Sposób używania CVS jest podany w punkcie (3.) tego FAQ. Jedyna różnica, to to, że jako użytkownik anonimowy, nie korzystasz ze swojego wÅasnego konta, ale z konta `anonymous' lub `cvs'. Zamiast hasÅa pisze siÄ `cvs'. Ponadto, trochÄ modyfikuje siÄ adres serwera CVS. PrzykÅadowy skrypt, który zaÅatwi ÅciÄ ganie przy zaÅożeniu, że masz zainstalowanego klienta CVS: --- cut --- #!/bin/sh cvs -d :pserver:cvs@anoncvs.pld.org.pl:/cvsroot login cvs -z 9 -d :pserver:cvs@anoncvs.pld.org.pl:/cvsroot co pl_PL cvs -d :pserver:cvs@anoncvs.pld.org.pl:/cvsroot logout --- cut --- /* * 9. Jak zainstalowaÄ pakiet PTM na systemie Debiana? */ Najprostsza odpowiedź brzmi - zainstalowaÄ pakiety manpages-pl_*.deb oraz manpages-pl-dev_*.deb. ZnaleÅºÄ je można na każdym serwerze z archiwum Debiana w podkatalogu pool/main/m/manpages-pl/ . KomfortowÄ sytuacjÄ mamy, gdy dziaÅa system obsÅugi pakietów APT. Wystarczy wywoÅaÄ polecenia apt-get install manpages-pl apt-get install manpages-pl-dev i odpowiedni pakiet ÅciÄ gnie siÄ z sieci i zainstaluje w systemie. Późniejsza aktualizacja ogranicza siÄ do wydania poleceÅ apt-get update apt-get upgrade A co zrobiÄ, jeÅli nie chcemy ÅciÄ gaÄ za każdym razem caÅych pakietów? NajproÅciej jest wykorzystaÄ pomysÅ z CVS podany w punkcie 8 tego FAQ. Do zbudowania pakietu potrzeba nam nastÄpujÄ cych pakietów zainstalowanych w systemie: dpkg-dev, debhelper, fakeroot. Po ÅciÄ gniÄciu najnowszych plików z serwera CVS należy wejÅÄ do katalogu pl_PL i wykonaÄ polecenie fakeroot debian/rules binary Gotowe pakiety znajdÄ siÄ w katalogu wyżej, pod odpowiednimi nazwami. Wystarczy je już zainstalowaÄ jako root: dpkg -i *.deb /* * 10. SÅownik */ W archiwum PTM znajduje siÄ sÅownik, który ma w zaÅożeniach a) pomagaÄ tÅumaczom w tÅumaczeniu trudnych wyrażeÅ b) ujednolicaÄ sÅownictwo tÅumaczeÅ SzczegóÅy implementacji sÅownika sÄ opisane w samym sÅowniku. /* * 11. OdÅwieżanie zawartoÅci manuali */ Manuale z czasem mogÄ siÄ trochÄ dezaktualizowaÄ. Dlatego trzeba je odÅwieżaÄ. Dobrze jest w tym celu trzymaÄ oryginalnÄ angielskÄ wersjÄ manuala, a w wypadku gdy dostaniemy nowÄ , wykonaÄ diff -c stara.wersja.angielska nowa.wersja.angielska i nanieÅÄ poprawki do tÅumaczenia. Teoretycznie różnica kontekstowa (diff -c) powinna byÄ na tyle czytelna, że nie powinno byÄ problemów. W tym momencie dodam jeszcze, że warto w tÅumaczeniach wstawiaÄ wersjÄ programu, który siÄ tÅumaczy. UÅatwia to później aktualizacjÄ. /* * 12. Skrypty i zmienne Årodowiskowe */ Dawno, dawno temu, gdy repozytoria przypominaÅy Pola Elizejskie i gdy Ånieg byÅ jeszcze biaÅy a powietrze czyste... wtedy byÅ porzÄ dek w module pl_PL. Lecz kilka miesiÄcy potem developerzy chytrzy zaczÄli mieszaÄ, kombinowaÄ i reorganizowaÄ! I nie byÅo to niczym zÅym, lecz wychowani w coraz brudniejszym Åwiecie chaosu nieÅwiadomie czynili porutÄ wewnÄ trz owych zasobów. Wtedy to, wÅaÅciwego czasu i na wÅaÅciwej dyskusyjnej liÅcie zstÄ piÅ z niebios koordynator nasz wszechmogÄ cy i zarzÄ dziÅ Nowy Åad! I Åaska zstÄ piÅa na dyrektoria i na pliki nasze. Tak, że posÅaÅ swego sÅugÄ SiefcÄ by za danÄ przez ArchanioÅa Wysokiej JakoÅci (ang. HQ) zgodÄ uczyiÅ odpowiedniÄ strukturÄ podÅug danego mu zamysÅu. A wiÄc wziÄ Å zasoby w swoje skodowane rÄce i zaczÄ Å je dostosowywaÄ do planu Pana - dzieÅ pierwszy i ostatni zarazem. Skrypty i pliki ulokowane zostaÅy w dodatkowym katalogu 'zasoby' wewnÄ trz moduÅu, o którym mowa byÅa na poczÄ tku tej przypowieÅci. Od tego też czasu wszystkie skrypty wspomagajÄ ce i raportujÄ ce przyjÄÅy nastÄpujÄ cy standard w postaci zmiennych Årodowiskowych, które translatorzy dobroduszni powinni wyeksportowaÄ w swej sesji na chwaÅÄ projektu i na zgodÄ z ich upodobaniem: PTM_EMAIL - zawierajÄ cÄ twój adres e-mail, który jest (bÄdzie) użyty do identyfikacji w pliku robotnicy PTM_NAME - zawierajÄ cÄ twoje imiÄ i nazwisko PTM_PL_DIR - zawierajÄ cÄ poÅożenie katalogu pl_PL PTM_DICT_DIR - zawierajÄ cÄ poÅożenie katalogu pl_DICT (jeÅli używasz i sprawdzasz podrÄczniki) PRZYKÅAD do umieszczenia w .bash_profile : ------------------------------------------------- PTM_EMAIL="jankow@gdziestam.pl" PTM_NAME="Jan Kowalski" PTM_PL_DIR="~/cvs/pl_PL" PTM_DICT_DIR="~/cvs/pl_DICT" export PTM_EMAIL PTM_NAME PTM_PL_DIR PTM_DICT_DIR -------------------------------------------------- Zmienne owe użyteczne siÄ stajÄ , gdy z innej niż oryginalna lokacji skrypty woÅaÄ raczysz. * 12.1 Skrypt add2ptm W archiwum PTM znajduje siÄ skrypt majÄ cy za zadanie nieco uÅatwiaÄ tÅumaczom zadanie rezerwowania plików do tÅumaczenia. Rezerwowane manuale wpisywane sÄ do pliku 'robotnicy' po identyfikatorze tÅumacza. OczywiÅcie, zapisy te pozostajÄ również po wykonaniu pracy. Skrypt jest stosunkowo prosty, ale a) nie umożliwia rezerwacji plików osobom, których nie ma jeszcze na liÅcie tÅumaczy :(, b) należy pamiÄtaÄ, by nie dostosowywaÄ do swoich danych egzemplarza w lokalnym katalogu CVS. ZostaÅ on umieszczony w repozytorium tylko dla wygody dystrybucji. Powinno siÄ korzystaÄ z odpowiednio zmienionej kopii umieszczonej w prywatnym katalogu, poza strukturÄ synchronizowanego repozytorium CVS. [sekcjÄ doÅÄ czono ze wzglÄdu na zdarzajÄ ce siÄ nieporozumienia - HQ] * 12.2 Skrypt heniu Heniu to prosty, nieinteraktywny skrypt raportujÄ cy, którego zadaniem jest wspomagaÄ tÅumaczy znajdujÄ c logiczne wiÄzi miÄdzy pakietami a stronami podrÄczników, które do nich naleÅ¼Ä . Informacje o tym jakie podrÄczniki naleÅ¼Ä do konkretnych pakietów heniu pobiera z plików poÅożonych w pl_PL/zasoby/pakiety. Korzysta także z pliku pl_PL/zasoby/ispell.sprawdzane aby dowiedzieÄ siÄ wiÄcej o stanie podrÄcznika. Oto opcje z jakimi możesz go zawoÅaÄ: heniu -g poda ci wszystkie gotowe pakiety heniu -n powie ci jakie pakiety sÄ niedokoÅczone heniu -q nazwa wyÅwietli informacje o stanie pakietu o podanej nazwie heniu -m nazwa wyÅwietli informacje o stanie podanego podrÄcznika heniu wyÅwietli informacje o stanie wszystkich pakietów PrzykÅad zapytania o pakiet rlinetd: > [koder@szarik koder]$ heniu -q rlinetd > Heniu v.0.04 (GPL) by P.Wilk <siewca@dione.ids.pl> > > Raport stanu pakietu. > -------------------------------------------------- > PAKIET: rlinetd > > Do przetÅumaczenia: > rlinetd.conf.5 (istnieje lokalnie) > > Do sprawdzenia: (nic) Zauważmy zapis 'istnieje lokalnie'. JeÅli takie coÅ pojawi siÄ u ciebie to znaczy, że dany podrÄcznik nie zostaÅ przesÅany na serwer CVS i traktujemy go jako nieprzetÅumaczony. PrzykÅad zapytania o rlinetd.conf.5: > [koder@szarik koder]$ heniu -m rlinetd.conf.5 > Heniu v.0.04 (GPL) by P.Wilk <siewca@dione.ids.pl> > > Raport stopnia gotowoÅci podrÄcznika. > -------------------------------------------------- > PODRÄCZNIK: rlinetd.conf.5 > > W pakiecie: rlinetd > PrzetÅumaczony: ??? (istnieje tylko lokalnie). > Sprawdzony: NIE /* * 13. Po co jest plik ispell.sprawdzane? */ Å»eby manuale byÅy poprawne ortograficznie powstaÅo repozytorium o nazwie pl_DICT. ZnajdujÄ siÄ w nim sÅowniki do programu Ispell, odpowiednie narzÄdzia, a także skrypcik 'manspell', który po ustawieniu paru zmiennych bÄdzie odwalaÅ caÅÄ brudnÄ robotÄ za Ciebie. Wymaganiem jest posiadanie w miarÄ nowego (wersja 3.1.18 3.1.20) Ispella. WÅaÅnie jednym z zadaÅ manspella jest umieszczanie odpowiednich adnotacji w tym pliku. More info: pl_DICT/FAQ . To byÅa reklama. :-) [siefca] /* * 14. Apropos/whatis pokazujÄ , że jest tÅumaczenie, a mimo to zamiast * niektórych polskich wyÅwietlane sÄ angielskie strony manuala. Co zrobiÄ? */ PrzykÅad dla 'zless': upewnij siÄ jak wyszukiwana jest wÅaÅciwa wersja manuala man -w zless WystÄ pienie w odpowiedzi dwu wierszy, z których pierwszy wskazuje na polskÄ wersjÄ (i opisuje bÅÄ d), zaÅ drugi na oryginalnÄ , objawia problem czytnika stron man. WystÄpuje on np. w dystrybucji SuSE i spowodowany jest ograniczonÄ interpretacjÄ makra .so. Wykonuje ono wyÅwietlenie innej strony manuala zamiast wskazanej. Możliwe rozwiÄ zania: a) (zalecane) zmieÅ pakiet man na lepszy, b) nie przejmuj siÄ. Na podstawie whatis/apropos, 'man -w' lub nagÅówka wyÅwietlanego oryginaÅu wywoÅaj sam wÅaÅciwÄ stronÄ (np. dla zless jest to zmore), c) znajdź plik źródÅowy sprawiajÄ cy kÅopoty (/usr/man/pl_PL/man1/zless.1) i zmieÅ zawartoÅÄ typu .so zmore.1 dopisujÄ c odpowiedni podkatalog: .so man1/zmore.1 Zauważ, że jest to bardzo kÅopotliwe. Plików man tego rodzaju jest wiÄcej, bÄdziesz zapewne okresowo aktualizowaÅ pakiet PTM, a ponadto Å¼Ä danie .so z podanym podkatalogiem nie jest poprawnie obsÅugiwane przez popularnego Midnight Commandera. /* * 15. Dla tÅumaczy: Linux czy Linuks */ Do ok. 1998 sprawa byÅa jasna, wszyscy pisali `Linux'. NastÄpnie, po latach spokoju na grupie pl.comp.os.linux zaczÄÅa siÄ na ten temat burza. WedÅug polskich reguÅ odmiany, Linux we wszystkich odmienionych formach powinien byÄ pisany przez `ks'. Jednak historycznie zakorzeniona odmiana nie podlega tej regule. W wyniku tej rozbieżnoÅci, wiele osób pisze tÄ nazwÄ przez `ks', a wiele przez `x'. Z uwagi na brak wystÄpowania formy `ks' w dawnych czasach, po dÅugich dyskusjach udaÅo siÄ wypracowaÄ pewien kompromis. Odmiana `x' jest obecnie archaiczna i dÄ Å¼Ä c do usystematyzowania jÄzyka w dokumentacjach powinna byÄ stosowana forma `ks'. Na poparcie tezy, że forma `x' jest archaiczna, a nie bÅÄdna, można przyjÄ Ä wiele argumentów. Jednymi z ważniejszych sÄ te, że poczÄ tkowo nikt nie znaÅ i nie używaÅ formy `ks'. Nawet ksiÄ Å¼ki. I to nie tylko techniczne. Literatura piÄkna również nie znaÅa tak caÅkiem zasad odmiany sÅów koÅczÄ cych siÄ na `x' (por. `OpowieÅci o pilocie Pirxie'). Znani mi poloniÅci jeszcze w 1998 roku musieli SPRAWDZAÄ w podrÄcznikach jak odmieniÄ sÅowo `Hortex'. Wszystko to kumuluje siÄ na stwierdzenie, że sÅowo `linux' weszÅo do jÄzyka polskiego na drodze niezrÄcznoÅci sÅowotwórczej, lecz w tamtych czasach nie byÅa ona raÅ¼Ä ca. A ponieważ używano jej potem przez wiele lat w niezmienionej formie, ÅÄ czÄ c z niÄ nierzadko ideologie opensource i pracÄ `pod sztandarem Linuxa', należy uszanowaÄ tradycjÄ i nie uznawaÄ tej odmiany za bÅÄ d. W jÄzyku polskim zdarzaÅo siÄ już niejednokrotnie wprowadzanie nazw bez przestrzegania zasad, a jednak nikt tych sÅów później na siÅÄ nie prostowaÅ. PrzykÅad jaki nasunÄ Å mi siÄ przy tej argumentacji to imiÄ `Mojżesz', które w Biblii przetÅumaczono z jÄzyka obcego nie zważajÄ c na zasadÄ pisania `rz' po `j'. Nie należy natomiast pisaÄ `Linuks' w mianowniku. W wypadku używania form `x' nie należy tez używaÄ Å¼adnych apostrofów czy myÅlników w formach takich, jak `Linuxa', `Linuxowi'. /* * 16. Dla tÅumaczy: spolszczanie nazwy X Window System */ Oficjalna nazwa tego systemu to "X Window System", "X Window" lub "X". Po polsku oznacza to mniej wiÄcej tyle co System Okna X. Okna, nie okien. ChoÄ w potocznej mowie sens jest podobny, w technicznej jest drobna różnica. X Window System oznacza dawanie jakiegoÅ interfejsu tworzenia okna i jego obsÅugi. Nie oznacza on jednak, że sÄ tam jakieÅ konkretne okienka. Wynika z tego, że nadawanie tej nazwie podtekstu liczby mnogiej (X Windows, X-y) jest nie do koÅca poprawne (w szczególnoÅci nie jest "poprawne politycznie", gdyż Årodowiska ludzi używajÄ cych X czÄsto nie chcÄ byÄ mylone z innym produktem z "Windows" w nazwie :). /* * 17. Identyfikacja źródeÅ */ Zdarza siÄ, że różne pakiety posÅugujÄ siÄ poleceniami o tych samych nazwach. ChcÄ c utrzymaÄ tÅumaczenie kilku plików o tych samych nazwach oryginaÅu, przyjÄliÅmy w takich przypadkach dodawanie pojedynczej litery na koÅcu nazwy. I tak np. 'id.1' opisuje polecenie id z pakietu GNU (standardowe), zaÅ 'id.1s' zastÄpujÄ ce je polecenie z pakietu 'shadow'. Zaleca siÄ tÅumaczom podawanie opisanej w manualu wersji oraz, w razie wÄ tpliwoÅci, również nazwy pakietu. Nawet jeżeli oryginaÅ ich nie podawaÅ. InformacjÄ tÄ najlepiej umieÅciÄ w nagÅówku .TH lub ewentualnie w formie komentarza (.\") na poczÄ tku pliku. /* * 18. Instalowanie dokumentacji info */ PTM tÅumaczy również dokumentacjÄ texinfo programów. Póki co nie ma jej jeszcze praktycznie wcale gotowej, ale przedstawiÄ tu teoretyczne możliwoÅci jej instalacji: Napierw trzeba jÄ oczywiÅcie skompilowaÄ do postaci info. W najprostszym przypadku robimy `makeinfo plik.texi'. Po skompilowaniu, gotowe pliki info kopiujemy np. do katalogu /usr/info/pl_PL. Teraz zaczyna siÄ zabawa: jeÅli używasz do czytania dokumentacji texinfo programu `pinfo', wystarczy ustawiÄ zmiennÄ ÅrodowiskowÄ $LANG na `pl_PL' (pinfo szuka w katalogach info podkatalogów nazwanych $infodir/$LANG). W przypadku programu `info' sprawa jest inna: nie obsÅuguje on locali, ale od czego moja nieskromna inwencja twórcza :) Można zrobiÄ nastÄpujÄ cy trik: export $INFOPATH="/usr/info/pl_PL:/usr/info:/usr/local/info:/usr/share/info:" rozumiecie ideÄ ;) /* * 19. Dla tÅumaczy: na co uważaÄ w plikach Texinfo */ Instrukcje texinfo zaczynajÄ siÄ od "maÅpy" (@). Podwojona daje literaÅ "@". Wiersze przetwarzane sÄ podobnie jak w groffie czy TeX-u (nieco podobnie jak w HTML-u). Można swobodnie ÅamaÄ zbyt dÅugie wiersze - zmiana akapitu nastÄ pi w miejscu pustego wiersza. Wymuszone Åamanie wiersza robimy poleceniem "@*". "@page" dotyczy tylko postaci drukowanej i wymusza zmianÄ strony, zaÅ "@group"-"@end group" wymuszenie wystÄ pienia wierszy razem na stronie. Instrukcja "@c foo.." oznacza komentarz, podobnie dziaÅa para "@ignore" i "@end ignore". Pary "@ifinfo"-"@end ifinfo" i "@iftex"-"@end iftex" ograniczajÄ tekst, który ma pojawiÄ sie tylko, odpowiednio, w pliku Info albo, w dokumencie drukowanym. Konstrukcja typu "@set BOOK ksiÄ Å¼ka" nadaje wartoÅÄ zmiennej. WartoÅÄ ta bÄdzie wykorzystana przez @value{BOOK}. Tu należy uważaÄ, gdyż stosowane sÄ rozwiÄ zania typu: @ifinfo @set BOOK Info file @end ifinfo @iftex @set BOOK book @end iftex ... In this @value{BOOK}.... "@node" okreÅla wÄzeÅ struktury: @node Drugi, nastÄpny, poprzedni, macierzysty podczas, gdy "@chapter", "@section" itp. tytuÅ danej czÄÅci: @chapter Drugi podrozdziaÅ Nazwy wÄzÅów tÅumaczymy. MuszÄ byÄ niepowtarzalne w ramach dokumentu. Używane sÄ ponadto jako argumenty instrukcji odnoÅników @ref{}, @pxref{}, @xref{} oraz w menu, po lewej: @menu * Pierwszy:: MiÅe zÅego poczÄ tki * Drugi:: Kontynuujemy naukÄ @end menu Opisy w prawej stronie menu, podobnie jak kolejny parametr @ref{} nie muszÄ odpowiadaÄ tytuÅowi odpowiedniego wÄzÅa. Jest to tekst, jaki pojawi siÄ jako odnoÅnik. Przy odsyÅaczach należy uważaÄ na gramatykÄ - @xref{} i pxref{} poprzedzane sÄ odpowiednio przez 'See', 'see', co nie zawsze da siÄ Åadnie wepchnÄ Ä w naszÄ skÅadniÄ. @ref{} nie daje przedrostka. Z powodu "*Note" wszystkie te konstrukcje sÄ kÅopotliwe przy formacie Info. WÄzeÅ "Top" reprezentuje wierzchoÅek dokumentu - jego nazwy nigdy nie tÅumaczymy. Podobnie nie tÅumaczymy nazwy wÄzÅa (dir), oznaczajÄ cego wierzchoÅek struktury zÅożonej ze wszystkich zainstalowanych plików Info (zawarty jest on w pliku /usr/info/dir, uzupeÅnianym rÄcznie lub skryptem wg "@direntry"). "@bye" oznacza koniec przetwarzania dokumentu. Reszta nie jest przetwarzana. /* * 20. Kwestie prawne: czy pytaÄ autorów podrÄczników o zgodÄ na tÅumaczenie? */ JeÅli dokumentacja jest rozprowadzana w ramach pakietów GNU, to nie ma problemu i można tÅumaczyÄ. Zachowujemy oczywiÅcie stare copyrighty. W przypadku pozostaÅych dokumentacji -- jeÅli licencja jest niejasna; lepiej zapytaÄ. JeÅli nie ma jej w ogóle -- również należy prosiÄ o zgodÄ. /* * Dodatek I: Literatura :) */ man man..........................................Opis używania programu man man man.config.....................Opis pliku konfiguracyjnego programu man man less......................Opis domyÅlnej linuxowej przeglÄ darki manuali man pinfo................Opis alternatywnej (mojego autorstwa) przeglÄ darki man groff...................Opis programu używanego do formatowania manuali man troff.................Opis programu skÅadu tekstu, woÅanego przez groff man 7 man.........................................Makra używane w manualach man me.....................................Makra używane czasem w manualach info gettext...........................Opis problemów zwiÄ zanych z localami Locale MiniHowto................................Opis locali w postaci HOWTO Man-Page MiniHowto.....................................Jak pisaÄ strony man http://www.agh.edu.pl/ogonki..Jak uzyskaÄ polskie litery na swojej maszynie FHS (dostÄpne na mirrorach GNU)..............Opis hierarchii systemu plików http://www2.linuxjournal.com/lj-issues/issue6/2840.html....WstÄp do Texinfo [p]info texinfo...........................Opis systemu dokumentacji Texinfo