TeX

język programowania

TeX (wymowa IPA: /tɛx/ jak gr.) – komputerowy system profesjonalnego składu drukarskiego, obejmujący zarówno specjalny język, jak i kompilator przygotowujący pliki w formacie DVI, oraz programy przekształcające pliki DVI na format wymaganych przez urządzenia graficzne (drukarki, naświetlarki). TeX do składu nie używa plików z fontami, jak dzieje się to w większości programów do składu tekstu, lecz plików z metrykami fontów, czyli informacjami o wymiarach znaków, odstępach między nimi oraz innymi zależnościami, ale bez opisu kształtów znaków. Metryki fontów zapisane są w plikach TFM (TeX Font Metric). Dopiero program drukujący dodaje do informacji z pliku DVI opisy fontów i przygotowuje dane w formacie urządzenia drukującego[1][2].

Logo TeX-a

Używa się go przy składaniu tekstów naukowych (np. matematycznych), ponieważ umożliwia budowanie złożonych wyrażeń, w tym skomplikowanych wzorów matematycznych. Nie mniej ważny jest szeroki zakres dostępnych gotowych pakietów poleceń rozwiązujących problemy związane z tworzeniem publikacji, są to np. automatyczne numerowanie równań, tworzenie skorowidzów, tabel, spisu skrótów, wstawianie ilustracji.

Nazwa edytuj

Litery Τ, Ε i Χ reprezentują greckie litery, odpowiednio tau, epsilon oraz chi   tworzące początek greckiego słowa τέχνη (technē) oznaczającego sztukę lub rzemiosło, od którego pochodzi wyraz technika.

Pochodzenie nazwy uzasadnia poprawną wymowę /tɛx/ (tech), lecz ze względu na trudność wymowy spółgłoski szczelinowej miękkopodniebiennej bezdźwięcznej w krajach anglojęzycznych stosuje się również /tɛk/.

W tekstach złożonych za pomocą TeX-a jego nazwa jest zapisywana jako  . W technologii uniemożliwiającej użycie właściwego kerningu oraz obniżenia „E” program jest nazywany „TeX”.

Powstanie i rozwój edytuj

TeX został napisany w języku WEB, który z kolei produkuje programy w języku Pascal. Przy okazji powstał język METAFONT, przeznaczony do opisu fontów, w którym zostały stworzone fonty domyślnie używane przez TeX – ich krój nosi nazwę Computer Modern.

Program powstał w Stanach Zjednoczonych na Uniwersytecie Stanforda. Jego twórcą jest Donald E. Knuth, amerykański matematyk i informatyk. Program powstał, ponieważ prof. Knuth nie był zadowolony z wyglądu swojej książki The Art of Computer Programming. Postanowił wziąć sprawy w swoje ręce i stworzyć język programowania, który umożliwiłby skład tekstu wysokiej jakości. Początkowo profesor zakładał, że prace zajmą najwyżej pół roku, jednak jego oszacowanie było błędne – ostatecznie program został ukończony po ok. ośmiu latach, w 1985 roku. Z tą chwilą rozwój programu został zatrzymany, były poprawiane jedynie błędy, a numer wersji został określony na 2.0[3].

Profesor Knuth wyznaczył nagrodę pieniężną za każdy znaleziony w jego programie błąd. W roku 1985 nagroda wynosiła 1 cent, była podwajana co rok aż do 327 dolarów i 68 centów[4].

Począwszy od wersji 3 systemu TeX, to jest od roku 1990[3], każda kolejna podwersja oznaczana jest kolejnym dziesiętnym przybliżeniem liczby π, co oznacza, że w systemie wprowadzane są wyłącznie poprawki[5] przybliżające system do doskonałości. Bieżąca wersja, opublikowana w styczniu 2021 roku, ma numer 3.141592653[6]. Knuth w swoistym testamencie[7] polecił, aby z chwilą jego śmierci numer wersji określić jako π i nie dokonywać już żadnych zmian.

Implementacje i rozszerzenia edytuj

We współczesnych dystrybucjach oprócz programu TeX dostępne są jego rozszerzone wersje, z których część jest nadal rozwijana. Najpopularniejsze z nich to:

  • pdfTeX – rozszerzenie pozwalające tworzyć bezpośrednio pliki w formacie PDF, jednak z zachowaniem kompatybilności, to jest z możliwością tworzenia plików DVI,
  • eTeX – rozszerzenie o nowe polecenia ułatwiające pisanie makr oraz umożliwiające skład dwukierunkowego tekstu,
  • XeTeX – wariant umożliwiający korzystanie ze standardu Unicode oraz fontów komputerowych we współczesnych formatach, takich jak OpenType oraz AAT.

Popularyzacja formatu PDF spowodowała, że w większości nowoczesnych dystrybucji TeX-a domyślnym programem jest pdfTeX.

Formaty i zastosowania edytuj

Jednymi z głównych zalet systemu są: dostępność plików źródłowych oprogramowania, przenośność na dowolną platformę sprzętową/systemową (co daje m.in. identyczny efekt pracy na dowolnym komputerze) i stabilność działania. Do szybkiego wzrostu popularności TeX-a w publikacjach naukowych przyczynił się fakt, że praktycznie wszystkie prestiżowe wydawnictwa i czasopisma z zakresu nauk ścisłych przyjmują do publikacji teksty zapisane w TeX-u, a nawet udostępniają własne szablony, pozwalające nadawać publikacji wygląd zgodny z przyjętym w danym czasopiśmie czy wydawnictwie (np. w fizyce pozycję de facto standardu uzyskał opracowany na potrzeby wydawnictw American Physical Society RevTeX4). Szablony te z reguły oparte są na formacie TeX-a zwanym LaTeX2e.

Łatwość tworzenia makr spowodowała, że dla TeX-a dostępnych jest wiele rozszerzeń ułatwiających pracę, nazywanych formatami. Przykładem takiego zestawu makr jest AMSTeX, LaTeX (stworzony przez Leslie Lamporta), LaTeX2e, ConTeXt.

Wiele wyrażeń matematycznych w Wikipedii zostało stworzonych przy pomocy TeX-a. Na przykład:

 

Powyższy wzór zapisany w języku TeX wygląda następująco:

\frac{\sum\limits_{n=1}^N (x^{\sqrt{n+1}}-x^{x^{2n}})}{(\ln(x)+2x^{4x+1289})^{\frac{1}{2}}}

Użytkownicy edytuj

Wiele osób rozwijających TeX-a stowarzyszonych jest w organizacji TeX Users Group (TUG). Istnieją także narodowe grupy użytkowników TeX-a – np. niemiecka DANTE (Deutschsprachige Anwendervereinigung TeX), francuska GUTenberg (Groupe francophone des Utilisateurs de TeX) czy Polska Grupa Użytkowników Systemu TeX (GUST).

Zobacz też edytuj

Przypisy edytuj

  1. Donald E. Knuth, The TeXbook, Addison-Wesley Publishing Company 1984, ISBN 0-201-13448-9
  2. Donnald E. Knuth: informacje o aktualnych wersjach publikacji. [dostęp 2020-09-04]. (ang.).
  3. a b Źródło programu TeX w języku WEB. tug.ctan.org. [dostęp 2020-09-04].
  4. Richard J. Kinch: An Example of Donald Knuth’s Reward Check. [dostęp 2010-04-17]. (ang.).
  5. Zgłoszone błędy w źródłach programu TeX. tug.ctan.org. [dostęp 2020-09-04].
  6. LaTeX Stack Exchange: What’s new in TeX, version 3.14159265?. 2014. [dostęp 2015-12-25]. (ang.).
  7. Donald E. Knuth: The future of TeX and METAFONT. ntg.nl. [dostęp 2020-09-04].

Linki zewnętrzne edytuj