TeX | это... Что такое TeX? (original) (raw)
Тип | Компьютерная вёрстка |
Разработчик | Дональд Кнут |
Написана на | Изначально WEB |
Операционная система | Кроссплатформенное |
Языки интерфейса | TeX |
Первый выпуск | 1978 |
Последняя версия | 3.1415926 (март 2008) |
Состояние | Поддерживается |
Лицензия | Либеральная |
Сайт | tug.org |
ΤΕΧ (обычным текстом — TeX; произносится «тех»[1]) — система компьютерной вёрстки, разработанная американским профессором информатики Дональдом Кнутом в целях создания компьютерной типографии. В неё входят средства для секционирования документов, для работы с перекрёстными ссылками. Многие считают TeX лучшим способом для набора сложных математических формул. В частности, благодаря этим возможностям, TeX популярен в академических кругах, особенно среди математиков и физиков.
Название произносится как «тех» (от греч. τέχνη — «искусство», «мастерство»). В написании буква E опущена ниже T и X. Внутри самого TeX’а название форматируется как ΤΕΧ.
Тип MIME для ΤΕΧ — application/x-tex.
ΤΕΧ является свободным ПО.
Содержание
- 1 Особенности
- 2 История
- 3 Дистрибутивы
- 4 Интересные факты
- 5 Разновидности и расширения
- 6 См. также
- 7 Примечания
- 8 Литература
- 9 Ссылки
Особенности
В отличие от обыкновенных текстовых процессоров и систем компьютерной вёрстки, построенных по принципу WYSIWYG, в ΤΕΧ’е пользователь лишь задает текст и его структуру, а ΤΕΧ самостоятельно на основе выбранного пользователем шаблона форматирует документ, заменяя при этом дизайнера и верстальщика. Документы набираются на собственном языке разметки в виде обычных ASCII-файлов, содержащих информацию о форматировании текста или выводе изображений. Эти файлы (обычно имеющие расширение «.tex
») транслируются специальной программой в файлы «.dvi
» (device independent — «независимые от устройства»), которые могут быть отображены на экране или напечатаны. DVI-файлы можно специальными программами преобразовать в PostScript, PDF или другой электронный формат.
Ядро ΤΕΧ’а представляет собой язык низкоуровневой разметки, содержащий команды отступа и смены шрифта. Огромные возможности в ΤΕΧ’е предоставляют готовые наборы макросов и расширений. Наиболее распространённые расширения стандартного ΤΕΧ’а (наборы шаблонов, стилей и т. д): LaTeX (произносится «латех» или «лейтех») и AMS-TeX. При использовании пакета расширения LaTeX можно превратить разросшуюся статью в книгу изменением одного слова в исходнике, вставлять оглавление одной командой, не задумываться о нумерации разделов, теорем, рисунков. Есть много пакетов для оформления химических формул (например, пакет XymTeX), диаграмм (xypic), создания презентаций и визитных карточек и тому подобного.
Использование
TeX можно использовать для всех видов текста, начиная с короткого письма и заканчивая многотомными книгами, причём изначально TeX создавался для более длинных текстов и научных работ. Многие большие научные издательства используют его для книгопечатания или книжного набора. Особую силу имеют как формульный набор, так и очко шрифта.
С недавних пор стало возможным использование TeX для автоматического создания сложного макета для XML-данных. Различия в синтаксисе между двумя дескрипторными языками могут быть преодолены с помощью «TeXML». Таким образом, в контексте XML-публикации TeX можно рассматривать в качестве альтернативы XSL-FO.
Шрифты
Для создания шрифтов совместно с ΤΕΧ’ом используется специально разработанная Д. Кнутом система METAFONT, в которой шрифты описываются программами на специализированном языке Meta. Могут также использоваться векторные шрифты в формате PostScript Type 1, TrueType и OpenType.
История
Первый том книги «Искусство программирования» Д. Кнута был опубликован в 1969 году и печатался методом монотипии, технологии XIX века, которая давала на выходе издание в «хорошем классическом стиле», что нравилось Кнуту. Когда в 1976 году публиковалось второе издание второго тома, всю книгу пришлось набирать вновь, поскольку монотипия почти повсеместно была замещена фотографической техникой, и оригинальные шрифты больше не использовались.
Однако 30 марта 1977 года, когда Кнут получил новые оттиски, он увидел, что они выглядят ужасно. Примерно в это же время Кнут впервые увидел результат работы высококачественной цифровой типографической системы и заинтересовался возможностями цифровой типографии. Не оправдавшие ожиданий оттиски дали ему дополнительный толчок к тому, чтобы, разработав свою типографическую систему, решить проблему раз и навсегда. 13 мая 1977 года он написал заметку самому себе, описывающую базовые возможности ΤΕΧ’а.
Он планировал завершить систему во время своего творческого отпуска 1978 года, но финальная версия языка появилась на свет лишь в 1979 году. Летом 1978 года, когда Кнут писал первую версию ΤΕΧ’а, в Стенфорде находился Гай Стил (Guy Steele). Осенью того же года он вернулся в MIT и переписал систему ввода/вывода ΤΕΧ под операционную систему ITS. Первая версия ΤΕΧ’а была написана на языке программирования SAIL и работала на PDP-10 под операционной системой WAITS. Для следующих версий Кнут изобрёл концепцию «грамотного программирования» (англ. literate programming), способ получения совместимого исходного кода и документации к нему (конечно, в виде текста на ΤΕΧ’е) из одного и того же оригинального файла. Этот язык был назван WEB и производил программы на Паскале.
Новая, переписанная с нуля версия ΤΕΧ’а, была издана в 1982 году и названа TeX82. Помимо других изменений, первоначальный алгоритм переносов был заменён новым, написанным Франком Ляном (Frank Liang). Чтобы обеспечить воспроизводимость результата на различном оборудовании, вместо арифметики с плавающей запятой, TeX82 использовал арифметику с фиксированной запятой. Помимо этого, под нажимом Гая Стила, в TeX82 появился настоящий, тьюринг-полный язык программирования.
В 1989 году Дональд Кнут выпустил новые версии систем ΤΕΧ и METAFONT. Вопреки своему желанию сохранить программу неизменной, Кнут осознал, что 128 различных символов недостаточно, чтобы обеспечить ввод текста на разных языках. Таким образом, главным изменением в версии 3.0 была возможность работать с 8-битными входными данными, которые позволяли использовать 256 различных символов.
С версии 3.0 ΤΕΧ использует оригинальную систему нумерации версий: каждое обновление добавляет дополнительную десятичную цифру в конце номера версии так, что она асимптотически приближается к . Это отражает тот факт, что текущая версия ΤΕΧ’а — 3.1415926 — очень стабильна и возможны лишь мелкие обновления. Последнее обновление было в марте 2008 года. На версии 3.0 дизайн системы был заморожен, поэтому добавление новой функциональности не планируется и все новые версии будут содержать только исправления ошибок. Хотя Дональд Кнут сам предложил несколько областей, в которых ΤΕΧ мог бы быть улучшен, он тем не менее считал, что существование неизменной версии, которая бы выдавала одинаковый результат сейчас и в будущем, важнее, чем добавление новых возможностей. Поэтому он заявил, что «совершенно последнее изменение (сделанное после моей смерти)» сменит номер версии на , и с этого момента все ошибки станут особенностями. Точно так же версии системы METAFONT начиная с версии 2.0 асимптотически приближаются к и так же завершатся на e после смерти Кнута.
Дистрибутивы
Распространённые комплекты вёрстки на основе ΤΕΧ’а: для Windows — TeX Live и MikTeX, для UNIX-подобных систем — TeX Live и teTeX (последний более не поддерживается — первый считается его преемником), для Mac OS — MacTeX.
Интересные факты
ΤΕΧ применяется в исходных текстах Википедии для набора математических формул (см. Википедия:Формулы).
Название английской книги Michael Spivak (автора AMS-TeX) The Joy of ΤΕΧ («Радость ΤΕΧ’а») является игрой слов с другой известной книгой «The Joy of Sex» («Радость секса»).
Разновидности и расширения
- LaTeX
- pdfTeX
- XeTeX
- LuaTeX
- Omega (TeX)
- BibTeX
- ABC (нотная запись)
См. также
Примечания
Литература
- Кнут Д. Э. Все про ΤΕΧ = The ΤΕΧbook / Пер. с англ. М. В. Лисиной. — Протвино: АО RDΤΕΧ, 1993. — 592 с. — ISBN 5-900614-01-8
- Дональд Кнут. Все про TEX = The TEXBook. — М.: Вильямс, 2003. — С. 560. — ISBN 5-8459-0382-3
- Дональд Кнут. Все про METAFONT = The METAFONTbook. — М.: Вильямс, 2003. — С. 384. — ISBN 5-8459-0442-0
Ссылки
- Кириллический ΤΕΧ на сайте МГУ
- TeX в каталоге ссылок Open Directory Project (dmoz).
- ru_tex — русское ЖЖ-сообщество о ΤΕΧ’е.
- TeXLive — дистрибутив TeX Live.
- MiKTeX — дистрибутив MiKTeX.
- TeX Users Group — группа пользователей ΤΕΧ’а.
ΤΕΧ | |
---|---|
Макропакеты | AMS-LaTeX • ArabTeX • ConTeXt • FarsiTeX • Texinfo • • MusiXTeX • Plain TeX • PSTricks • TIPA • XyMTeX |
Альтернативные движки ΤΕΧ | eTeX • luaTeX • pdfTeX • XeTeX • New Typesetting System • Omega |
Дистрибутивы | TeX Live • teTeX • fpTeX • MiKTeX • proTeXt • MacTeX • gwTeX • OzTeX • Latexian • PasTeX |
Сообщество | CTAN • TUGboat • The PracTeX Journal • Deutschsprachige Anwendervereinigung TeX |
Related | DVI • Computer Modern • Metafont • MetaPost • WEB • CWEB • TeX Directory Structure • TeX font metric |
Языки разметки документов | |
---|---|
Офисных документов | Compound Document Format · OOXML (SpreadsheetML, PresentationML, WordprocessingML) · ODF · UOF |
Общеизвестные | HTML · XHTML · MathML · JSON · RTF · TeX · LaTeX |
Менее известные | CML · C-HTML · ConTeXt · Crossmark · DITA · DocBook · eLML · EAD · Enriched text · FHTML · GML · GuideML · HDML · HyTime · HyperTeX · IPF · FictionBook · LilyPond · LinuxDoc · Lout · MIF · MAML · MEI · MusicXML · OMDoc · OpenMath · POD · RTML · RTML · RFT · S1000D · TEI · Texinfo · troff · Вики-текст · WML · WapTV · XAML · YAML · Z Format |
Редакторы TeX | ||
---|---|---|
Свободные | GNU TeXmacs • Gummi • Kile • LaTeXila • LyX • MeWa • TeXShop • TeXnicCenter • Texmaker • TeXstudio • TeXworks | |
Бесплатные | LaTeX-Editor (LEd) • proTeXt • WinShell | |
Retail | Inlage • Scientific WorkPlace • VerbTeX • WinEdt | |
Онлайн | LaTeX Lab • ScribTeX | |
Категория • Сравнение |
Свободная типографика | |
---|---|
Гарнитуры операционных систем | GNU FreeFont • Ghostscript fonts • GNU Unifont • Droid • Roboto • Liberation • Ubuntu |
Другие гарнитуры | Allerta • Asana-Math • Bitstream Vera • Caslon Roman • Chandas • Charis SIL • Computer Modern • DejaVu • Doulos SIL • Fixedsys Excelsior • Gentium • Inconsolata • Junicode • Kochi • Linux Libertine • M+ • Nimbus Mono • Nimbus Roman • Nimbus Sans • PT • Tiresias • Ubuntu-Title • Terminus |
Программное обеспечение | FontForge • FreeType • METAFONT • MetaPost • METATYPE1 • Pango • TeX |
Лицензии | OFL • Ubuntu Font Licence |
Группы и люди | Дональд Кнут • Open Font Library |
Свободные гарнитуры UnicodeСписок свободных гарнитур • Список свободных гарнитур Unicode |
Дональд Кнут | |
---|---|
Публикации | Искусство программирования • «The Complexity of Songs» • Computers and Typesetting • Конкретная математика • Surreal Numbers • Things a Computer Scientist Rarely Talks About • Selected papers series |
Программное обеспечение | ΤΕΧ • MIXAL (MIX • MMIX • GNU MDK) |
Шрифты | AMS Euler • Computer Modern • METAFONT |
Грамотное программирование | WEB • CWEB |
Алгоритмы | Knuth's Algorithm X • Knuth–Bendix completion algorithm • Алгоритм Кнута — Морриса — Пратта • Knuth shuffle • Robinson–Schensted–Knuth correspondence • Trabb Pardo–Knuth algorithm |
Other | Dancing Links • Knuth reward check • Премия Кнута • Man or boy test • Quater-imaginary base • -yllion • Potrzebie system of weights and measures |