Lightroff, an alternative troff syntax John Ankarström Introduction Lightroff is an alternative syntax for troff, visually in‐ spired by SGML/XML. It differs from troff’s default syntax in the following ways: 1. Lightroff requests begin with a less‐than sign and end with a greater‐than sign, e.g., . These symbols may be escaped with a backslash.* 2. Lightroff requests may be used inline. The following works as expected: (bold).** 3. Lightroff ignores empty lines. 4. Default troff syntax may be used between . The similarities with XML end at the visual level. Unlike XML, lightroff is unstructured and imperative. There is no concept of closing tags. Example \\fB\\$*\\fR<.> Example document John Doe 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. Introduction 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, lightroff automati‐ cally inserts a \c escape when appropriate. 10 June 2022 ‐2‐ Lightroff The program lightroff translates lightroff source to troff source. Lightroff‐mode For Emacs users, there is a major mode named lightroff‐mode that provides syntax highlighting for lightroff source. To further improve the writing experience, I also recommend olivetti‐mode. Caveats Lightroff does not treat indented lines specially. As such, indentation cannot be used to convey structure. 10 June 2022