Открыть сервис

TeX

TeX (произносится как «тех», от греческого τέχνη — искусство, мастерство) — это система компьютерной вёрстки, предназначенная для набора математических, технических и научных текстов. Разработана американским учёным и программистом Дональдом Кнутом в 1978—1989 годах. TeX считается стандартом в академических и издательских кругах для подготовки публикаций, содержащих сложные формулы, таблицы, перекрёстные ссылки и библиографию.

История

Предпосылки создания

В 1970-х годах Дональд Кнут, профессор Стэнфордского университета, завершал работу над многотомным изданием «Искусство программирования». В процессе подготовки второго издания он столкнулся с неудовлетворительным качеством полиграфического набора математических символов и формул. Существовавшие на тот момент типографские системы (Linotype, Monotype) не обеспечивали необходимой гибкости и точности, а компьютерные программы для вёрстки были примитивными.

Разработка

В 1977 году Кнут начал проектирование собственной системы вёрстки. Первая версия TeX была написана на языке SAIL (Stanford Artificial Intelligence Language) для компьютера PDP-10. В 1978 году вышла версия 1.0, которая уже позволяла набирать сложные формулы, но имела ограничения по размеру буфера и скорости работы.

В 1982 году Кнут полностью переписал TeX на языке WEB (смесь Pascal и документации), выпустив версию 2.0. В 1989 году вышла версия 3.0, в которой была добавлена поддержка шрифтов в формате METAFONT. С этого момента система считается стабильной: Кнут объявил, что вносить в неё новые функции не будет, ограничившись исправлением ошибок (багов). Номер версии после каждого исправления увеличивается на единицу, приближаясь к числу π (текущая версия — 3.141592653, по состоянию на 2025 год).

Распространение

В 1980-е годы TeX быстро распространился среди математиков, физиков и компьютерных специалистов. В 1985 году Лесли Лэмпорт разработал надстройку LaTeX, упростившую работу с документами. К началу 1990-х годов TeX стал де-факто стандартом для научных публикаций в области точных наук. В России система активно используется с середины 1990-х годов, особенно в математических журналах и университетских издательствах.

Архитектура и принципы работы

Основные компоненты

  • Ядро TeX — программа, интерпретирующая команды макросов и управляющая разбиением текста на строки, страницы и размещением символов.
  • Шрифты — наборы глифов в формате METAFONT (собственный формат Кнута) или PostScript Type 1 / OpenType.
  • Форматы — наборы макросов, расширяющих возможности ядра. Самые популярные: Plain TeX (базовый), LaTeX (стандартный для документов), ConTeXt (для сложной вёрстки).
  • Драйверы — программы, преобразующие выходной файл (DVI — DeVice Independent) в формат для печати или просмотра (PostScript, PDF).

Алгоритм разбиения на строки

Ключевая инновация TeX — алгоритм оптимального разбиения текста на строки, основанный на динамическом программировании. Система вычисляет для каждого возможного варианта переноса слов и пробелов штрафные очки, а затем выбирает глобально оптимальное разбиение абзаца. Это позволяет получать равномерные межсловные пробелы и избегать «висячих» строк.

Алгоритм разбиения на страницы

Аналогичный алгоритм применяется для разбиения документа на страницы. TeX учитывает запреты на разрывы (например, нельзя разрывать формулу или таблицу в неудобном месте) и стремится к равномерному заполнению страниц.

Поддержка математики

TeX предоставляет специальные команды для набора математических выражений:

  • Индексы и степени: x^2, a_{ij}
  • Дроби: \frac{a}{b}
  • Суммы и интегралы: \sum_{i=1}^n, \int_a^b
  • Скобки: \left(, \right)
  • Специальные символы: греческие буквы, операторы, стрелки

Система автоматически выбирает размер и положение символов, выравнивает формулы по центру и обрабатывает многострочные выражения.

Классификация и версии

Основные форматы

ФорматНазначениеРазработчик
Plain TeXБазовый, для опытных пользователейДональд Кнут
LaTeXСтандартный для документов (статьи, книги, отчёты)Лесли Лэмпорт
ConTeXtДля сложной вёрстки (презентации, бюллетени)Ханс Хаген
AMS-TeXДля математических публикацийАмериканское математическое общество

Дистрибутивы

  • TeX Live — наиболее полный дистрибутив для Linux, macOS и Windows. Содержит ядро, форматы, шрифты, утилиты и документацию.
  • MiKTeX — дистрибутив для Windows, ориентированный на лёгкую установку и автоматическую загрузку пакетов.
  • MacTeX — версия TeX Live для macOS, включает графическую оболочку TeXShop.

Применение

Научные публикации

TeX (в основном LaTeX) используется для подготовки статей в рецензируемых журналах, диссертаций, монографий и учебников. Многие издательства (Springer, Elsevier, American Mathematical Society) принимают рукописи в формате LaTeX.

Книгоиздание

Система применяется для вёрстки книг, особенно технической и математической литературы. В России TeX используется издательствами «МЦНМО», «Физматлит», «Лань» и другими.

Создание презентаций

С помощью пакета Beamer (надстройка LaTeX) создаются слайды для научных докладов и лекций.

Автоматизация документооборота

TeX используется для генерации отчётов, каталогов, бюллетеней и других документов с автоматическим обновлением данных.

Интересные факты

  • Номер версии — Кнут установил, что номер версии TeX после каждого исправления приближается к числу π. Текущая версия (3.141592653) соответствует π с точностью до 9 знаков после запятой. После смерти Кнута номер будет заморожен на π.
  • Премия за ошибки — Кнут выплачивает вознаграждение за каждую найденную ошибку в TeX: $2.56 за первую, $1.28 за вторую и так далее (уменьшение вдвое). По состоянию на 2025 год выплачено более 1000 долларов.
  • Влияние — TeX вдохновил создание многих других систем вёрстки, включая GNU TeXmacs, MathJax (для веба) и LyX (графический редактор).
  • Юбилей — В 2018 году отмечалось 40-летие первой версии TeX. В честь этого вышла специальная книга «Digital Typography» (сборник статей Кнута).

Критика

Несмотря на широкое признание, TeX имеет ряд недостатков:

  • Крутая кривая обучения — освоение системы требует времени и усилий, особенно для пользователей, не знакомых с программированием.
  • Сложность настройки — изменение стилей, шрифтов и макетов часто требует написания макросов или использования специализированных пакетов.
  • Устаревший подход — система ориентирована на однопроходную обработку (в отличие от современных WYSIWYG-редакторов), что затрудняет интерактивное редактирование.
  • Ограниченная поддержка графики — встроенные средства для работы с изображениями и диаграммами (например, TikZ) мощны, но требуют дополнительного обучения.

Тем не менее, для задач, связанных с набором математических формул и сложной вёрсткой научных текстов, TeX остаётся непревзойдённым инструментом.

Источники

  • Knuth, D. E. (1986). The TeXbook. Addison-Wesley.
  • Lamport, L. (1994). LaTeX: A Document Preparation System. Addison-Wesley.
  • Eijkhout, V. (1992). TeX by Topic. Addison-Wesley.
  • Документация дистрибутива TeX Live (2024).
  • Статья «TeX» в энциклопедии «Википедия» (русскоязычный раздел, 2025).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →