Работа в системе LaTeX
Покупка
Новинка
Издательство:
ИНТУИТ
Автор:
Львовский Сергей Михайлович
Год издания: 2007
Кол-во страниц: 384
Дополнительно
Курс посвящен издательской системе LaTeX, предназначенной для набора и верстки текстов с формулами.
Тематика:
ББК:
УДК:
- 004: Информационные технологии. Вычислительная техника...
- 655: Полиграфическая промышленность. Полиграфические предприятия. Издательства. Книжная торговля
ОКСО:
- ВО - Бакалавриат
- 09.03.02: Информационные системы и технологии
- 42.03.03: Издательское дело
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Работа в системе LaTeX Львовский С. М. Национальный Открытый Университет “ИНТУИТ”
Работа в системе LaTeX Национальный Открытый Университет “ИНТУИТ” 2007 1
Работа в системе LaTeX/ С.М. Львовский - М.: Национальный Открытый Университет “ИНТУИТ”, 2007 Курс посвящен издательской системе LaTeX, предназначенной для набора и верстки текстов с формулами. (c) ООО “ИНТУИТ.РУ”, 2007 (c) С.М. Львовский, 2007 2
Предисловие …а латекс — это такой редактор под линухом. Из истории с сайта www.anekdot.ru В реплике из эпиграфа все неверно: LaTex не является текстовым редактором, работает отнюдь не только под операционной системой Linux (хотя и под ней тоже), наконец, его название произносится не “латекс”, а “латех”. Так что же такое LaTeX? Если отвечать одной фразой, это издательская система на базе TeX’а. Система компьютерной верстки TeX (произносится “тех”) была создана выдающимся американским математиком и программистом Дональдом Кнутом в конце 70-х годов XX века; издательские системы на ее базе по сию пору широко используются и сдавать позиции не собираются. Чем объясняется столь редкое в компьютерном мире долголетие? На первый взгляд, все свидетельствует против TeX’а. В самом деле, в отличие, допустим, от популярного ныне Microsoft Word’а, TeX не является системой типа WYSIWYG (What You See Is What You Get): чтобы посмотреть, как будет выглядеть на печати набираемый текст, надо запустить отдельную программу. И по структуре файлов TeX несовместим с Word’ом (что не удивительно: эта структура мало изменилась с начала 1980-х годов, когда никакого Word’а не было и в помине, а форматы Word-файлов меняются чуть ли не ежегодно). Наконец, чтобы работать в TeX’е, надо потратить определенное время на его изучение: трудно представить себе книгу под названием “TeX for dummies” (“TeX для болванов”). И что же в этом TeX’е хорошего? — спросит читатель. Вот краткий перечень TeX’овских достоинств: 1. Никакая другая из существующих в настоящее время издательских систем не может сравниться с TeX’ом в полиграфическом качестве текстов с математическими формулами. 2. Система TeX реализована на всех современных компьютерных платформах, и все эти реализации действительно работают одинаково. 3. Благодаря этому TeX стал международным языком для обмена математическими и физическими статьями: набрав свою статью в TeX’е, математик может послать ее по электронной почте своему коллеге, даже если отправитель работает под Windows, а получатель — с UNIX’ом или, допустим, на Макинтоше. 4. В Интернете существуют обширные “архивы препринтов”, в которые каждый может послать (и из которых каждый может получить) статью; все эти статьи набраны опять-таки в TeX’е. 5. Наконец, основные реализации TeX’а для всех платформ распространяются бесплатно. Разумеется, у TeX’а есть и недостатки. Главный из них — в том, что с помощью TeX’а 3
тяжело (хотя в принципе и возможно) готовить тексты со сложным расположением материала на странице (наподобие рекламных буклетов). Для таких приложений, практически не встречающихся в научно-технической литературе, TeX не предназначен. Настоящее пособие посвящено популярной издательской системе, основанной на TeX’е, — системе LaTeX. Оно пригодится как читателю, которому необходимо по роду своей работы готовить тексты с формулами, так и специалисту по компьютерной верстке. Для чтения значительной части книги никаких познаний в программировании или полиграфии не требуется: достаточен минимальный опыт работы на персональном компьютере в качестве пользователя. Более сложные разделы, сосредоточенные по большей части в конце книги, предназначены в первую очередь для полиграфистов. Книга подготовлена, как легко догадаться, с помощью системы LaTeX (с использованием пакета Xy-pic); исходные файлы книги являются свободно распространяемыми и сейчас размещаются по адресу ссылка: ftp://ftp.mccme.ru/pub/tex/lvovsky-newbook/newllang.zip (там же есть PostScript- и PDFфайлы). Выражаю глубокую благодарность А.Шеню, без многочисленных бесед и споров с которым эта книга никогда не была бы написана (собственно говоря, она возникла из попытки дополнить книгу, представляющую собой пересказ с немецкого языка пособия с дополнениями). Я благодарен И.А.Маховой за редактирование второго издания этой книги. При подготовке настоящего издания мне очень помогли беседы с М.Ю.Пановым, В.Ю.Радионовым и А.А.Черепановым; приложения написаны совместно с А.Шенем и В.В.Шуваловым; В.М.Гуровиц и В.В.Кондратьев нашли в тексте множество замечательных ошибок и опечаток. Last but not least, я рад выразить глубокую признательность В.Д.Арнольду за большую дружескую поддержку во время работы над всеми изданиями этого пособия. С.Львовский 4
Элементарное введение Данная лекция состоит из двух частей, прочитав которые, вы овладеете достаточными знаниями для начала работы в системе TeX’а и LaTeX’а. В первой части лекции разбираются основные понятия: команды, группы, окружения, параметры и т.д. Вторая часть посвящена набору формул в простейших случаях. Общие замечания Что такое TeX и LaTeX Как уже отмечалось в предисловии, TeX (произносится “тех”, пишется также “TeX”) это созданная американским математиком и программистом Дональдом Кнутом (Donald E. Knuth)- система для верстки текстов с формулами. Сам по себе TеX представляет собой специализированный язык программирования (Кнут не только придумал язык, но и написал для него транслятор, причем таким образом, что он работает совершенно одинаково на самых разных компьютерах), на котором пишутся издательские системы, используемые на практике. Точнее говоря, каждая издательская система на базе ТеХ-а представляет собой пакет макроопределений (макропакет) этого языка. В частности, LaTeX (произносится “латех” или “лэйтех”, пишется также “LaTeX”) - это созданная Лесли Лэмпортом (Leslie Lamport) издательская система на базе TeX-а. Прежде чем углубиться в изучение собственно LaTeX’а, скажем несколько слов о других издательских системах на базе TeX’а. Наряду с LaTeX’ом распространены также макропакеты Plain-TeX и AMS-TeX. Макропакет Plain-TeX был разработан самим Дональдом Кнутом, рассматривавшим его в качестве платформы для построения более сложных систем; на практике он используется и как средство для обмена текстами (текст, подготовленный для Plain TeX’а, сравнительно несложно переделать в исходный текст для того же LaTeX’а). Что касается AMS-TeX’а, то эта издательская система сориентирована на важный, но узкий круг приложений: верстку статей для математических журналов и книг, издаваемых Американским математическим обществом. Соответственно, в AMS-TeX’е предусмотрено большое количество весьма изощренных возможностей для создания сложных математических формул, но при этом нет многих вещей, которые естественно было бы ожидать в издательских системах общего назначения (например, автоматической нумерации частей документа). Современные версии LaTeX’а включают в себя AMS-TeX’овские возможности для набора формул (и используются Американским математическим обществом). Настоящее издание этой книги посвящено описанию LaTeX’а версии (она называется LaTeX , произносится ” два е” или “два эпсилон”). Эта версия, вышедшая в 1994 году, в настоящее время стала стандартной. Ее создатели Йоханнес Браамс (Johannes Braams), Михаэль Гуссенс (Michael Goossens), Алан Джеффри (Alan Jeffrey), Дэвид Карлайл (David Carlisle), Франк Миттельбах (Frank Mittelbach), Крис Роули (Chris Rowley) и Райнер Шепф (Rainer Schopf). Иногда встречаются тексты, набранные в более старой версии LaTeX’а (так называемый LaTeX 2.09, описанный в 5
предыдущих изданиях этой книги). Во многих случаях файл, подготовленный в LaTeX’e 2.09, успешно обрабатывается и с помощью LaTeX’а , хотя абсолютной совместимости “снизу вверх” все же нет. Достоинства и недостатки Все издательские системы на базе TeX’а обладают достоинствами, заложенными в самом TeX’е. Для новичка их можно описать одной фразой: напечатанный текст выглядит “совсем как в книге”. LaTeX как издательская система предоставляет удобные и гибкие средства достичь этого полиграфического качества. В частности, указав с помощью простых средств логическую структуру текста, автор может не вникать в детали оформления, причем эти детали при необходимости нетрудно изменить (чтобы, скажем, сменить шрифт, которым печатаются заголовки, не надо шарить по всему тексту, а достаточно заменить одну строчку в так называемом ” стилевом файле”). Такие вещи, как нумерация разделов, ссылки, оглавление и т.п. получаются почти что “сами собой”. Огромным достоинством систем на базе TeX’а является высокое качество и гибкость верстки абзацев и математических формул (в этом отношении TeX до сих пор не превзойден). Программа TeX (и все издательские системы на ее базе) неприхотлива к технике (в свое время автор этих строк с успехом работал в TeX’е на компьютерах на базе всеми забытого 80286-процессора, и даже на таком электронном тихоходе, как IBM XT, а уж с современными компьютерами проблем заведомо не возникает). С другой стороны, TeX’овские файлы (особенно английские — с русскими дело обстоит хуже; см приложение E) обладают высокой степенью переносимости: вы можете подготовить LaTeX’овский исходный текст на своей IBM PC, переслать его (скажем, по электронной почте) в издательство, и надеяться, что там ваш текст будет правильно обработан и на печати получится в точности то же, что получилось у вас при пробной печати на вашем любимом принтере (с той единственной разницей, что фотонаборный автомат даст отпечаток более высокого качества). Благодаря этому обстоятельству TeX стал очень популярен как язык международного обмена статьями по математике и физике. Есть у TeX’а и недостатки. Тем, кто привык к редакторам наподобие Word’а, может не понравиться, что TeX не является системой типа WYSIWYG: работа с исходным текстом и просмотр того, как текст будет выглядеть на печати, — разные операции. На взгляд автора, благодаря этой особенности время на подготовку текста типографского качества только сокращается, но представления об удобстве у всех разные. Далее, хотя параметры оформления менять легко, создать принципиально новое оформление (новый “класс документов”) — совсем не простое дело. Переносимость TeX’овских текстов снижается, если в них предусмотрен импорт графических файлов (эта возможность в TeX’е зависит от его реализации). Впрочем, в 6
последнее время в этом отношении наметился определенный прогресс: стандартом de facto в TeX’овском мире становится представление графики в формате PostScript, причем в LaTeX’e появились удобные средства для включения этой графики в текст. Наконец, как мы отмечали в предисловии, TeX плохо приспособлен для верстки страниц со сложным взаимодействием текста и графики. Литература по TeX’у Каноническое описание языка TeX и макропакета Plain TeX — трудная книга Дональда Кнута [2]. У рядового пользователя LaTeX’а необходимость читать эту книгу обычно не возникает. Каноническое описание AMS-TeX’а — книга [5], также написанная самим создателем AMS-TeXа Майклом Спиваком (Michael Spivak). Наконец, каноническое описание LaTeX’а — книга Лесли Лэмпорта[1]. Настоящее пособие в чем-то уже, чем книга[1], а в чем-то — шире: мы не упоминаем о некоторых средствах LaTeX’а, которые, на наш взгляд, редко используются на практике, но при этом рассказываем о многих полезных вещах, о которых в [1] не упоминается. Разнообразные модификации стандартного стиля оформления (” пакеты”) описаны в книге Миттельбаха, Гуссенса и Самарина [6], рассчитанной на читателя, уже умеющего работать в LaTeX’е. Некоторые другие книги по LaTeX’у приведены в списке литературы . Одной из первых книг по LaTeX’у на русском языке была брошюра [4], представляющая собой выполненный А.Шенем перевод краткого руководства [3] с дополнением переводчика, посвященным описанию одной из популярных реализаций TeX’а под DOS - системы emTeX. Как проходит работа с системой LaTeX В дальнейшем мы будем отмечать, какие свойства системы специфичны для LaTeX’а, а какие относятся вообще к TeX’у и ко всем издательским системам на его базе, но при первом чтении вы можете об этих тонкостях не задумываться и воспринимать слова TeX и LaTeX как синонимы. В частности, все, что сказано в этом разделе, применимо не только к LaTeX’у, но и к любому другому макропакету для TeX’а, хотя мы всегда будем говорить “LaTeX”. Для начала автор должен подготовить с помощью любого текстового редактора файл с текстом, оснащенным командами для LaTeX’а. Такие файлы по традиции имеют расширение “tex” (описанию того, что должно быть в таком файле, и посвящена вся эта книга )1). Дальнейшая работа протекает в два этапа. Сначала надо обработать файл с помощью программы-транслятора; в результате получается файл с расширением “dvi” (device independent - не зависящий от устройства). 7
Теперь полученный файл (его называют еще dvi-файлом) можно с помощью программ, называемых драйверами, распечатать на лазерном или струйном2). принтере, посмотреть на экране (текст будет в таком же виде, как он появится на печати) и т.д. (для разных устройств есть разные драйверы). Неудовлетворенный результатом, автор вносит изменения в исходный файл, и цикл повторяется. На самом деле повторений цикла будет больше, так как придется еще исправлять синтаксические ошибки в исходном тексте. Перед тем, как начать работать в системе LaTeX, вам необходимо уяснить для себя три вопроса: Что нужно сделать, чтобы оттранслировать исходный текст (т.е. создать из него dvi-файл)? Что нужно сделать, чтобы просмотреть dvi-файл на экране? Что нужно сделать, чтобы напечатать dvi-файл? Кроме того, для создания исходного текста нужно, естественно, уметь обращаться с каким-нибудь текстовым редактором. Ответы на эти вопросы проще всего получить у знакомых, которые уже пользуются TeX’ом; они же помогут его достать (практически все реализации TeX’а являются свободно распространяемыми) и установить. Некоторые сведения о реализациях TeX’а для систем типа Unix (Linux, FreeBSD и др.) и для DOS/Windows приведены в приложении E. Основные понятия Исходный файл Исходный файл для системы LaTeX представляет собой собственно текст документа вместе со спецсимволами и командами, с помощью которых системе передаются указания касательно размещения текста. Этот файл можно создать любым текстовым редактором, но при этом необходимо, чтобы в итоге получился так называемый “чистый” текстовый файл. Это означает, что текст не должен содержать шрифтовых выделений, разбивки на страницы и т.п. Исходный текст документа не должен содержать переносов (TeX сделает их сам). Слова отделяются друг от друга пробелами, при этом TeX не различает, сколько именно пробелов вы оставили между словами (чтобы вручную управлять пробелами, есть специальные команды, о которых пойдет речь позже). Конец строки также воспринимается как пробел. Соседние абзацы должны быть отделены друг от друга пустыми строками (опять-таки все равно, сколько именно пустых строк стоит между абзацами, важно, чтоб была хоть одна). В правой колонке приведен фрагмент исходного текста, а в левой - то, как он будет 8
выглядеть на печати после обработки системой LaTeX. . Слова разделяются пробелами, а абзацы пустыми строками. Абзацный отступ в исходном тексте оставлять не надо: он получается автоматически. Как мог заметить читатель, форматировать исходный текст не обязательно. Предупреждение: мы используем русские буквы в наших примерах, хотя стандартный LaTeX (без специальной “русификации”) их не понимает, и, строго говоря, следовало бы использовать латинские буквы. Подробнее об этом написано в приложении E. Спецсимволы Большинство символов в исходном тексте прямо обозначает то, что будет напечатано (если в исходном тексте стоит запятая, то и на печати выйдет запятая). Следующие 10 символов: {, }, $, &, #, %, _, ",^, \ имеют особый статус; если вы употребите их в тексте ” просто так”, то скорее всего получите сообщение об ошибке (и на печати не увидите того, что хотелось). Печатное изображение знаков, соответствующих первым семи из них, можно получить, если в исходном тексте поставить перед соответствующим символом без пробела знак “" (поанглийски он называется “backslash”): . Курс тугрика повысился на 7\%, и теперь за него дают \$200. Если символ “%” употреблен в тексте не в составе комбинации “\%”, то он является “символом комментария”: все символы, расположенные в строке после него (и сам “%”), TeX игнорирует. С помощью символа “%” в исходный текст можно вносить пометки “для себя”: . Это % глупый % Лучше: поучительный пример. 9