Избегать пробела в 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, а не сценарием, который просто распознает несколько распространенных макросов.