LaTeX: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
imported>Infovarius
Нет описания правки
 
imported>Alex NB OT
м унификация языковых шаблонов
 
Строка 1: Строка 1:
{{Cf|látex, Latex, làtex, latex}}
{{Карточка программы
| name =
| logo = LaTeX project logo bird.svg
| developer = [[Лэмпорт, Лесли|Лесли Лэмпорт]]
| released = 1984
| genre = [[Компьютерная вёрстка|настольное издательское ПО]]
| programming_language = <!-- язык программирования -->
| language = LaTeX
| operating_system = [[кроссплатформенное программное обеспечение]]
| platform = <!-- аппаратная платформа -->
| latest_release_version = 2e (записывается как <math>2\varepsilon</math>)
| latest_release_date =
| latest_preview_version = <!-- текущая тестовая версия -->
| latest_preview_date = <!-- дата выпуска текущей тестовой версии -->
| license = [[LaTeX Project Public License]] (LPPL)
| website = http://www.latex-project.org
}}
'''LaTeX''' (произносится {{IPAc-en|ˈ|l|ɑː|t|ɛ|x}} или {{IPAc-en|ˈ|l|eɪ|t|ɛ|x}}<ref>[https://www.texfaq.org/FAQ-latexpronounce How should I pronounce «LaTeX(2ε)»?] {{Wayback|url=https://www.texfaq.org/FAQ-latexpronounce |date=20200815072423 }} — «a lot of people pronounce it „Lay TeX“ or perhaps „Lah TeX“ […]. It is definitely not to be pronounced in the same way as the rubber-tree gum»; [https://www.texfaq.org/FAQ-TeXpronounce How should I pronounce «TeX»?] {{Wayback|url=https://www.texfaq.org/FAQ-TeXpronounce |date=20200809001716 }} — «…a bit like the „ch“ in the Scots word „loch“ ([x] in the IPA)»</ref>) — наиболее популярный набор макрорасширений (или макропакет) системы компьютерной [[вёрстка|вёрстки]] [[TeX]], который облегчает набор сложных документов. В типографском наборе системы TeX форматируется традиционно как {{LaTeX}}.
 
Важно заметить, что ни один из макропакетов для TeX’а не может расширить возможностей TeX (всё, что можно сделать в LaTeX’е, можно сделать и в TeX’е без расширений), но, благодаря различным упрощениям, использование макропакетов зачастую позволяет избежать весьма изощрённого программирования.
 
Пакет позволяет автоматизировать многие задачи набора текста и подготовки статей, включая набор текста на нескольких языках, нумерацию разделов и формул, перекрёстные ссылки, размещение иллюстраций и таблиц на странице, ведение библиографии и др. Кроме базового набора существует множество пакетов расширения LaTeX. Первая версия была выпущена [[Лэмпорт, Лесли|Лесли Лэмпортом]] в [[1984 год]]у; текущая версия, ''LaTeX2ε'', после создания в [[1994 год]]у испытывала некоторый период нестабильности, окончившийся к концу 2000-х годов, а в настоящее время стабилизировалась (хотя раз в год выходит новая версия).
 
Общий внешний вид документа в LaTeX определяется ''стилевым файлом''. Существует несколько стандартных стилевых файлов для статей, книг, писем и т. д., кроме того, многие издательства и журналы предоставляют свои собственные стилевые файлы, что позволяет быстро оформить публикацию, соответствующую стандартам издания.
 
Во многих развитых компьютерных аналитических системах, например [[Maple]], [[Mathematica]], [[Maxima]], [[Reduce]], возможен экспорт документов в формат [[TeX|*.tex]]. Для представления [[Википедия:Формулы|формул в Википедии]] также используется [[TeX]]-нотация.
 
Термин LaTeX относится только к языку разметки, он не является текстовым редактором. Для того чтобы создать документ с его помощью, надо набрать <kbd>.tex</kbd>-файл с помощью какого-нибудь текстового редактора. В принципе, подойдёт любой редактор, но обычно предпочитают использовать специализированные, которые так или иначе облегчают работу по набору текста LaTeX-разметки.
 
Будучи распространяемым под лицензией [[LaTeX Project Public License]], LaTeX относится к [[Свободное программное обеспечение|свободному программному обеспечению]].
 
== Система набора ==
Главная идея LaTeX состоит в том, что авторы должны думать о содержании, о том, что они пишут, не беспокоясь о конечном визуальном облике (печатный вариант, текст на экране монитора или что-то другое). Готовя свой документ, автор указывает логическую структуру текста (разбивая его на ''главы'', ''разделы'', ''таблицы'', ''изображения''), а LaTeX решает вопросы его отображения. Так содержание отделяется от оформления. Оформление при этом или определяется заранее (стандартное), или разрабатывается для конкретного документа.
 
Это похоже на ''стили'' оформления, которые используются в [[текстовый процессор|текстовых процессорах]], или на использование [[CSS|стилевых таблиц]] в [[HTML]].
 
== Возможности ==
Возможности системы, в принципе, не ограничены (благодаря механизму программирования новых макросов). Вот список некоторых возможностей, предлагаемых стандартными макросами и теми, которые можно [https://www.ctan.org/pkg скачать] с сервера [[CTAN]]:
 
* [[алгоритм]]ы расстановки переносов, определения междусловных пробелов, балансировки текста в абзацах;
* автоматическая генерация содержания, списка иллюстраций, таблиц и т. д.;
* механизм работы с перекрёстными ссылками на формулы, таблицы, иллюстрации, их номер или страницу;
* механизм цитирования [[библиография|библиографических источников]], работы с библиографическими картотеками;
* размещение иллюстраций (иллюстрации, таблицы и подписи к ним автоматически размещаются на странице и нумеруются);
* оформление [[математика|математических]] формул, возможность набирать многострочные формулы, большой выбор математических символов;
* оформление химических формул и структурных схем молекул [[органическая химия|органической]] и [[неорганическая химия|неорганической химии]];
* оформление [[граф (математика)|графов]], схем, диаграмм, синтаксических графов;
* оформление алгоритмов, исходных текстов программ (которые могут включаться в текст непосредственно из своих файлов) с синтаксической подсветкой;
* разбивка документа на отдельные части ([[тематическая карта|тематические карты]]).
 
Расширенные средства работы с библиографическими данными предоставляются программой [[BibTeX]]. Базовые возможности работы с математическими формулами расширяются с помощью пакета [[AMS-LaTeX]].
 
== Структура документа ==
Как и в случае с TeX’ом — исходные файлы для LaTeX’а можно сравнить с [[компьютерная программа|программами]]. Документ LaTeX — это текстовый файл, содержащий специальные команды языка разметки. Сам документ делится на ''преамбулу'' и ''тело''.
 
Преамбула содержит информацию про класс документа, использованные пакеты макросов, определения макросов, автора, дату создания документа и другую информацию.
 
Например,
<source lang="latex">
\documentclass[12pt]{article} % Документ принадлежит классу article, основная высота шрифта 12 пунктов
\usepackage[russian]{babel} % Подключить пакет поддержки русского языка
\title{Нормальное распределение} % Заглавие документа
\date{\today} % Дата создания документа (сегодняшний день)
</source>
 
Тело документа содержит собственно текст документа и команды разметки. Оно должно находиться между командами <code>\begin{document}</code> и <code>\end{document}</code>.
 
Например,
<source lang="latex">
\begin{document}
  \textbf{Нормальное распределение}, также называемое \textbf{распределением
  Гаусса}, "--- распределение вероятностей, которое играет важнейшую роль во
  многих областях знаний, особенно в физике. Физическая величина подчиняется
  нормальному распределению, когда она подвержена влиянию огромного числа
  случайных помех. Ясно, что такая ситуация крайне распространена, поэтому
  можно сказать, что из всех распределений в природе чаще всего встречается
  именно нормальное распределение "--- отсюда и произошло одно из его названий.
\end{document}
</source>
 
=== Формат текста ===
Слова разделяются пробелами. Количество пробелов не имеет значения. Также пробелом считается единичный переход на новую строку. Пустые строки разделяют текст на [[абзац]]ы.
 
== Примеры ==
 
=== Hello world ===
Следующий документ выводит на печать «Hello world!»
 
{|
|-
|<source lang="latex">
\documentclass{article}
\begin{document}
Hello world!
\end{document}
</source>
|}
 
=== Документ с заголовком и формулами. ===
Пример показывает исходный текст и соответствующий результат:
 
<div class="noresize" style="overflow-x:auto">
{| class=wikitable
! Исходный код || Результат
|-
|<source lang="latex">
\documentclass[12pt]{article}
% Эта строка — комментарий, она не будет показана в выходном файле
\usepackage{ucs}
\usepackage[utf8x]{inputenc} % Включаем поддержку UTF8
\usepackage[russian]{babel}  % Включаем пакет для поддержки русского языка
\title{\LaTeX}
\date{}
\author{}
 
\begin{document}
  \maketitle
  \LaTeX{} "--- это своего рода препроцессор текста для \TeX{} "---
  программы компьютерной вёрстки. \LaTeX{} является программируемым и
  расширяемым, что позволяет автоматизировать большую часть аспектов
  набора, включая нумерацию, перекрёстные ссылки, таблицы и изображения
  (их размещение и подписи к ним), общий вид страницы, библиографию и
  многое-многое другое. \LaTeX{} был первоначально написан Лэсли Лампортом
  в 1984-м году и стал наиболее популярным способом использования \TeX{}а;
  очень мало людей сегодня пишут на оригинальном \TeX{}е. Текущей
  версией является \LaTeXe.
  \newline
  \begin{eqnarray}
    E &=& mc^2\\
    m &=& \frac{m_0}{\sqrt{1-\frac{v^2}{c^2}}}
  \end{eqnarray}
\end{document}
</source>
|| [[Файл:LaTeX output example.png|600px]]
|}
</div>
 
LaTeX можно дополнять с помощью [[макроязык]]а. Такие макросы обычно собраны в ''пакеты'', которые решают разные задачи — такие, как сложные математические выражения, работа с графикой. В показанном выше примере окружение <code>eqnarray</code> можно заменить на окружение <code>align</code><ref>{{cite web
|url        = http://www.tug.org/pracjourn/2006-4/madsen/
|first      = Lars
|last        = Madsen
|title      = Avoid eqnarray!?
|archive-url  = https://www.webcitation.org/65BuWvhAX?url=http://www.tug.org/pracjourn/2006-4/madsen/
|archive-date = 2012-02-04
|url-status    = dead
|lang=en}}</ref>
из пакета <code>amsmath</code>, которое даёт лучший (с типографской точки зрения) результат.
 
=== Формула ===
Формула для [[нормальное распределение|нормального распределения]] в LaTeX будет выглядеть так:
 
{|
|-
|<source lang="latex">
\frac{1}{\sigma\sqrt{2\pi}}
  \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
</source>
|}
 
а отображаться будет так:
 
: <math>\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)</math>
 
=== Формула с номером ===
{|
|-
|<source lang="latex">
\begin{equation}
  \label{eq:normal_dist}
  \frac{1}{\sigma\sqrt{2\pi}}
    \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
\end{equation}
</source>
|}
И теперь в местах, где надо сослаться на эту формулу, автор может писать <code>\ref{eq:normal_dist}</code>, а номер будет автоматически вставлен LaTeX’ом.
 
=== Построение графиков ===
Построение графиков осуществляется путем подключения пакетов PGFPlots (достаточно добавить в преамбулу документа команду <code>\usepackage{pgfplots}</code>), TikZ (окружение, устанавливающее оси графика).<ref>{{Cite web |url=https://habr.com/ru/post/250997/ |title=Построение графиков |access-date=2022-06-05 |archive-date=2022-06-05 |archive-url=https://web.archive.org/web/20220605211850/https://habr.com/ru/post/250997/ |url-status=live }}</ref>
 
== Вспомогательные программы ==
* [[METAFONT]] — система для создания векторных шрифтов для [[TeX]]а;
* [[MetaPost]] — система ''программирования'' векторной графики, представляемой в формате [[Encapsulated PostScript|EPS]], [[PDF]] и [[SVG]];
* {{не переведено|TeX4ht||en|TeX4ht}} — пакет программ для конвертации документов LaTeX в форматы [[HTML]], [[OpenDocument]], [[DocBook]] и другие;
* [[LaTeX2HTML]] — ещё одна программа для конвертации документов LaTeX в формат HTML;
* [[pdfLaTeX]] — программа для компиляции документов LaTeX непосредственно в формат PDF;
* Hevea — ещё одна программа конвертации документов в формат HTML.
 
== Версии ==
Текущая версия LaTeX’а — LaTeX2e. Долгое время предполагалось, что далее последует версия 3, но впоследствии разработчики решили вместо этого улучшать непосредственно текущую версию LaTeX’а<ref>{{cite web|author=Frank Mittelbach|title=Quo vadis LaTeX(3) Team — A look back and at the upcoming years|url=https://www.latex-project.org/publications/indexbyyear/2020/#quo-vadis-latex3-team--a-look-back-and-at-the-upcoming-years|date=2020|access-date=2021-10-01|archive-date=2021-10-16|archive-url=https://web.archive.org/web/20211016011027/https://www.latex-project.org/publications/indexbyyear/2020/#quo-vadis-latex3-team--a-look-back-and-at-the-upcoming-years|url-status=live}}</ref>.


{{wikipedia}}
Также существуют коммерческие реализации всего TeX’а, разработчики которых могут добавлять различные функциональные возможности,
= {{-en-}} =
вроде дополнительных [[гарнитура (типографика)|гарнитур]], или оказывать поддержку по телефону.


=== Морфологические и синтаксические свойства ===
Существует множество сборок TeX’а: [[TeX Live]] (мультиплатформенная), [[teTeX]] (устарела, по сравнению с TeX Live,
{{сущ en|LaTeX|слоги={{по-слогам|La|TeX}}
Unix), [[fpTeX]] (устарела), [[MiKTeX]] (Windows), [[MacTeX]], [[gwTeX]] (Mac OS X), [[OzTeX]]
}}
(Mac OS Classic), AmigaTeX (больше не доступна) и [[PasTeX]] (AmigaOS) доступна из репозитория [[Aminet]].
 
== Лицензирование ==
LaTeX — [[свободное ПО]], доступен на условиях [[LaTeX Project Public License]] (LPPL). LPPL не совместима с [[GNU GPL]], так как она требует, чтобы изменённые файлы были явно различимы с оригиналами (обычно, имели другие имена); это было сделано для того, чтобы быть уверенным, что зависимости между существующими файлами не будут нарушены, и чтобы избежать проблем с совместимостью.
 
Начиная с версии 1.3 LPPL совместима с [[Критерии Debian по определению свободного ПО|критериями Debian по определению свободного ПО (DFSG)]]. Так как LaTeX является свободным программным обеспечением, то он доступен для многих операционных систем, включая [[GNU/Linux]], [[Unix]] (включая ветку [[BSD]]), [[Microsoft Windows|Windows]], [[Mac OS X]], [[RISC OS]] и [[AmigaOS]].
 
== Программные реализации ==
Набор макрорасширений (или макропакет) LaTeX для системы компьютерной вёрстки TeX был первоначально реализован автором на самом Plain TeX’е. Однако сейчас уже существуют и иные реализации, перечисленные ниже.
 
Обычно LaTeX распространяется вместе с обычным TeX’ом. Будучи макропакетом, LaTeX предоставляет набор макросов TeX’а. Существуют и другие макропакеты, такие как Plain TeX, [[GNU Texinfo|GNU TeXinfo]], [[AMSTeX]] и [[ConTeXt]].
 
Когда TeX «компилирует» документ, цикл обработки (с точки зрения пользователя) следующий: макросы > TeX > драйвер > результат.
Существуют различные варианты каждого из этих шагов в разных сборках. Традиционный TeX выдаёт [[DVI (TeX)|DVI]] файл, который затем обычно преобразуется в [[PostScript]] файл. Позже Хан Тхе Тхань и другие написали [[PdfTeX|другую реализацию]] TeX’а, которая выдаёт результат в формате PDF, используя преимущества, даваемые этим форматом. Движок [[XeTeX]]’а, разработанный [[Кью, Джонатан|Джонатаном Кью]] (Jonathan Kew), использует современные шрифты и Юникод вместе с TeX’ом.


=== Произношение ===
Шрифт по умолчанию для LaTeX’а — [[Computer Modern]], разработанный [[Кнут, Дональд Эрвин|Кнутом]], даёт документам, создаваемым LaTeX’ом, такой же вид, как и у документов, создаваемых обычным TeX’ом.
{{transcription|laˈtʲɛx}}<ref>На официальном сайте разработчика указано: слово «LaTeX» произносится как «ла-тех» или «лей-тех», чтобы получалась рифма к слову «всех» или почти что «Бертольд Брехт». (And in case you were wondering, «LaTeX» is pronounced «Lah-tech» or «Lay-tech», to rhyme with «blech» or «Bertolt Brecht» (almost).) В русской традиции принято ставить ударение на последний слог.</ref>


=== Семантические свойства ===
=== Библиотеки ===
* KaTeX<ref>{{Cite web|url=https://khan.github.io/KaTeX/|title=KaTeX — The fastest math typesetting library for the web|publisher=khan.github.io|access-date=2017-01-03|archive-date=2017-02-14|archive-url=https://web.archive.org/web/20170214185621/https://khan.github.io/KaTeX/|url-status=live}}</ref>
* [[MathJax]]


==== Значение ====
== Русификация ==
# [[Латех]], набор макросов для языка программирования [[TeX]], облегчающий набор документа и автоматизирующий многие задачи (набор формул, работа с библиографией, перекрёстное цитирование, генерация содержания) {{пример||перевод=}}
Чтобы использовать [[Кириллица в Юникоде|кириллицу]], необходимо включить в преамбулу документа строки:
<source lang="latex">
\usepackage[...]{inputenc}
\usepackage[T2A]{fontenc}
</source>
В квадратных скобках вместо '''…''' нужно указать [[Кодировка|кодировку]], в которой будет набираться текст на русском языке, например: '''cp866''', '''cp1251''', '''koi8-r''' или '''utf8''', последняя рекомендуется.
Эти строки должны находиться в преамбуле ''до'' вызова каких-либо пакетов, использующих русские буквы.
После этого в тексте можно набирать русские буквы в указанной кодировке.


==== Синонимы ====
== LaTeX-редакторы ==
# —
{{основная статья|Сравнение редакторов TeX}}


==== Антонимы ====
Для облегчения набора и сборки документов LaTeX существует несколько [[Среда разработки программного обеспечения|интегрированных сред]] и специализированных редакторов, например:
# —
* [[Eclipse (среда разработки)|Eclipse]] + TeXlipse;
* [[Emacs]] + [[AUCTeX]] + [[RefTeX]] + [[PreviewLaTeX]];
* [[Gummi]] ([[Linux]]);
* [[Kile]] — редактор для среды [[KDE]];
* [[LEd]];
* [[LyX]] — [[текстовый процессор]] на основе LaTeX с [[GUI|графическим интерфейсом пользователя]];
* [[Scientific Workplace]] и [[Scientific Word]] — коммерческие [[WYSIWYG]]-редакторы для [[Windows]] (первый позволяет также проводить интерактивные вычисления);
* [[GNU TeXmacs|TeXmacs]] — WYSIWYG-редактор для работы со структурированными текстами, распространяется на условиях [[GNU GPL]];
* [[Texmaker]] (Windows, Linux, [[Mac OS X]]);
* {{Не переведено|TeXnicCenter||en|TeXnicCenter}} — мощный бесплатный редактор документов LaTeX, работает под Windows;
* [[TeXShop]] (Mac OS X);
* [[TeXstudio]] (Windows, Linux, Mac OS X);
* [[TeXworks]] (Windows, Linux, Mac OS X);
* [[Vim]] + Vim-LaTeX;
* [[WinEdt]] — условно бесплатный, работает под Windows;
* [[Winefish]];
* [[WinShell]]{{ref|ru}};
* [[Overleaf]] — онлайн-редактор LaTeX<ref>{{cite web|url=https://www.oferleaf.com|title=Overleaf|lang=en}}</ref>;
* Open-LaTeX-Studio<ref>{{Cite web|url=https://github.com/sebbrudzinski/Open-LaTeX-Studio|title=sebbrudzinski/Open-LaTeX-Studio|publisher=GitHub|access-date=2016-12-09|archive-date=2016-02-17|archive-url=https://web.archive.org/web/20160217213410/https://github.com/sebbrudzinski/Open-LaTeX-Studio|url-status=live}}</ref> — редактор LaTeX с возможностью совместной удалённой работы, работой с Dropbox и другими облаками. Написан на Java, работает на платформе NetBeans;
* [[Visual Studio Code]] + расширение [https://github.com/James-Yu/LaTeX-Workshop LaTeX-Workshop].


==== Гиперонимы ====
== См. также ==
# [[макропакет]], [[программа]]
{{навигация|Викиучебник=LaTeX}}
{{кол|2}}
* [[TeX]]
* [[XeTeX]]
* [[LuaTeX]]
* [[TeX Live]]
* [[BibTeX]]
* [[TeX Users Group]]
* [[pdfLaTeX]]
* [[Latex2rtf]]
* [[Latex2html]]
* [[CTAN]]
* [[Beamer (LaTeX)]], [[Prosper]] — пакеты для подготовки презентаций
* [[DocBook]]
* [[Википедия:Формулы]]
{{конец кол}}


==== Гипонимы ====
== Примечания ==
# [[BibLaTeX]]
{{примечания}}


=== Родственные слова ===
== Литература ==
{{родств-блок|
* {{книга
|существительные=
|заглавие = LaTeX: a document preparation system
|прилагательные=
|автор = [[Лэмпорт, Лесли|Lamport, Leslie]]
|глаголы=
|ссылка =https://archive.org/details/latexdocumentpre0000lamp
|наречия=
|isbn = 0-201-52983-1
|страниц = 273
|год = 1994
|издание =
|место = New York
|издательство = Addison-Wesley Publishing Company, Inc.
}}
* {{книга
|заглавие = Все про TeX
|автор = [[Дональд Кнут]]
|ссылка =
|isbn = 5-8459-0382-3
|страниц = 560
|год = 2003
|издание =
|место = М.
|издательство = [[Вильямс (издательство)|«Вильямс»]]
}}
* {{книга
|заглавие = Путеводитель по пакету LaTeX и его расширению LaTeX2ε
|автор = Гуссенс М., Миттельбах Ф., Самарин А.
|ссылка =https://archive.org/details/isbn_9785030033259
|isbn = 5-03-003325-4
|страниц = 606
|год = 1999
|издание =
|место = М.
|издательство = [[Мир (издательство)|«Мир»]]
}}
* {{книга
|заглавие = Путеводитель по пакету LaTeX и его Web-приложениям
|автор = Гуссенс М., Ратц С.
|ссылка =
|isbn = 5-03-003387-4
|страниц = 604
|год = 2001
|издание =
|место = М.
|издательство = [[Мир (издательство)|«Мир»]]
}}
* {{книга
|заглавие = Путеводитель по пакету LaTeX и его графическим расширениям
|автор = Гуссенс М., Ратц С., Миттельбах Ф.
|ссылка =
|isbn = 5-03-003388-2
|страниц = 621
|год = 2002
|издание =
|место = М.
|издательство = [[Мир (издательство)|«Мир»]], «Бином ЛЗ»
}}
* {{книга
|заглавие = Набор и вёрстка в системе LaTeX
|автор = Львовский С. М.
|isbn = 5-94057-091-7
|страниц = 448
|год = 2006
|ссылка = http://www.mccme.ru/free-books/llang/newllang.pdf
|издательство = [[Московский центр непрерывного математического образования|МЦНМО]]
|место = М.
}}
* {{книга
|заглавие = Компьютерная типография LaTeX
|автор = Балдин Е. М.
|ссылка = http://www.inp.nsk.su/~baldin/LaTeX/
|isbn = 978-5-9775-0230-6
|страниц = 304
|год = 2008
|издание =
|место =
|издательство = «БХВ-Петербург»
|тираж = 2000
}} (Книга доступна в [http://ctan.org/tex-archive/info/russian/Computer_Typesetting_Using_LaTeX электроном виде] на сайте [[CTAN]] под лицензией [[CC-BY-SA]].)
* {{книга
|заглавие = Сверстай диплом красиво: LaTeX за три дня
|автор = [http://www.stolyarov.info/stolyarov.html Столяров А. В.]
|ссылка = http://www.stolyarov.info/books/latex3days
|isbn = 978-5-317-03440-5
|страниц = 100
|год = 2010
|издание =
|место = Москва
|издательство = МАКС Пресс
|тираж = 200
}}
* {{книга
|заглавие = LaTeX по-русски
|автор = Котельников И. А., Чеботаев П. З.
|ссылка = http://www.tex.uniyar.ac.ru/doc/kotelnikovchebotaev2004b.pdf
|isbn = 978-5-7931-0878-2
|страниц = 496
|год = 2011
|издание =
|место =
|издательство = {{СПб.}}&nbsp;: «Корона-Век»
|тираж = 2000
}}
}}
* [https://web.archive.org/web/20171201034240/https://www.miwie.org/tex-refs/tex-refs.html References for TeX and Friends]
* ''[[Воронцов Константин Вячеславович|Воронцов К. В.]]'' [http://www.ccas.ru/voron/download/voron05latex.pdf Latex в примерах]. М., 1996.


=== Этимология ===
== Ссылки ==
* [http://www.latex-project.org/ LaTeX Project]{{ref|en}} — официальный сайт
* [http://www.tex.uniyar.ac.ru/doc.html Документация, руководства и т. д.] {{Wayback|url=http://www.tex.uniyar.ac.ru/doc.html |date=20200217205558 }}
* [https://www.codecogs.com/latex/eqneditor.php Редактор LaTeX онлайн] на codecogs.com
* [http://detexify.kirelabs.org/classify.html Поиск кодировки символов на LaTeX]


Вторая часть слова — TeX — является названием языка программирования, придуманного профессором Стэнфордского университета Дональдом Эрвином Кнутом. Как он пишет в своей книге «The TEXbook» («Всё про TEX», М., Вильямс, 2003, с. 13), буквы T, E и X взяты из древнегреческого корня τέχ («искусство», «технология»). Приставка «La-» присоединена для того, чтобы отличать набор макросов LaTeX от языка программирования, для которого он предназначен (TeX) (Дональд Кнут попросил разработчиков кода, основанного на ядре TeX, присваивать своим продуктам имена, отличные от названия ядра), вероятно, происходит от фамилии создателя — Лесли Лампорта.
{{LaTeX navbox}}
{{TeX navbox}}
{{Языки разметки документов}}


{{Категория|язык=en|Компьютерные программы|Вёрстка|}}
[[Категория:TeX]]
{{improve|en}}
[[Категория:Кроссплатформенное программное обеспечение]]
{{длина слова|5|en}}
[[Категория:Программное обеспечение с лицензией LPPL]]

Текущая версия от 14:09, 15 ноября 2025

Шаблон:Карточка программы LaTeX (произносится Шаблон:IPAc-en или Шаблон:IPAc-en<ref>How should I pronounce «LaTeX(2ε)»? Шаблон:Wayback — «a lot of people pronounce it „Lay TeX“ or perhaps „Lah TeX“ […]. It is definitely not to be pronounced in the same way as the rubber-tree gum»; How should I pronounce «TeX»? Шаблон:Wayback — «…a bit like the „ch“ in the Scots word „loch“ ([x] in the IPA)»</ref>) — наиболее популярный набор макрорасширений (или макропакет) системы компьютерной вёрстки TeX, который облегчает набор сложных документов. В типографском наборе системы TeX форматируется традиционно как Шаблон:LaTeX.

Важно заметить, что ни один из макропакетов для TeX’а не может расширить возможностей TeX (всё, что можно сделать в LaTeX’е, можно сделать и в TeX’е без расширений), но, благодаря различным упрощениям, использование макропакетов зачастую позволяет избежать весьма изощрённого программирования.

Пакет позволяет автоматизировать многие задачи набора текста и подготовки статей, включая набор текста на нескольких языках, нумерацию разделов и формул, перекрёстные ссылки, размещение иллюстраций и таблиц на странице, ведение библиографии и др. Кроме базового набора существует множество пакетов расширения LaTeX. Первая версия была выпущена Лесли Лэмпортом в 1984 году; текущая версия, LaTeX2ε, после создания в 1994 году испытывала некоторый период нестабильности, окончившийся к концу 2000-х годов, а в настоящее время стабилизировалась (хотя раз в год выходит новая версия).

Общий внешний вид документа в LaTeX определяется стилевым файлом. Существует несколько стандартных стилевых файлов для статей, книг, писем и т. д., кроме того, многие издательства и журналы предоставляют свои собственные стилевые файлы, что позволяет быстро оформить публикацию, соответствующую стандартам издания.

Во многих развитых компьютерных аналитических системах, например Maple, Mathematica, Maxima, Reduce, возможен экспорт документов в формат *.tex. Для представления формул в Википедии также используется TeX-нотация.

Термин LaTeX относится только к языку разметки, он не является текстовым редактором. Для того чтобы создать документ с его помощью, надо набрать .tex-файл с помощью какого-нибудь текстового редактора. В принципе, подойдёт любой редактор, но обычно предпочитают использовать специализированные, которые так или иначе облегчают работу по набору текста LaTeX-разметки.

Будучи распространяемым под лицензией LaTeX Project Public License, LaTeX относится к свободному программному обеспечению.

Система набора

Главная идея LaTeX состоит в том, что авторы должны думать о содержании, о том, что они пишут, не беспокоясь о конечном визуальном облике (печатный вариант, текст на экране монитора или что-то другое). Готовя свой документ, автор указывает логическую структуру текста (разбивая его на главы, разделы, таблицы, изображения), а LaTeX решает вопросы его отображения. Так содержание отделяется от оформления. Оформление при этом или определяется заранее (стандартное), или разрабатывается для конкретного документа.

Это похоже на стили оформления, которые используются в текстовых процессорах, или на использование стилевых таблиц в HTML.

Возможности

Возможности системы, в принципе, не ограничены (благодаря механизму программирования новых макросов). Вот список некоторых возможностей, предлагаемых стандартными макросами и теми, которые можно скачать с сервера CTAN:

  • алгоритмы расстановки переносов, определения междусловных пробелов, балансировки текста в абзацах;
  • автоматическая генерация содержания, списка иллюстраций, таблиц и т. д.;
  • механизм работы с перекрёстными ссылками на формулы, таблицы, иллюстрации, их номер или страницу;
  • механизм цитирования библиографических источников, работы с библиографическими картотеками;
  • размещение иллюстраций (иллюстрации, таблицы и подписи к ним автоматически размещаются на странице и нумеруются);
  • оформление математических формул, возможность набирать многострочные формулы, большой выбор математических символов;
  • оформление химических формул и структурных схем молекул органической и неорганической химии;
  • оформление графов, схем, диаграмм, синтаксических графов;
  • оформление алгоритмов, исходных текстов программ (которые могут включаться в текст непосредственно из своих файлов) с синтаксической подсветкой;
  • разбивка документа на отдельные части (тематические карты).

Расширенные средства работы с библиографическими данными предоставляются программой BibTeX. Базовые возможности работы с математическими формулами расширяются с помощью пакета AMS-LaTeX.

Структура документа

Как и в случае с TeX’ом — исходные файлы для LaTeX’а можно сравнить с программами. Документ LaTeX — это текстовый файл, содержащий специальные команды языка разметки. Сам документ делится на преамбулу и тело.

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

Например, <source lang="latex">

\documentclass[12pt]{article} % Документ принадлежит классу article, основная высота шрифта 12 пунктов
\usepackage[russian]{babel} % Подключить пакет поддержки русского языка
\title{Нормальное распределение} % Заглавие документа
\date{\today} % Дата создания документа (сегодняшний день)

</source>

Тело документа содержит собственно текст документа и команды разметки. Оно должно находиться между командами \begin{document} и \end{document}.

Например, <source lang="latex">

\begin{document}
  \textbf{Нормальное распределение}, также называемое \textbf{распределением
  Гаусса}, "--- распределение вероятностей, которое играет важнейшую роль во
  многих областях знаний, особенно в физике. Физическая величина подчиняется
  нормальному распределению, когда она подвержена влиянию огромного числа
  случайных помех. Ясно, что такая ситуация крайне распространена, поэтому
  можно сказать, что из всех распределений в природе чаще всего встречается
  именно нормальное распределение "--- отсюда и произошло одно из его названий.
\end{document}

</source>

Формат текста

Слова разделяются пробелами. Количество пробелов не имеет значения. Также пробелом считается единичный переход на новую строку. Пустые строки разделяют текст на абзацы.

Примеры

Hello world

Следующий документ выводит на печать «Hello world!»

<source lang="latex">

\documentclass{article} \begin{document} Hello world! \end{document} </source>

Документ с заголовком и формулами.

Пример показывает исходный текст и соответствующий результат:

Исходный код Результат
<source lang="latex">

\documentclass[12pt]{article} % Эта строка — комментарий, она не будет показана в выходном файле \usepackage{ucs} \usepackage[utf8x]{inputenc} % Включаем поддержку UTF8 \usepackage[russian]{babel}  % Включаем пакет для поддержки русского языка \title{\LaTeX} \date{} \author{}

\begin{document}

 \maketitle
 \LaTeX{} "--- это своего рода препроцессор текста для \TeX{} "---
 программы компьютерной вёрстки. \LaTeX{} является программируемым и
 расширяемым, что позволяет автоматизировать большую часть аспектов
 набора, включая нумерацию, перекрёстные ссылки, таблицы и изображения
 (их размещение и подписи к ним), общий вид страницы, библиографию и
 многое-многое другое. \LaTeX{} был первоначально написан Лэсли Лампортом
 в 1984-м году и стал наиболее популярным способом использования \TeX{}а;
 очень мало людей сегодня пишут на оригинальном \TeX{}е. Текущей
 версией является \LaTeXe.
 \newline
 \begin{eqnarray}
   E &=& mc^2\\
   m &=& \frac{m_0}{\sqrt{1-\frac{v^2}{c^2}}}
 \end{eqnarray}

\end{document} </source>

LaTeX можно дополнять с помощью макроязыка. Такие макросы обычно собраны в пакеты, которые решают разные задачи — такие, как сложные математические выражения, работа с графикой. В показанном выше примере окружение eqnarray можно заменить на окружение align<ref>Шаблон:Cite web</ref> из пакета amsmath, которое даёт лучший (с типографской точки зрения) результат.

Формула

Формула для нормального распределения в LaTeX будет выглядеть так:

<source lang="latex">
\frac{1}{\sigma\sqrt{2\pi}}
  \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)

</source>

а отображаться будет так:

<math>\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)</math>

Формула с номером

<source lang="latex">
\begin{equation}
  \label{eq:normal_dist}
  \frac{1}{\sigma\sqrt{2\pi}}
    \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
\end{equation}

</source>

И теперь в местах, где надо сослаться на эту формулу, автор может писать \ref{eq:normal_dist}, а номер будет автоматически вставлен LaTeX’ом.

Построение графиков

Построение графиков осуществляется путем подключения пакетов PGFPlots (достаточно добавить в преамбулу документа команду \usepackage{pgfplots}), TikZ (окружение, устанавливающее оси графика).<ref>Шаблон:Cite web</ref>

Вспомогательные программы

  • METAFONT — система для создания векторных шрифтов для TeXа;
  • MetaPost — система программирования векторной графики, представляемой в формате EPS, PDF и SVG;
  • Шаблон:Не переведено — пакет программ для конвертации документов LaTeX в форматы HTML, OpenDocument, DocBook и другие;
  • LaTeX2HTML — ещё одна программа для конвертации документов LaTeX в формат HTML;
  • pdfLaTeX — программа для компиляции документов LaTeX непосредственно в формат PDF;
  • Hevea — ещё одна программа конвертации документов в формат HTML.

Версии

Текущая версия LaTeX’а — LaTeX2e. Долгое время предполагалось, что далее последует версия 3, но впоследствии разработчики решили вместо этого улучшать непосредственно текущую версию LaTeX’а<ref>Шаблон:Cite web</ref>.

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

Существует множество сборок TeX’а: TeX Live (мультиплатформенная), teTeX (устарела, по сравнению с TeX Live, Unix), fpTeX (устарела), MiKTeX (Windows), MacTeX, gwTeX (Mac OS X), OzTeX (Mac OS Classic), AmigaTeX (больше не доступна) и PasTeX (AmigaOS) доступна из репозитория Aminet.

Лицензирование

LaTeX — свободное ПО, доступен на условиях LaTeX Project Public License (LPPL). LPPL не совместима с GNU GPL, так как она требует, чтобы изменённые файлы были явно различимы с оригиналами (обычно, имели другие имена); это было сделано для того, чтобы быть уверенным, что зависимости между существующими файлами не будут нарушены, и чтобы избежать проблем с совместимостью.

Начиная с версии 1.3 LPPL совместима с критериями Debian по определению свободного ПО (DFSG). Так как LaTeX является свободным программным обеспечением, то он доступен для многих операционных систем, включая GNU/Linux, Unix (включая ветку BSD), Windows, Mac OS X, RISC OS и AmigaOS.

Программные реализации

Набор макрорасширений (или макропакет) LaTeX для системы компьютерной вёрстки TeX был первоначально реализован автором на самом Plain TeX’е. Однако сейчас уже существуют и иные реализации, перечисленные ниже.

Обычно LaTeX распространяется вместе с обычным TeX’ом. Будучи макропакетом, LaTeX предоставляет набор макросов TeX’а. Существуют и другие макропакеты, такие как Plain TeX, GNU TeXinfo, AMSTeX и ConTeXt.

Когда TeX «компилирует» документ, цикл обработки (с точки зрения пользователя) следующий: макросы > TeX > драйвер > результат. Существуют различные варианты каждого из этих шагов в разных сборках. Традиционный TeX выдаёт DVI файл, который затем обычно преобразуется в PostScript файл. Позже Хан Тхе Тхань и другие написали другую реализацию TeX’а, которая выдаёт результат в формате PDF, используя преимущества, даваемые этим форматом. Движок XeTeX’а, разработанный Джонатаном Кью (Jonathan Kew), использует современные шрифты и Юникод вместе с TeX’ом.

Шрифт по умолчанию для LaTeX’а — Computer Modern, разработанный Кнутом, даёт документам, создаваемым LaTeX’ом, такой же вид, как и у документов, создаваемых обычным TeX’ом.

Библиотеки

Русификация

Чтобы использовать кириллицу, необходимо включить в преамбулу документа строки: <source lang="latex"> \usepackage[...]{inputenc} \usepackage[T2A]{fontenc} </source> В квадратных скобках вместо нужно указать кодировку, в которой будет набираться текст на русском языке, например: cp866, cp1251, koi8-r или utf8, последняя рекомендуется. Эти строки должны находиться в преамбуле до вызова каких-либо пакетов, использующих русские буквы. После этого в тексте можно набирать русские буквы в указанной кодировке.

LaTeX-редакторы

Ошибка скрипта: Модуля «Основная статья» не существует.

Для облегчения набора и сборки документов LaTeX существует несколько интегрированных сред и специализированных редакторов, например:

См. также

Шаблон:Навигация Шаблон:Кол

Шаблон:Конец кол

Примечания

Шаблон:Примечания

Литература

Ссылки

Шаблон:LaTeX navbox Шаблон:TeX navbox Шаблон:Языки разметки документов