Избегать пробела в manpage после.BI

Я пытаюсь написать несколько портативную справочную страницу, в которой мне нужно описать формат конкретной строки. Я использую .BI макрос для переключения между фиксированной и переменной частями, однако у меня есть более шести компонентов (которые не являются переносимыми), а также части являются необязательными.

Целевое форматирование

USBномер::производитель::продукт::серийный[::тип]

то есть "USB" и двойные двоеточия выделены жирным шрифтом, "num", "изготовитель", "product", "serial" и "type" выделены курсивом и в квадратных скобках без специального форматирования.

Пока у меня есть

.BI USB num :: manufacturer :: product
.BI :: serial
.RB [ ::
.IB type ]

Однако это создает пробелы после "product", "serial" и последнего набора двойных двоеточий. Как я могу избежать этого, используя синтаксис, переносимый на разумное подмножество реализаций roff?

1 ответ

Решение

Использовать \cбежать, чтобы "соединить" строки текста.

Из Руководства пользователя Troff (CSTR 54, http://troff.org/54.pdf):

4.2. Прерванный текст. Копирование входной строки в режиме nofill (без заполнения) может быть прервано завершением частичной строки символом \c. Следующая встреченная строка входного текста будет считаться продолжением той же строки входного текста.

.BI USB num :: manufacturer :: product\c
.BI :: serial\c
.RB [ ::\c
.IB type ]

Это должно работать, пока форматер является настоящим *roff, а не сценарием, который просто распознает несколько распространенных макросов.

Другие вопросы по тегам