1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
Xroff, an alternative troff syntax
John Ankarström
Introduction
Xroff is an alternative syntax for troff, visually inspired
by SGML/XML. It differs from troff’s default syntax in the
following ways:
1. Xroff requests begin with a less‐than sign and end with a
greater‐than sign, e.g., <SH 1>. These symbols may be es‐
caped with a backslash.*
2. Xroff requests may be used inline. The following works as
expected: (<ft B>bold<ft R>).**
3. Xroff ignores empty lines.
4. Default troff syntax may be used between <![ and ]>.
The similarities with XML end at the visual level. Unlike
XML, xroff is unstructured and imperative. There is no con‐
cept of closing tags.
Example
<de b>\\fB\\$*\\fR<.>
<TL>Example document
<AU>John Doe
<AB>Pellentesque dapibus suscipit ligula. Donec posuere augue in quam.
Etiam vel tortor sodales tellus ultricies commodo. Suspendisse
potenti. Aenean in sem ac leo mollis blandit. Donec neque quam,
dignissim in, mollis nec, sagittis eu, wisi.<AE>
<SH 1>Introduction
<LP><b Nullam eu ante> vel est convallis dignissim. Fusce suscipit,
wisi nec facilisis facilisis, est dui fermentum leo, quis tempor
ligula erat quis odio. Nunc porta vulputate tellus.
───────────
* For comparison, default troff requests begin
with a newline and a control character, usually a
period or an apostrophe, and end with another new‐
line.
** Before an inline request, xroff automatically
inserts a \c escape when appropriate.
10 June 2022
‐2‐
Xroff
The program xroff translates xroff source to troff source.
Xroff‐mode
For Emacs users, there is a major mode named xroff‐mode that
provides syntax highlighting for xroff source. To further
improve the writing experience, I also recommend olivetti‐
mode.
Caveats
Xroff does not treat indented lines specially. As such, in‐
dentation cannot be used to convey structure.
10 June 2022
|