Na ekranie po polsku -------------------- WÎASNE KATALOGI Od systemu 2.1 w górë moûliwa jest tak zwana lokalizacja systemu, czyli "zmuszenie" Amigi do tego, aby wszystkie komunikaty na ekranie byîy wypisywane po polsku. Lokalizacja jest trywialnie prosta. Wystarczy zainstalowaê odpowiedni jëzyk z dyskietki "Locale". Niestety, ôp. firma Commodore nie raczyîa zauwaûyê, ûe istnieje takûe jëzyk polski. Marek Pampuch I w tym momencie zaczynajâ sië schody. Polonizacja Amigi jest moûliwa, lecz nie jest juû tak banalnie prosta. Dlaczego? Aby to zrozumieê, naleûy poznaê zasadë dziaîania programów lokalizacyjnych. Jeôli, przypuôêmy, chcemy zmieniê jëzyk angielski, w jakim dostarczony jest system, na niemiecki, wówczas uruchamiamy program Locale i wybieramy jëzyk "deutsch" i kraj "Deutschland". W tym momencie program kopiuje na dysk katalog Locale i nadaje najwyûszy priorytet zbiorom Languages/deutsch.language, Countries/deutschland.country i Catalog/Deutschland/Sys. Oznacza to, ûe komunikaty systemowe zamieniâ teksty, pobrane z ROM-u Amigi, na teksty niemieckie, wczytane ze zbiorów katalogowych. Jak juû wspomniaîem, jëzyka polskiego nie ma. Sprawa wydawaîaby sië prosta: wystarczy wziâê do rëki sîownik niemiecki i przetîumaczyê zbiory katalogowe. Tak îatwo jednak nie jest. Po pierwsze katalogi majâ nieco inny format niû typowe zbiory tekstowe, po drugie zaô, nawet jeôli takie spolszczenie nam sië uda, to bez zmian we wspomnianych zbiorach "deutsch.language" i "deutschland.country" moûemy nie uzyskaê poûâdanego efektu. Sytuacjë dodatkowo komplikujâ dwie sprawy: po pierwsze jeôli juû ktoô zna jakiô jëzyk obcy, to z reguîy jest to angielski, a takich katalogów nie ma (bo i po co, skoro angielskie teksty sâ w ROM-ie, jedynym wyjâtkiem jest katalog dla dorzuconego do systemu w ostatniej chwili programu do obsîugi monitorów), po drugie zaô jest to nielegalne. Producent Amig (wczeôniej Commodore, teraz Escom) pozwala bowiem na dowolne zmiany w zbiorach katalogowych, natomiast dokonanie jakichkolwiek zmian w zbiorach .language czy .country wymaga zgody wîaôciciela praw autorskich do tych programów. Cóû zatem ma robiê "szary Polaczek", który chciaîby skorzystaê z dobrodziejstw lokalizacji? Ma dwa wyjôcia. Albo pozmieniaê te dwa zbiory (dopóki robi to tylko dla siebie, nikt sië nie bëdzie czepiaî), albo zastosowaê protezë, nie zmieniajâc wyûej wymienionych zbiorów i tîumaczâc same katalogi. W tym drugim wypadku prawie wszystko bëdzie dobrze, poza tym, ûe niektóre komunikaty (czas, data, waluta) pojawiâ sië na ekranie po niemiecku. Opowiem tylko o tej drugiej metodzie. Na rynku polskim spotyka sië zestawy spolszczonych katalogów zarówno pîatne (sic!), jak i rozpowszechniane "towarzysko". Katalogi te moûna podzieliê na dwie grupy: albo sâ bez zarzutu "pod wzglëdem komputerowym" i wtedy sâ tragiczne pod wzglëdem polszczyzny (trafiajâ sië nawet bîëdy ortograficzne, nie mówiâc o kwiatuszkach, jakie moûna znaleúê w "jedynie sîusznych" Localach z póînocy -- wykpienie tychûe pozostawiam Chamowi), albo na odwrót: jëzyk jest bez zarzutu, ale dziaîanie (Guru nie wyîâczajâc) poûal sië Boûe. Nie piszë tego wszystkiego, aby postponowaê pracë wîoûonâ w polonizacjë, co ze wzglëdu na opisowoôê i zwiâzanâ z tym rozwlekîoôê jëzyka polskiego jest czasami makabrycznie trudne do zrobienia. Chcë tylko uzmysîowiê wszystkim, ûe zanim doczekamy sië standardu, który wyeliminuje "Wolumeny", "Anuluj", "Roztrzâsanie" (czego, gnoju?) -- to najlepszy (zawsze!) bëdzie taki katalog, który spolszczy sobie sam uûytkownik. On przecieû najlepiej wie, czego potrzebuje i jaki styl komunikatów najbardziej mu odpowiada. Aby spolszczyê katalogi we wîasnym zakresie, potrzebna bëdzie znajomoôê jednego z jëzyków, w jakich dostarczane sâ firmowe katalogi (lub umiejëtnoôê posîugiwania sië sîownikiem) i program pomocniczy (zakîadam, ûe kaûdy ma juû zainstalowane w swojej Amidze polskie znaki). Najprostszym takim programem jest Translate CatEdit, dostëpny w Internecie lub na kompaktach serii Aminet. Zanim rozpoczniemy pracë, wykonajmy kopië dyskietki Locale, aby zachowaê oryginaî. Nastëpnie uruchomijmy program Translate CatEdit, wczytajmy kolejno wszystkie katalogi niemieckie (lub jeôli znamy inny jëzyk -- katalogi w tym jëzyku), przetîumaczmy jego teksty i zapiszmy pod tâ samâ nazwâ. Nie musimy sië przy tym zbytnio przejmowaê dîugoôciâ tîumaczenia, edytor ten ma bowiem specjalny "ogranicznik", który uniemoûliwi nam wpisanie tekstu dîuûszego niû jest to dozwolone. Z drugiej jednak strony, po spolszczeniu moûe sië okazaê, ûe tekst na ekranie "wyîazi za ramkë" albo jest nieîadnie rozmieszczony. W takim wypadku musimy sobie zapisaê na kartce, na przykîad: "Wîóû dysk do stacji df0: o 4 pozycje w lewo" itp., a nastëpnie powróciê do programu Translate CatEdit i dokonaê odpowiednich poprawek. Gdy juû uznamy, ûe wszystko jest OK, uruchamiamy program Install z dyskietki HDInstall i wybieramy opcjë ZMIEÏ JËZYK. UWAGA: Nie mamy co sië bawiê w tîumaczenie katalogów "Installer", "HDSetup" i "Intellifont". Te trzy programy nie poddajâ sië bowiem tak îatwo lokalizacji. Ich spolszczenie jest oczywiôcie takûe moûliwe, jednak omówienie tego tematu wykracza poza zakres artykuîu. Translate CatEdit to najprostszy w obsîudze, ale i najmniej "skuteczny" program do lokalizacji. Znacznie lepszy efekt dadzâ inne programy, ale aby móc sië nimi posîugiwaê, naleûy wczeôniej poznaê wewnëtrznâ strukturë zbiorów katalogowych. A zatem teraz czeka nas dawka (brr!!!) teorii. Z kaûdym katalogiem muszâ byê zwiâzane dwa zbiory opisowe. Pierwszy z nich o rozszerzeniu .cd (catalog description) zawiera teksty oryginalne, ich dîugoôci i adresy, przykîadowo: TEXTJEDEN_STR (22/4/60) This is english text gdzie TEXTJEDEN_STR jest opisem etykiety danego tekstu w programie, a trzy liczby w nawiasie oznaczajâ kolejno adres tekstu, dîugoôê minimalnâ i dîugoôê maksymalnâ (przy polskich katalogach ta ostatnia liczba powinna byê jak najwiëksza, oczywiôcie w granicach rozsâdku, aby tekst nie wyszedî poza ekran). Zbiór "catalog description" jest to zwykîy zbiór tekstowy, jednak przy jego tworzeniu naleûy przestrzegaê pewnych zasad, zwîaszcza w etykietach îaïcuchów (mogâ one zawieraê jedynie duûe litery alfabetu îaciïskiego, cyfry od 0 do 9 i znak "_"). Drugi zbiór o rozszerzeniu .ct (catalog translation) zawiera teksty juû przetîumaczone wraz z odwoîaniami do adresów oryginaîu, na przykîad: TEKSTJEDEN_STR A to jest po polsku Oprócz tego w nagîówku zbioru .ct znajdziemy informacje o katalogu, przykîadowo: version $VER: moj.catalog 1.4 (10.06.95) codeset 0 language polski Sam katalog jest zbiorem typu IFF CTLG, nie moûna go jednak obejrzeê typowymi przeglâdarkami dla zbiorów IFF. Na szczëôcie wszystkie opisywane programy "zrozumiejâ" të odmianë formatu IFF. Skoro poznaliômy juû podstawy, zobaczmy, co to za "lepsze" programy. Jednym z nich jest Easy Catalog (dostëpny z tych samych úródeî, co wszystkie inne opisywane w tym artykule programy). Po wczytaniu katalogu pojawi sië nam jego tekst, ale w odróûnieniu od programu Translate CatEdit poszczególne îaïcuchy bëdâ uzupeînione o identyfikatory. Przydaje sië to bardzo przy poszukiwaniu danego îaïcucha w programie. Zwîaszcza w wypadku spolszczania nie jest to bez znaczenia, to bowiem, czy wystëpujâcy kilka razy w naszym katalogu wyraz, powiedzmy "Negative", przetîumaczymy jako "Negatyw", "Ujemny", "Negatywna", "Ujemna" czy "Ujemne", a moûe jeszcze inaczej, zazwyczaj bëdzie wynikaê z kontekstu, w jakim ten wyraz wystëpuje. Kaûdy z îaïcuchów moûemy edytowaê, a dziëki identyfikatorom do potrzebnego îaïcucha dostaniemy sië znacznie szybciej niû korzystajâc z Translate CatEdit. Kolejnâ przewagâ Easy Catalog jest moûliwoôê wygodnego ustawienia jëzyka czy numeru wersji, co w wypadku Translate CatEdit jest znacznie trudniejsze. Ponadto z Easy Catalogu moûna w dowolnym momencie wywoîaê preferencje dla lokali, dziëki czemu moûemy natychmiast zobaczyê, jak wprowadzona przez nas zmiana bëdzie wyglâdaîa na ekranie Amigi. Easy Catalog moûe byê takûe uûywany do tworzenia katalogu "od podstaw", dla programów, które jego jeszcze nie majâ. Lokalizacja umoûliwia bowiem spolszczenie nie tylko programów systemowych. Jednak w takim wypadku trzeba dysponowaê kodem úródîowym programu, albo przynajmniej zbiorami o rozszerzeniach .cd i .ct (bëdzie o nich mowa za chwilë). W przeciwnym bowiem razie pozostaje nam jedynie moûliwoôê korzystania z tego programu do tîumaczenia gotowych katalogów. Nie ma jednak czego ûaîowaê, bo tak jak Easy Catalog bardziej nadaje sië do tîumaczenia niû Translate CatEdit, tak istniejâ programy, które bardziej nadajâ sië do tworzenia nowych katalogów niû Easy Catalog. A jakie to programy? Jest ich kilka. Najpowszechniej uûywane z nich to MakeCat (który z powodzeniem zastâpiî wydany przez Commodore CatComp). Oba te programy takûe sâ dostëpne w Internecie lub na kompaktach Aminet. Za ich pomocâ moûna stworzyê katalog do dowolnego programu, warunkiem jest jednak dysponowanie kodem úródîowym tegoû programu (w asemblerze lub w jëzykach C albo Oberon) i wprowadzenie do tego kodu prostej poprawki, polegajâcej na dopisaniu wierszy (na przykîad dla kodu úródîowego w jëzyku C): # define LOCALE START struct LocText tekst1={1, "tutaj tekst"} ... # define LOCALE END i opatrzenie go komentarzem (przykîadowo): /* PL "To jest polski"*/ Nastëpnie w programie MakeCat ustawiamy nazwy zbiorów úródîowego i docelowego i klikamy na gadûecie "Konversion" (Konwersja), dziëki czemu otrzymamy niezbëdne dla stworzenia katalogu zbiory, opisujâce go (z rozszerzeniem .cd i .ct). Jeôli kogoô denerwuje "graficzny interfejs uûytkownika", moûe skorzystaê z bardzo podobnych w dziaîaniu programów FlexCat lub KitCat, które da sië zainstalowaê w katalogu rozkazowym C: i wywoîywaê z poziomu Shella. Takûe i te programy moûna znaleúê w Internecie (lub na kompaktach Aminet). Tyle ewangelii na dzieï dzisiejszy. Ûyczë miîego ôlëczenia nad katalogami i wyników, za które bëdzie Was mógî pochwaliê profesor Miodek.