Литмир - Электронная Библиотека
Содержание  
A
A

Для форматирования достаточно вводить команду

.PP
перед каждым абзацем. В принципе при подготовке большинства документов можно обойтись дюжиной разных команд
ms
. Так, приложение 2, описывающее
hoc
, имеет название, имена авторов, резюме, автоматически нумеруемые заголовки разделов и абзацы. Здесь используется всего 14 различных команд, причем некоторые из них парами. В
ms
документ принимает следующую общую форму:

.TL

Название документа (одна или более строк)

.AU

Имена авторов, одно на строке

.AB

Резюме, оканчивающееся .AE

.AE

.NH

Нумеруемые заголовки (автоматически)

.PP

Абзац...

.PP

Другой абзац...

.SH

Подзаголовок (нет нумерации)

.PP

...

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

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

Ниже показано начало непосредственного документа

hoc
:

.TL

Hoc - диалоговый язык для арифметики с плавающей точкой

.AU

Брайан Керниган

Роб Пайк

.AB

.I Hoc

это простой программируемый интерпретатор

для выражений с плавающей точкой.

Он обеспечивает поток управления в стиле Си,

определения функций и обычные

числовые встроенные функции,

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

.AE

.NH

Выражения

.PP

.I Hoc

Это язык выражений, во многом подобный Си:

хотя он содержит несколько управляющих операторов,

большинство операторов, таких как присваивания,

это выражения, чьи значения не принимаются

во внимание.

...

Команда

.I
выделяет свой аргумент курсивом или переключает шрифт на курсив, если аргумента нет.

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

troff
:

$ troff -ms hoc.ms

Символы после

-m
определяют пакет макроопределений.[17] После форматирования с помощью
ms
документ
hoc
выглядит так:

Hoc — диалоговый язык для арифметики с плавающей точкой

Брайан Керниган

Роб Пайк

РЕЗЮМЕ

Hoc — это простой программируемый интерпретатор для выражений с плавающей точкой. Он обеспечивает поток управления в стиле Си, определения функций и обычные числовые встроенные функции, такие как косинус и логарифм.

1. Выражения

Hoc — это язык выражений, во многом подобный Си; хотя он содержит несколько управляющих операторов, большинство операторов, таких как присваивания, это выражения, чьи значения не принимаются во внимание.

Отображения

Хотя нам и удобно, что

troff
осуществляет заполнение и выравнивание текста, иногда нежелательно, в частности для программ, выравнивать их границы. Такое форматированное представление называется отображением текста. Команды
ms .DS
(начало отображения) и
.DE
(конец отображения) ограничивают текст, благодаря чему он выводится с отступами, но без реорганизации. Посмотрите на следующий фрагмент руководства по
hoc
, включающий короткое отображение:

.PP

.I Hoc

Это язык выражений,

во многом подобный Си:

хотя он содержит несколько управляющих операторов,

большинство операторов, таких как присваивания,

это выражения, чьи значения не принимаются во внимание.

Например, оператор присваивания

= присваивает значение его правой части

его левому операнду и вырабатывает значение,

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

Грамматика выражений такова:

.DS

.I

выражение: число

 | переменная

 | (выражение)

 | выражение бинарная-операция выражение

 | унарная-операция выражение

 | функция(аргументы)

.R

.DE

Числа представляются с плавающей точкой.

Данный фрагмент печатается так:

Hoc — это язык выражений, во многом подобный Си; хотя он содержит несколько управляющих операторов, большинство операторов, таких как присваивания, — это выражения, чьи значения не принимаются во внимание. Например, оператор присваивания = присваивает значение своей правой части левому операнду и вырабатывает значение, используемое в многократном присваивании. Грамматика выражений такова:

выражение: число

 | переменная

 | (выражение)

 | выражение бинарная_операция выражение

 | унарная_операция выражение

 | функция (аргументы)

Числа представляются с плавающей точкой.

вернуться

17

Макроопределения ms находятся в файле

/usr/lib/tmac/tmac.s
, а макроопределения
man
в файле
/usr/lib/tmac/tmac.an

125
{"b":"248117","o":1}