Смена размера шрифта осуществляется последовательностью \sn
n — одна или две цифры, определяющие новый размер: \s8 переключает на восьмиточечный размер. В принципе можно выполнять относительные замены, предпосылая размеру плюс или минус. Например, слова можно напечатать в SMALL CAPS, введя\s-2SMALL CAPS\s0
Комбинация \s0
\fP, но, следуя традиции troff, она не записывается как \sP. Наши расширения ms включают макрокоманду .UC (прописные буквы) для такого рода работы.troffДаже располагая хорошим пакетом макрокоманд, мы должны знать достаточно много команд troff
.br вызывает "обрыв", т.е. следующий вводимый за .br текст окажется на новой выходной строке. Это явление можно использовать, например, чтобы расщепить длинное название в подходящем месте:.TL
Hoc - Диалоговый язык
.BR
для арифметики с плавающей точкой
...
Команда .nf
.fi снова включает процедуру заполнения. Команда .се центрирует следующую строку.Команда .bp
.sp вызывает появление на выходе одной пустой строки. За командой .sp может следовать аргумент, чтобы задать число пустых строк или число пробелов:.sp 3
.sp .5
.sp 1.51
.sp 3p
.sp 3.1с
Лишнее пространство в нижней части страницы не играет роли, поэтому .sp
bp.Команда .ta
.ta
расставляет позиции табуляции на определяемых расстояниях от левой границы. Как и для .sp
i'. Позиция табуляции с суффиксом R вызывает правое выравнивание текста на очередной позиции табуляции, С вызывает центрированную табуляцию.Команда .ps n
.ft X устанавливает шрифт \s и \f.Определение макрокоманд во всей полноте потребовало бы от нас более детального изучения troff
.CW имеет вид.de CW
\&\f (CW\\$1\fP\\$2
...
Комбинация \$
\\ откладывает вычисление \$n на время определения макрокоманды. Комбинация \& не позволяет интерпретировать аргумент как команду troff в том случае, если он начинается с точки, как показано ниже:.CW .sp
9.3 Препроцессоры tbl
eqnПрограмма troff
eqn и tbl, действующих как процессоры для troff. Программа troff по существу представляет язык Ассемблера для наборной машины, a eqn и tbl компилируют для нее код.Вначале появилась eqn
yacc не для целей программирования[18]. Программа tbl, разработанная позднее, аналогична eqn, хотя и имеет независимый синтаксис; tbl не использует yacc, так как ее грамматика достаточно проста.Средства программных каналов UNIX предполагают строгое разделение на отдельные программы. Кроме разбиения на части (что так или иначе необходимо, поскольку troff