Котельников И., Чеботаев П. LaTeX2e по-русски (1185906), страница 28
Текст из файла (страница 28)
Таким образом, другие команды и процедуры могут появляться внутрипроцедуры alltt. В результате оказывается возможным изменить шрифт внутри процедуры с помощью, например, команды \emph, ввести файл при помощикоманды \input или вставить математическую формулу.1275.6. Расширенные процедуры форматирования\begin{alltt}В процедуре \emph{alltt} можнопереключать шрифты и набиратьматематические формулы.
Например:\( x\sp{2}+y\sp{2}=Z\sb{0}. \)\end{alltt}Пробелы учитываются!В процедуре alltt можнопереключать шрифты и набиратьматематические формулы. Например:x2 + y 2 = Z0 .Пробелы учитываются!Команды \(, \sp, \sb и \), использованные здесь, чтобы набрать формулу x2 +y 2 = Z0 , мы объясним в главе 6.
Отметим только, что вне процедуры allttту же формулу можно было бы записать: $x^{2}+y^{2}=Z_{0}$, однако внутриalltt символы $, ^, _ не имеют командного значения, коим они обладают вматематических формулах.5.6.3.Пакет verbatimПакет verbatim из коллекции tools изменяет одноимённую процедуру так, чтобыизбавиться от двух ограничений в её применении. Метод обращения к процедурепрежний:\begin{verbatim}\begin{verbatim*}......\end{verbatim}\end{verbatim*}(verbatim)Во-первых, теперь допускаются пробелы между \end и {verbatim}.
Во-вторых,процедура может печатать фрагменты текста неограниченных размеров, тогдакак стандартный метод её реализации, перешедший по наследству от LATEX 2.09,теоретически может вызвать переполнение памяти компьютера. Платой за новыйметод стало одно следствие, заставившее разработчиков LATEX 2ε отказаться отполной замены старого метода новым. Теперь текст, следующий за \end{verbatim}в той же строке, будет полностью игнорирован.
LATEX предупредит об этом сообщением:LaTeX warning: Characters dropped after \end{verbatim}!Эта проблема легко решается: во входном файле этот текст нужно перенести наследующую строку.В дополнение к verbatim пакет вводит процедуру comment, которая пропускает любой текст между \begin{comment} и \end{comment}:\begin{comment}...\end{comment}(verbatim)Кроме того, он определяет команды\verbatiminput{file}\verbatiminput*{file}(verbatim)которые считывают файл file и печатают его содержимое так, как это делаютсоответственно процедуры verbatim и verbatim*.1285.6.4.Глава 5. Форматирование абзацевПакет shortvrbПри частом использовании команды \verb, как в этой книге, где в изобилии цитируются имена команд LATEX’а, крепнет желание как-то сократить комбинациитипа \verb|.
. . |. Пакет shortvrb предлагает удобное решение.Необходимо выбрать какой-нибудь символ c, который редко встречается втексте. Это может быть тот символ, который чаще всего используется в команде\verb для выделения границ цитируемого текста. Обычно для этих целей подходит " или |. Если теперь ввести декларацию(shortvrb)\MakeShortVerb{\c}то в дальнейшем можно использовать c. . . c взамен \verbc.
. . c.\MakeShortVerb{\|}Теперь \verb|\em|эквивалентно |\em|.Теперь \em эквивалентно \em.Декларация\DeleteShortVerb{\c}(shortvrb)удаляет необычные свойства символа c. Повторяя \MakeShortVerb с разнымиаргументами, можно несколько символов одновременно приготовить для использования в качестве эквивалента команды \verb. Не беда, если случайно среди таких символов два окажутся одинаковыми: их отменит одна декларация\DeleteShortVerb. Декларация \DeleteShortVerb игнорируется, если её аргумент c не представляет собой сокращение команды \verb.
Обе декларации печатают на экране сообщение, если статус символа c изменяется. Обе декларацииявляются глобальными, то есть область их действия не ограничивается фигурными скобками. «Сокращённая» команда \verb не может находиться в аргументахдругих команд так же, как и сама команда \verb, но её можно использовать впроцедуре verbatim без всяких побочных явлений.Нешто я да не поймуПри моём-то при уму?Л. Филатов. Сказ про Федота-стрельцаГлава 6От арифметики до высшейматематикиПриверженцы визуального набора математических текстов тратят много сил наконструирование формул, транжиря драгоценное время на выбор подходящегоместа или шрифта для размещения каждого значка. Это не их дело! С этимпрекрасно справится LATEX! Он воспринимает логическую структуру формул ина этой основе производит их форматирование.
Математические выражения наязыке LATEX’а читаются так же, как если бы Читатель проговаривал их вслух,выводя мелом на доске. Впрочем, редакторы, которые способны сохранять визуально набранные формулы в разметке LATEX, могут быть полезны начинающемупользователю. Можно порекомендовать изделия корпорации Design Science, Inc.1Она производит коммерческий редактор формул MathType и его облегченнуюверсию TeXaide, которая распространяется бесплатно. Нужно только помнить,что эти редакторы реализуют лишь малую толику тех возможностей, которыеLATEX предоставляет опытному пользователю.6.1.Основные процедурыLATEX располагает тремя процедурами для форматирования математических формул: math, displaymath и equation, которые включают специальный математический режим форматирования. Его особенности мы рассмотрим чуть позже, аздесь объясним назначение каждой из перечисленных процедур.Процедура math размещает небольшие формулы, такие как E = mc2 , внутриабзаца.
Ввиду совершенно особого статуса математики в LATEX’е есть целых триварианта обращения к этой процедуре:\begin{math}\($.........\end{math}\)$Последний вариант, когда знаки $ метят начало и конец формулы в исходномтексте, обычно используется только для самых коротких формул. Его преиму1Адрес в интернете: http://www.mathtype.com/.130Глава 6. От арифметики до высшей математикищество состоит в краткости. Однако в больших формулах легко потерять один иззнаков $.
Так как оба знака в начале и конце формулы одинаковы, в результатепотери LATEX принимает за математическую формулу совсем не то, что следует.Первые два варианта не имеют такого недостатка.Процедура displaymath создаёт так называемое выключное уравнение, размещая его в отдельной строке:. . . в отдельной строке:...в отдельной строке:\[\sum_{n=1}^{\infty}\frac{(-1)^n}{1+n}=\ln2.\]∞(−1)n= ln 2.1+nn=1Обращение к процедуре displaymath имеет два варианта:\begin{displaymath}\[......\end{displaymath}\]TEX имеет собственный аналог процедуры displaymath, когда выключная формула записывается в виде $$...$$. Строго говоря, третий вариант процедурыmath также есть прямое обращение к TEX’у, минуя надстройку LATEX.
Однако, вотличие от $...$, использование $$...$$ не является полным аналогом процедуры LATEX’а. Такие мелочи иногда несущественны, но один случай, когда выключные формулы, записанные в виде $$...$$, не подчиняются правилам LATEX’а,будет отмечен в конце этого раздела.Процедура\begin{equation}...\end{equation}производит выключные уравнения и автоматически нумерует их. Пометив уравнение с помощью команды \label, можно организовать ссылку на него в любомместе печатного документа.\begin{equation}\label{math/1}\int_{-\infty}^{\infty}e^{-x^2}\,dx=\sqrt{\pi}.\end{equation}Это уравнение~(\ref{math/1}) настр.~\pageref{math/1}.∞2e−x dx =√π.(6.1)−∞Это уравнение (6.1) на стр.
130.Все перечисленные процедуры предназначены для сравнительно короткихформул, умещающихся в одной строке. LATEX умеет переносить со строки настроку формулы, формируемые процедурой math. Обычно разрыв производитсяна знаке равенства2 . Однако это не решает проблему размещения очень больших формул или систем уравнений. Поэтому LATEX имеет ещё процедуру arrayМесто разрыва может быть установлено командой \discretionary (раздел 4.4) при условии,что не загружены пакеты AMS-LATEX (глава 8).21316.2. От простого к сложномудля создания матриц и процедуру eqnarray для форматирования многострочныхформул или систем уравнений.
Эти процедуры описаны в разделах 6.4.5 и 6.8.Процедура math может использоваться в текстовой и строковой моде, процедура array — в математической, а остальные процедуры — только в текстовоймоде.Все выключные формулы выравниваются по центру строк, если в команде\documentclass не указана опция fleqn. Эта опция устанавливает, что выключные формулы располагаются на заданном расстоянии от левой границы окружающего текста. Однако опция fleqn не действует на выключные формулы,созданные при помощи $$...$$, поэтому запись вида $$...$$ следует избегать.Если выключная формула имеет номер, то по умолчанию он располагаетсясправа. Опция leqno в \documentclass изменяет правую нумерацию формул налевую.Все процедуры, нумерующие формулы, используют один и тот же счётчикequation, что обеспечивает единую нумерацию формул.
Формат номера формулы определяется классом печатного документа. Например, в классах book иreport формулы нумеруются независимо в пределах каждой главы (\chapter),а номер формулы содержит также указание на номер главы. Формат номераможет быть изменён посредством переопределения команды \theequation в соответствии с общими правилами работы со счётчиками (раздел 2.9).В главе 8 описаны пакеты AMS-LATEX. Они вводят ещё несколько процедурдля форматирования систем уравнений.6.2.От простого к сложномуСамая простая формула состоит из одной буквы x, которая в исходном тексте записывается в виде $x$.
На первый взгляд, она ничем не отличается от курсивноготекста \textit{x}, но уже следующий пример показывает, что в математическоймоде LATEX использует иные правила кернинга, чем в обычном тексте.Сравните: \textit{ffi} и $ffi$.Сравните: ffi и f f i.Символ -, известный нам в роли дефиса (-), превращается в знак минус (−); символы < и >, которые в обычном тексте отображаются по-разному в зависимостиот текущего языка, превращаются в знаки сравнения (< и >); символ * в текстеи формуле позиционируется разными способами: (*) и (∗) соответственно.В отличие от букв, цифры в математических формулах печатаются прямымшрифтом.Сравните: 1+2=3 и $1+2=3$.Сравните: 1+2=3 и 1 + 2 = 3.Математики любят «украшать» свои формулы греческими буквами и другимиэкзотическими значками. На сухом языке формул фраза «LATEX великолепен»может выглядеть так:$ \Lambda\alpha\tau\epsilon\chi \to \infty $Λατ ǫχ → ∞132Глава 6. От арифметики до высшей математикиСпециальные математические символы производятся командами, которые перечислены в таблицах 6.1–6.13.