Jesteś w: Start / BachoTeX / BachoTeX 2004 / ABSTR / BachoTeX 2004

BachoTeX 2004

Wykorzystanie Emacsa, Haskella i TeX-a
w pracach nad słownikiem
języka staro-cerkiewno-słowiańskiego

Halina Wątróbska, Ryszard Kubiak

W Katedrze Slawistyki Uniwersytetu Gdańskiego powstaje dwujęzyczny słownik staro-cerkiewno-słwiańsko-polski. Jego podstawą jest rękopis XIII-wiecznego egzegetycznego frolilegium, czyli wyboru tekstów autorów chrześcijańskich, z komentarzem. Wszystkie formy wyrazowe z tego rękopisu, w liczbie ponad 11 tysięcy, mają zostać objaśnione w hasłach słownika.

Autorka słownika wprowadziła rękopis do komputera w postaci pliku tekstowego, w którym średniowieczne znaki cyrylickie tak zwanego ustawu (najstarszego cyrylickiego charakteru pisma) zakodowała za pomocą znaków dostępnych na typowej klawiaturze komputera. Oryginalny tekst oznakowała dodatkową informacją o podziale na wiersze, strony i jednostki logiczne, tak zwane incipity. Do przetwarzania danych w takiej reprezentacji znakomicie nadają się tytułowe narzędzia programistyczne: edytor Emacs, język programowania Haskell oraz system składu TeX. Pomogły one na wielu etapach prac słownikowych. Istotnie wykorzystano programowalność Emacsa, czyli możliwość rozszerzania funkcji edytora o nowe funkcje. Korzystając z tej możliwości, oprogramowano bardzo przydatne autorce słownika wyszukiwanie kontekstów dla form wyrazowych z tekstu źródłowego. Funkcja ta jest realizowana w taki sposób, że Emacs wywołuje zewnętrzny program, przekazując mu słowo, którego wystąpienia w tekście źródłowym autorka chce wyszukać. Wyszukane konteksty program ten zapisuje w pomocniczym pliku tekstowym, którego zawartość Emacs umieszcza w jednym ze swoich buforów i pokazuje na ekranie.

Zadanie wyszukania kontekstów wymaga przeprowadzenia dość szczegółowej analizy leksykalnej, składniowej i znaczeniowej tekstu źródłowego, który w tym celu jest poddawany wielorakim przekształceniom. Do takich przekształceń znakomicie nadaje się język funkcyjny Haskell, w którym przekształcanie danych daje się wyrazić w wygodnej notacji matematycznej. Haskell i towarzyszące mu biblioteki zostały również wykorzystane do innych zadań, takich jak: stworzenie indeksu form wyrazowych, rozmaite analizy ilościowe i - najważniejsze - przetworzenie słownika, zapisanego w notacji XML-owej, do postaci akceptowanej przez TeX-a.

TeX oczywiście służy do eleganckiego prezentowania informacji słownikowej. Konieczne do tego jest przekodowanie znaków cyrylickich z ich reprezentacji klawiaturowej na kody w foncie cyrylickim. Takie przekodowanie może być przeprowadzane w foncie wirtualnym, który w tym celu specjalnie opracowano.