From c8a470de42c0993f5d4621897f7b22887462fc32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= Date: Thu, 24 Jun 2021 01:05:39 +0200 Subject: Use Heirloom troff Mg is now tested with both GNU and Heirloom troff. --- README.t | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) (limited to 'README.t') diff --git a/README.t b/README.t index fef5c88..256c03d 100644 --- a/README.t +++ b/README.t @@ -1,3 +1,6 @@ +.do xflag 3 +.papersize a4 +.fp 0 M DejaVuSansMono ttf .so g.tmac .so gx.tmac .so toc/toc.tmac @@ -18,7 +21,7 @@ . .\" configure environments .@e l -. fam M +. ft M . vs +1p .@e . @@ -27,7 +30,7 @@ .x Mg , a simple macro package for troff .d -John Ankarstr\(:om +John Ankarström .d e . .s @@ -48,10 +51,10 @@ It is designed to be easy to understand and to customize by editing the source code. .n It makes use of the extended support for environments -offered by many modern troff implementations. +offered by modern troff implementations. .n It is designed to be practically easy to use. -Macros are consistently one letter long and written in lowercase. +Macros consist of a single lowercase letter. .p While .i mg @@ -93,7 +96,7 @@ in order to see how the macro package is used in practice. .p .i Mg makes heavy use of named environments, -supported by implementations such as GNU troff and Neatroff. +supported by implementations such as GNU troff, Heirloom troff and Neatroff. Environments obliviate the need for many special registers that a macro package (and its user) would otherwise need to keep track of. For example, @@ -429,7 +432,7 @@ At the present, is nothing more than a wrapper around troff's built-in .c ev , but it may eventually be redefined in order to offer -compatibility with implementations of troff +compatibility with troff implementations without support for named environments. .p .c @e @@ -460,7 +463,7 @@ see 5.26\~\c .i Environments in the full GNU troff manual .nh -.c "info '(groff.\:info)Environments'" ). ( +.c "info \(aq(groff\:.info)Environments\(aq" ). ( .hy .) , are configured with the standard troff requests. @@ -498,9 +501,8 @@ you can switch to that environment and use the relevant troff requests: .p If you are merely configuring the environment without printing anything in it, -you can also use the -.c @e -macro: +you can also use +.c @e : .l \&.@e q \&.ps +1p @@ -531,20 +533,27 @@ or \&. \\" set header text \&. tl 'left'center'right' \&. \\" set position of page text +.ne 1 \&. sp |1i \&.. . .w s ll .se How do I redefine the page footer? +.p +To change the position of the footer: .l \&.\\" set position of footer trap \&.\\" (must be done before any macros have been called) \&.wh -1i @tf \&. +.p +To change the contents of the footer: +.l \&.de @f \&. \\" set position of footer text \&. \\" (must be below the footer trap) \&. sp |\\\\n(.pu-48p +\&. \\" set footer text \&. tl 'left'center'right' \&.. . @@ -554,8 +563,8 @@ Some macro packages have a concept of .q keeps , sections that are kept together across page breaks. .i Mg -does not define any such macros by default. -The simplest way to achieve the same is to use troff's +does not (at least yet) define any such macros by default. +The simplest solution is to use troff's .c ne request: .l @@ -646,7 +655,6 @@ macros .i toc , a script that invokes troff in three passes in order to allow a table of contents to be generated -.n .p Use .c te @@ -700,8 +708,6 @@ Thanks to the multiple passes performed by .c to can be invoked at any place in the document, including the beginning. -The macros listed above are the ones used to generate -the table of contents of this document. . .se How do I create a reference to a later page? .p -- cgit v1.2.3