summaryrefslogtreecommitdiffstats
path: root/tmac/an-ext.tmac
diff options
context:
space:
mode:
Diffstat (limited to 'tmac/an-ext.tmac')
-rw-r--r--tmac/an-ext.tmac205
1 files changed, 205 insertions, 0 deletions
diff --git a/tmac/an-ext.tmac b/tmac/an-ext.tmac
new file mode 100644
index 0000000..5035bb2
--- /dev/null
+++ b/tmac/an-ext.tmac
@@ -0,0 +1,205 @@
+.\" groff extension macros for man(7) package
+.\"
+.\" Copyright (C) 2007-2022 Free Software Foundation, Inc.
+.\"
+.\" Written by Eric S. Raymond <esr@thyrsus.com>
+.\" Werner Lemberg <wl@gnu.org>
+.\" G. Branden Robinson <g.branden.robinson@gmail.com>
+.\"
+.\" You may freely use, modify and/or distribute this file.
+.\"
+.\" The code below provides extension macros for the 'man' macro
+.\" package. Care has been taken to make the code portable; groff
+.\" extensions are properly hidden so that all troff implementations can
+.\" use it without changes.
+.\"
+.\" With groff, this file is sourced by the 'man' macro package itself.
+.\" Man page authors who are concerned about portability might add the
+.\" used macros directly to the prologue of the man page(s).
+.
+.
+.\" Convention: Auxiliary macros and registers start with 'm' followed
+.\" by an uppercase letter or digit.
+.
+.\" Setting the `mG` register to a positive value (e.g., on the command
+.\" line) enables usage of macros defined here that have alternative
+.\" definitions in the main groff man macro file. This is for testing.
+.\" The logic uses subtraction due to frustrating, AT&T troff-compatible
+.\" limitations on the '!' operator.
+.
+.
+.\" Protect against being sourced twice.
+.nr mZ +1
+.if \n(mZ>1 \
+. nx
+.
+.\" Define this to your implementation's constant-width typeface.
+.ds mC CW
+.if n .ds mC R
+.
+.\" Save the automatic hyphenation mode.
+.\"
+.\" In AT&T troff, there was no register exposing the hyphenation mode,
+.\" and no way to save and restore it. Set `mH` to a reasonable value
+.\" for your implementation and preference.
+.de mY
+. ie !\\n(.g \
+. nr mH 14
+. el \
+. do nr mH \\n[.hy] \" groff extension register
+..
+.
+.nr mS 0 \" in a synopsis (SY/YS)?
+.nr mE 0 \" in an example (EX/EE)?
+.
+.
+.\" Declare start of command synopsis. Sets up hanging indentation.
+.de SY
+. ie !\\n(mS \{\
+. mY
+. nh
+. nr mS 1
+. nr mA \\n(.j
+. ad l
+. nr mI \\n(.i
+. \}
+. el \{\
+. br
+. ns
+. \}
+.
+. nr mT \w'\fB\\$1\fP\ '
+. HP \\n(mTu
+. rr mT
+. B "\\$1"
+..
+.
+.
+.\" End of command synopsis. Restores adjustment.
+.de YS
+. in \\n(mIu
+. ad \\n(mA
+. hy \\n(mH
+. rr mA
+. rr mI
+. nr mS 0
+..
+.
+.
+.\" Prepare link text for mail/web hyperlinks. `MT` and `UR` call this.
+.de mV
+. ds m1 \\$1\"
+..
+.
+.
+.\" Emit hyperlink. The optional argument supplies trailing punctuation
+.\" after link text. `ME` and `UE` call this.
+.de mQ
+. mY
+. nh
+<\\*(m1>\\$1
+. hy \\n(mH
+..
+.
+.
+.\" Start URL.
+.if \n(.g-\n(mG \{\
+.de UR
+. mV \\$1
+..
+.\}
+.
+.
+.\" End URL.
+.if \n(.g-\n(mG \{\
+.de UE
+. mQ \\$1
+..
+.\}
+.
+.
+.\" Start email address.
+.if \n(.g-\n(mG \{\
+.de MT
+. mV \\$1
+..
+.\}
+.
+.
+.\" End email address.
+.if \n(.g-\n(mG \{\
+.de ME
+. mQ \\$1
+..
+.\}
+.
+.
+.\" Set a man page cross reference.
+.\" .MR page-topic page-section [trailing-text]
+.if \n(.g-\n(mG \{\
+.de MR
+. mY
+. nh
+. ie \\n(.$=1 \
+. I \\$1
+. el \
+. IR \\$1 (\\$2)\\$3
+. hy \\n(mH
+..
+.\}
+.
+.
+.\" Continuation line for .TP header.
+.de TQ
+. br
+. ns
+. TP \\$1\" no doublequotes around argument!
+..
+.
+.
+.\" Start example.
+.if \n(.g-\n(mG \{\
+.de EX
+. br
+. if !\\n(mE \{\
+. nr mF \\n(.f
+. nr mP \\n(PD
+. nr PD 1v
+. nf
+. ft \\*(mC
+. nr mE 1
+. \}
+..
+.\}
+.
+.
+.\" End example.
+.if \n(.g-\n(mG \{\
+.de EE
+. br
+. if \\n(mE \{\
+. ft \\n(mF
+. nr PD \\n(mP
+. fi
+. nr mE 0
+. \}
+..
+.\}
+.
+.
+.\" Start display.
+.de DS
+. \" XXX to be written
+..
+.
+.
+.\" End display.
+.de DE
+. \" XXX to be written
+..
+.
+.\" Local Variables:
+.\" mode: nroff
+.\" fill-column: 72
+.\" End:
+.\" vim: set filetype=groff textwidth=72: