56
TeX, LaTeX и < А.В. Цыганов 2011

TeX, LaTeX и - spbu.ru · 2011-02-18 · Примерно через десять лет после начала работы над проектом системы metafont (создание

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

TeX, LaTeX и <

А.В. Цыганов 2011

Дональд Эрвин Кнут (Donald Ervin Knuth) является одним из немногих

людей, благодаря которым Computer Science заслуженно носит звание

научной дисциплины.

После того, как в 1975 году был издан третий том пятитомника «Искусство

программирования» , издатель окончательно избавился от печатной

машины с металлическим набором типа «монотип» и заменил его на

фотонаборное устройство.

Результат превзошжл все ожидания: получив оттиски, сделанные по новой

технологии, Д. Э. Кнут, который как раз подготовил второе издание второго

тома, сильно загрустил.

Сама мысль, что книги, на написание которых он потратил свыше

пятнадцати лет, будут так плохо выглядеть, не давала Кнуту покоя.

Человеческая цивилизация пока все ещж зависит от книг, статей и других

напечатанных документов, так как передача знаний это то, что делает

человека разумным.

TeX, Office и т.д. берут на себя техническую часть по подготовке рукописи,

оставляя человеку больше времени на творчество, и, в тоже время, позволяя

ему контролировать весь процесс создания от начала и до конца.

«Если кто-то другой набирает ваше произведение, то у вас нет

возможности контролировать появление ошибок; если же вы

выполняете эту работу самостоятельно, то можете винить только себя»

Дональд Э. Кнут.

(TeX – посох, XeTeX – зи<.., эмблемы TeX и METAFONT, созданы Дуайном

Бибби )

Примерно через десять лет после начала работы над проектом системы

METAFONT (создание шрифтов) и TeX (программа разбиения абзацев на

строки) были стабилизированы (версия 2.7 для METAFONT и 3.1 для TeX)

сам Кнут отошел от активной разработки.

В дальнейшем METAFONT и TeX модифицировались только для целей

исправления ошибок - рабочая версия METAFONT равна 2.71828, TeX —

3.141592 (числа e и соответственно)

На текущий момент TeX, скорее всего, самая свободная от ошибок

программа. Код TeX выпускался отдельной книгой «TeX: The Program»

(ISBN 0201134373), за обнаружение ошибки в своей программе Кнут

выплачивает очень приличное вознаграждение.

Кнут завещал, что после его смерти версии будут заморожены, а все оставшиеся неисправленные

ошибки будут считаться особенностями реализации.

TeX является примером свободной программы, которая возникла в

академической среде задолго до наступления эпохи GPL.

Лицензия на ПО опубликована в виде статьи в математическом журнале.

«Математическая формула не может быть чьей-то

„собственностью“! Она принадлежит Богу.»

Д. Э. Кнут.

LaTeX — свободное ПО, доступен на условиях LaTeX Project Public License,

котораял.) (LPPL). LPPL не совместима с GNU GPL, так как она требует,

чтобы изменжнные файлы были явно различимы с оригиналами (обычно,

имели другие имена); это было сделано для того, чтобы быть уверенным,

что зависимости между существующими файлами не будут нарушены и

чтобы избежать проблем с совместимостью.

В основу TeX заложена относительно простая идея.

TeX работает только с боксами (box) и клеем (glue).

Элементарные боксы — это буквы, которые объединяются в боксы-слова,

которые в свою очередь сливаются в боксы-строчки, боксы-абзацы и так далее.

Между боксами «разлит» клей, который имеет ширину по умолчанию и

степени увеличения/уменьшения этой ширины. Объединяясь в бокс более

высокого порядка, элементарные боксы могут шевелиться, но как только

найдено оптимальное решение, это состояние замораживается и полученный

бокс выступает как единое целое.

Наилучшее решение находится с помощью системы штрафов за то, что

клея использовано больше или меньше оптимального значения, а также за

разрывы абзаца в неподходящем месте.

Чем меньше штрафа было получено, тем размещение «красивее». В

зависимости от системы штрафов меняется форматирование.

Первоначально Кнут предполагал, что у TeX будет множество модификаций,

ибо каждая типография будет держать мастера-TeXника для создания своей

версии TeX под свои нужды, так что вначале TeX не являлся в полном смысле

языком программирования. Управляющие конструкции были добавлены в него

позже, когда стало понятно, что развитие TeXнологии пошло совсем по

другому пути.

В начале 1980 годов Лесли Лэмпорт начал разработку издательской системы

LaTeX, в основе которой лежал TeX. LaTeX представляет из себя набор макросов

(сборник рецептов) на языке TeX, позволяющих решить ту или иную задачу.

Чтобы выбрать сценарий стирки в автоматической стиральной машине, нет необходимости

думать в терминах числа оборотов, уровня воды и количества порошка — достаточно просто

выбрать готовое решение.

Чтобы пользоваться системой LaTeX, не надо быть TeXником — достаточно

выбрать готовый стиль и использовать несколько простых команд в

зависимости от того, что нужно сделать.

\documentclass{article} \usepackage{amsfonts,amssymb, amsmath,mathrsfs} \textheight 230mm \textwidth 165mm \topmargin -20mm \oddsidemargin0mm\parindent=7mm \renewcommand{\theequation}{\arabic{section}.\arabic{equation}} \begin{document} %%%%%%%%%%%% TITLE %%%%%%%%%%%%%% \title{Compatible Poisson brackets on $e(3)$ and classical $r$-matrices. } \author{ St.Petersburg State University, St.Petersburg, Russia\\ \it\small e--mail: [email protected]} \date{} \maketitle %%%%%%%%%%%%%%%%% INTODUCTION %%%%%%%%%% \section{Introduction.} \setcounter{equation}{0} Poisson brackets are called compatible if their linear combination is again a Poisson bracket, i.e. satisfies the Jacobi identity. A hierarchy of compatible Poisson brackets gives rise to the hierarchy of functions in involution, which may be treated either as integrals of motion or as variables of separation for integrable systems. On the other hand the classical $r$-matrix method encodes the Hamiltonian structure of the Lax equation, provides the involution of integrals of motion and gives a natural framework for quantizing integrable systems. So, relation of compatible Poisson structures with $r$-matrices is nowadays a subject of intense research, see e.g. \cite{bs09,ks89,mag78,rs88,ts06c,ts07b,ts08t} and references therein. According to \cite{rs88,rs94}, if $R$ is classical $r$-matrix and $N$ is intertwining operator in $\mathfrak g$, i.e. $N\in\mbox{End}\,\mathfrak g$ is a linear operator such that \bq\label{int-op} N[X,Y]=[NX,Y]=[X,NY] \eq for any $X,Y\in\mathfrak g$ , then $R\circ N$ is also a classical $r$-matrix. For a given matrix $R$ the $r$-matrices $R\circ N$ form a linear Lie pencil, which generates a family of compatible Lie-Poisson brackets on dual algebra $\mathfrak g^*$.

(показать примеры)

Выбор и установка LaTeX’a

LaTeX, собственно говоря, как и Linux, не является монолитной

программой. Он состоит из набора пакетов/программ, причем не

фиксированного, что позволяет создавать дистрибутивы, преследующие ту

или иную цель.

Все для TeX’a и LaTeX’a можно найти в CTAN или

The Comprehensive TeX Archive Network http://www.ctan.org

CTAN — это репозитарий, в который стекаются все сколь-нибудь стоящие

наработки в области TeX-строения.

CTAN — это множество зеркалируемых серверов по всему миру.

зайдем сюда

нам сюда

Библиотеки

Ядро ΤΕΧ’а представляет собой язык низкоуровневой разметки, содержащий

команды отступа и смены шрифта. Огромные возможности в ΤΕΧ’е

предоставляют готовые наборы макросов и расширений.

Наиболее распространжнные расширения стандартного ΤΕΧ’а (наборы

шаблонов, стилей и т. д):

e-TeX LaTeX AMS-TeX pdfTeX (автор Хан Тэ Тань, который умеет верстать сразу PDF) XeTeX LuaTeX Omega (TeX) BibTeX ABC (нотная запись) XymTeX – (химические формулы) ConTeXt

создают DVI файл

unicode

Для продвинутых: LaTEX старается дать пользователю средства описания структуры документа, а заботы о вжрстке взять на себя (возложить на разработчика класса документа). Однако некоторые средства управления вжрсткой пользователю всж же дажт (например, выбор начертаний и размеров шрифта). В результате получается более-менее пристойно свжрстанный документ практически без усилий со стороны пользователя (а пользователь может сосредоточится на содержании документа). На практике пользователи часто хотят так или иначе управлять вжрсткой. Хотя возможности самого LaTEX ограничены, нужных эффектов можно добиваться с помощью дополнительных макропакетов, которых существует очень много. К сожалению, активное использование этих макропакетов нарушает переносимость исходников между машинами, между пакетами могут быть конфликты, функциональность пакетов часто дублируется, а нужного результата достичь не всегда легко. Зато LaTEX — это практически «стандарт» для математических и физических статей. Создатели ConTEXt избрали другой подход: изначально дать пользователю контроль над вжрсткой документа. В результате, требуется немного больше усилий, чтобы сверстать маленький документ «с нуля» (всж таки над макетом документа надо подумать), зато сразу есть все средства для сложной вжрстки. Особенно радует многоколоночная вжрстка. Большое внимание было уделено возможности создания больших и сложных коллекций документов в едином стиле.

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

Современные - TeX Live - MiKTeX - proTeXt и т.д.

TeX Live создавался как дистрибутив, который можно было запускать

прямо с CD на базе “умершего” дистрибутива teTeX. Каждый год

выпускается новая версия дистрибутива. Текущая нумерация идет по

номеру года. TeX Live поддерживает все сколько-нибудь

распространенные платформы и отличается исключительной

переносимостью, но уже почти не “влезает” на один DVD диск.

MiKTeX — распространяется в виде инсталлятора базовой системы

(~100Мb) с возможностью доустановки нужных пакетов по сети или из

дистрибутива (автоматически или под контролем пользователя).

proTeXt — основан на MiKTeX, с большим набором пакетов, а также

других программ, наподобие TexMaker, TeXnicCenter, Ghostscript и

GSview... - все "из коробки".

зеркало

начнем с обновления уже установленных пакетов

проверить

russian

можно

убрать

лишнее

есть “меню”

есть описание пакетов

определяет правила расстановки переносов в словах на английском и русском языках

пакеты по различным областям деятельности

выбор необходимых нам форматов

перед выходом обязательно обновляем базу установленных файлов и форматы

Установка необходимых пакетов “на лету”

Кроме этого надо установить: программу для чтения PDF файлов - Adobe Reader или <., программы Ghostscript и Gsview

PostScript —язык программирования., хотя программы и создаются в

основном не людьми, а другими программами, в принципе ничто не мешает

писать на нжм программы для обсчжта графики, реализации численных

методов решения математических задач и т. п.

PostScript предоставляет возможность вывода высококачественной

векторной графики и единый язык управления, который используется

всеми производителями принтеров для растеризации.

Профессиональные принтеры (плоттеры) имеют встроенный интерпретатор

языка PostScript, а для задача создания растрового изображения возлагается

на центральный процессор.

Существуют интерпретаторы языка PostScript для всех операционных систем,

наиболее известный из них — Ghostscript.

TeX - конвеер

tex: простейший компилятор, бержт TeX-файл и создажт DVI-файл

pdftex: бержт TeX-файл и создажт PDF-файл

latex: наиболее используемый: бержт LaTeX-файл и создажт DVI-файл

pdflatex: бержт LaTeX-файл и создажт PDF-файл

dvips: конвертирует DVI-файл в PostScript

dvipdf: конвертирует DVI-файл в PDF

dvipdfm: улучшенная (с некоторых точек зрения) версия предыдущей

Круговорот LaTeX’a - классический

1) Внешние файлы. * fmt файл формата -содержит, главным образом, все команды LaTeX’а в предварительно откомпилированной форме. Также содержит информацию о переносах. При изменении значений глобальных переменных TeX требуется пересборка форматного файла: texconfig init. * cls, sty - определение макета и структуры документа. Класс документа (.cls) выбирается с помощью инструкции \documentclass. Дополнительные возможности и изменение поведения класса по умолчанию достигается с помощь пакетов (.sty) выбираемых посредством инструкции \usepackage. * tfm - метрики шрифтов. Размеры и правила взаимодействия литер друг с другом. * fd - приведение внешних названий шрифтов к виду, принятому в LaTeX. * pfb - векторные Type1 шрифты. * pk (mf) - растровые pk-шрифты по мере необходимости создаются из векторных mf-шрифтов (METAFONT) с необходимым разрешением. При печати качество не страдает, но при просмотре из-за низкого разрешения дисплея предпочтительнее векторные шрифты. 2) Файлы, создаваемые в процессе LaTeX-конвейера - при первом проходе записывается некоторое число информационных файлов, которые при последующих проходах используются для нумерации ссылок, составления оглавления и тому подобное. * log файл протокола. Сюда стекается вся информация, имеющая отношение к компиляции. Фактически дублирует стандартный вывод на экран. * aux информация о перекрестных ссылках. * toc файл оглавления (table of contents). * lof список иллюстраций (list of figures). * lot список таблиц (list of tables). * bbl список литературы, сформированный с помощью программы BibTeX. На первых порах можно обойтись без этой TeXнологии, но для серьезных проектов управление списком литературы становится не менее серьезной задачей. * ind предметный указатель, сформированный программой MakeIndex. В каждой уважающей себя и несущей полезную информацию книге есть такой. Для составления используются idx-файлы. Организация указателя — это отдельная задача.

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

Редакторы и среды

Для облегчения набора и сборки документов LaTeX существует несколько интегрированных сред и специализированных редакторов, например: 1. Eclipse + ΤΕΧlipse 2. Emacs + auctex + reftex + preview-latex; 3. Gummi Linux 4. Kile редактор для среды KDE 5. Led Linux, Windows 6. LyX — текстовый процессор на основе LaTeX с графическим интерфейсом

пользователя; 7. Scientific Workplace и Scientific Word: коммерческие WYSIWYG-редакторы для

Windows (первый позволяет также проводить интерактивные вычисления); 8. TeXmacs: WYSIWYG редактор для работы со структурированными текстами,

распространяется на условиях GNU GPL; 9. Texmaker Windows, Linux, Mac OS X 10. TeXnicCenter Windows; 11. TeXShop Mac OS X 12. TeXworks Windows, Linux, Mac OS X 13. Vim + Vim-LaTeX Windows 14. WinEdt Windows 15. Winefish 16. ………..

.

MathType is a powerful interactive

equation editor for Windows and

Macintosh that lets you create

mathematical notation for word

processing, web pages, desktop

publishing, presentations, elearning,

and for TeX, LaTeX, and MathML

documents.

WYSIWYG (what you see is what you get)

What You See Is What You Mean – видишь, что думаешь \documentclass{amsart} \usepackage{amssymb,latexsym} \usepackage{fontspec,xltxtra,xunicode} %\setmainfont[Mapping=tex-text]{Arial } \setmainfont{Cambria} \setromanfont{Cambria} \setmonofont[Kerning=Off,PunctuationSpace=0,LetterSpace=0,Ligatures=NoCommon]{Bookman Old Style} \setsansfont{Calibri} %\setmainfont{Cambria} %\setmonofont[Scale=MatchLowercase]{Courier} %\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} %\setsansfont{Lucida Grande} \newfontfamily{\Bic}{Harlow Solid Italic} \begin{document} \title{Illustrating document fonts\\ and font switching} \maketitle This is set in Garamond Premier Pro, the roman document font.--- \texttt{This is set in Courier, the typewriter style document font.} We set up a command, \verb+\Bic+, for switching to Bickham Script Pro:\\ {\Bic This is Bickham Script Pro.} \end{document}

Пример набора в обычном редакторе XeTeX файла.

используем шрифты из Оffice

Настройка редактора WinEdt 6.0.

не забудьте сохранить настройки перед выходом

Выбор шрифтов в редакторе для файлов набранных в utf, koi8-r, koi8-u, cp866, cp1251 и 8859-5 и т.д.

выбор шрифта в редакторе

1 – “да” 0 - “нет”

загрузка словарей для проверки правописания

текущая схема подсветки текста

Запуск просмотра сразу после компиляции

Обратный поиск из DVI файла в файле TEX

Литература: Это “зеркало” CTAN

LaTeX за 137 минут на русском языке