summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorG. Branden Robinson <g.branden.robinson@gmail.com>2023-02-21 14:42:06 -0600
committerG. Branden Robinson <g.branden.robinson@gmail.com>2023-02-22 03:26:37 -0600
commita9767ace3dd6a4a500c02ff3658e6832fabc78ab (patch)
tree8d0863891ee8c99cd46e0e02f1c2b3a6f2d1e892 /contrib
parent2cf398e7f52eee9ecf5b8978f22bf252a7652e3d (diff)
downloadgroff-git-a9767ace3dd6a4a500c02ff3658e6832fabc78ab.tar.gz
[man pages]: Define page-local `MR` fallback.
[man pages]: Provide page-local fallback definition of new `MR` macro. I didn't think I was going to have to do this, but the premier site on the web for viewing Linux man pages, Michael Kerrisk's man7.org, has been pulling snapshots of the pages themselves without upgrading the underlying macros, and so man page cross references set with `MR` are getting lost in its presentations. (I acknowledge: Ingo Schwarze warned me something like this could happen.) This definition is intended as a stopgap measure only. I want to revert this after groff 1.23 is released and has spread to some reasonable degree. * contrib/chem/chem.1.man: * contrib/eqn2graph/eqn2graph.1.man: * contrib/gdiffmk/gdiffmk.1.man: * contrib/glilypond/glilypond.1.man: * contrib/gperl/gperl.1.man: * contrib/gpinyin/gpinyin.1.man: * contrib/grap2graph/grap2graph.1.man: * contrib/hdtbl/groff_hdtbl.7.man: * contrib/mm/groff_mm.7.man: * contrib/mm/groff_mmse.7.man: * contrib/mm/mmroff.1.man: * contrib/mom/groff_mom.7.man: * contrib/pdfmark/pdfroff.1.man: * contrib/pic2graph/pic2graph.1.man: * contrib/rfc1345/groff_rfc1345.7.man: * man/groff.7.man: * man/groff_char.7.man: * man/groff_diff.7.man: * man/groff_font.5.man: * man/groff_out.5.man: * man/groff_tmac.5.man: * man/roff.7.man: * src/devices/grodvi/grodvi.1.man: * src/devices/grohtml/grohtml.1.man: * src/devices/grolbp/grolbp.1.man: * src/devices/grolj4/grolj4.1.man: * src/devices/gropdf/gropdf.1.man: * src/devices/gropdf/pdfmom.1.man: * src/devices/grops/grops.1.man: * src/devices/grotty/grotty.1.man: * src/devices/xditview/gxditview.1.man: * src/preproc/eqn/eqn.1.man: * src/preproc/eqn/neqn.1.man: * src/preproc/grn/grn.1.man: * src/preproc/pic/pic.1.man: * src/preproc/preconv/preconv.1.man: * src/preproc/refer/refer.1.man: * src/preproc/soelim/soelim.1.man: * src/preproc/tbl/tbl.1.man: * src/roff/groff/groff.1.man: * src/roff/nroff/nroff.1.man: * src/roff/troff/troff.1.man: * src/utils/addftinfo/addftinfo.1.man: * src/utils/afmtodit/afmtodit.1.man: * src/utils/grog/grog.1.man: * src/utils/hpftodit/hpftodit.1.man: * src/utils/indxbib/indxbib.1.man: * src/utils/lkbib/lkbib.1.man: * src/utils/lookbib/lookbib.1.man: * src/utils/pfbtops/pfbtops.1.man: * src/utils/tfmtodit/tfmtodit.1.man: * src/utils/xtotroff/xtotroff.1.man: * tmac/groff_man.7.man.in: * tmac/groff_me.7.man: * tmac/groff_ms.7.man: * tmac/groff_trace.7.man: * tmac/groff_www.7.man: Do it. Fixes <https://savannah.gnu.org/bugs/?63825>. Thanks greatly to Alexis for identifying an issue with mandoc(1)'s handling of an earlier iteration of this fallback, and to John Gardner for identifying a method of detecting mandoc as the renderer at formatting time. Tested with groff 1.22.4, mandoc 1.14.5, and groff Git HEAD (of course). The sed script I used follows. /^\.cp 0/a\ .\ .\\" Define fallback for groff 1.23's MR macro if the system lacks it.\ .nr do-fallback 0\ .if !\\n(.f .nr do-fallback 1 \\" mandoc\ .if \\n(.g .if !d MR .nr do-fallback 1 \\" older groff\ .if !\\n(.g .nr do-fallback 1 \\" non-groff *roff\ .if \\n[do-fallback] \\{\\\ . de MR\ . ie \\\\n(.$=1 \\\ . I \\%\\\\$1\ . el \\\ . IR \\%\\\\$1 (\\\\$2)\\\\$3\ . .\ .\\}\ .rr do-fallback ANNOUNCE: Update bug counts. Credit Alexis with assistance.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/chem/chem.1.man15
-rw-r--r--contrib/eqn2graph/eqn2graph.1.man15
-rw-r--r--contrib/gdiffmk/gdiffmk.1.man15
-rw-r--r--contrib/glilypond/glilypond.1.man15
-rw-r--r--contrib/gperl/gperl.1.man15
-rw-r--r--contrib/gpinyin/gpinyin.1.man15
-rw-r--r--contrib/grap2graph/grap2graph.1.man15
-rw-r--r--contrib/hdtbl/groff_hdtbl.7.man15
-rw-r--r--contrib/mm/groff_mm.7.man15
-rw-r--r--contrib/mm/groff_mmse.7.man15
-rw-r--r--contrib/mm/mmroff.1.man15
-rw-r--r--contrib/mom/groff_mom.7.man15
-rw-r--r--contrib/pdfmark/pdfroff.1.man15
-rw-r--r--contrib/pic2graph/pic2graph.1.man15
-rw-r--r--contrib/rfc1345/groff_rfc1345.7.man15
15 files changed, 225 insertions, 0 deletions
diff --git a/contrib/chem/chem.1.man b/contrib/chem/chem.1.man
index 78b55cab6..a02242f3f 100644
--- a/contrib/chem/chem.1.man
+++ b/contrib/chem/chem.1.man
@@ -26,6 +26,21 @@ documents
.do nr *groff_chem_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/eqn2graph/eqn2graph.1.man b/contrib/eqn2graph/eqn2graph.1.man
index 697163fc4..472a91671 100644
--- a/contrib/eqn2graph/eqn2graph.1.man
+++ b/contrib/eqn2graph/eqn2graph.1.man
@@ -16,6 +16,21 @@ equation into a cropped image
.do nr *groff_eqn2graph_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/gdiffmk/gdiffmk.1.man b/contrib/gdiffmk/gdiffmk.1.man
index 325b09cc1..bb0a27675 100644
--- a/contrib/gdiffmk/gdiffmk.1.man
+++ b/contrib/gdiffmk/gdiffmk.1.man
@@ -33,6 +33,21 @@ files
.do nr *groff_gdiffmk_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/glilypond/glilypond.1.man b/contrib/glilypond/glilypond.1.man
index 6bb5e9941..ae10bbd07 100644
--- a/contrib/glilypond/glilypond.1.man
+++ b/contrib/glilypond/glilypond.1.man
@@ -28,6 +28,21 @@ documents
.do nr *groff_glilypond_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/gperl/gperl.1.man b/contrib/gperl/gperl.1.man
index ed8f04264..77b2934df 100644
--- a/contrib/gperl/gperl.1.man
+++ b/contrib/gperl/gperl.1.man
@@ -26,6 +26,21 @@ documents
.do nr *groff_gperl_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/gpinyin/gpinyin.1.man b/contrib/gpinyin/gpinyin.1.man
index e50d6ab61..3c3884e33 100644
--- a/contrib/gpinyin/gpinyin.1.man
+++ b/contrib/gpinyin/gpinyin.1.man
@@ -27,6 +27,21 @@ documents
.do nr *groff_gpinyin_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.\" Local definitions
diff --git a/contrib/grap2graph/grap2graph.1.man b/contrib/grap2graph/grap2graph.1.man
index 7aecc350c..5914a846c 100644
--- a/contrib/grap2graph/grap2graph.1.man
+++ b/contrib/grap2graph/grap2graph.1.man
@@ -16,6 +16,21 @@ diagram into a cropped image
.do nr *groff_grap2graph_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/hdtbl/groff_hdtbl.7.man b/contrib/hdtbl/groff_hdtbl.7.man
index 163256656..af5ab875f 100644
--- a/contrib/hdtbl/groff_hdtbl.7.man
+++ b/contrib/hdtbl/groff_hdtbl.7.man
@@ -26,6 +26,21 @@ groff_hdtbl \- Heidelberger table macros for GNU
.do nr *groff_groff_hdtbl_7_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.ig
Some simple formatting macros. Note that we use '.ig' here and not a
diff --git a/contrib/mm/groff_mm.7.man b/contrib/mm/groff_mm.7.man
index 47800f41c..658532970 100644
--- a/contrib/mm/groff_mm.7.man
+++ b/contrib/mm/groff_mm.7.man
@@ -31,6 +31,21 @@ groff_mm \- memorandum macros for GNU
.do nr *groff_groff_mm_7_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/mm/groff_mmse.7.man b/contrib/mm/groff_mmse.7.man
index 4e75b621d..6ba94ebd5 100644
--- a/contrib/mm/groff_mmse.7.man
+++ b/contrib/mm/groff_mmse.7.man
@@ -32,6 +32,21 @@ groff_mmse \- svenska \(rqmemorandum\(rq makro f\(:or GNU
.do nr *groff_groff_mmse_7_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Syntax
diff --git a/contrib/mm/mmroff.1.man b/contrib/mm/mmroff.1.man
index 7683b4e7c..0a34b3a4c 100644
--- a/contrib/mm/mmroff.1.man
+++ b/contrib/mm/mmroff.1.man
@@ -31,6 +31,21 @@ macro package
.do nr *groff_mmroff_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/mom/groff_mom.7.man b/contrib/mom/groff_mom.7.man
index a4c2d8639..3872b8f63 100644
--- a/contrib/mom/groff_mom.7.man
+++ b/contrib/mom/groff_mom.7.man
@@ -32,6 +32,21 @@ groff_mom \- modern macros for document composition with GNU
.do nr *groff_groff_mom_7_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.\" Setup
diff --git a/contrib/pdfmark/pdfroff.1.man b/contrib/pdfmark/pdfroff.1.man
index 263dea295..029a1f459 100644
--- a/contrib/pdfmark/pdfroff.1.man
+++ b/contrib/pdfmark/pdfroff.1.man
@@ -26,6 +26,21 @@ pdfroff \- construct files in Portable Document Format using
.do nr *groff_pdfroff_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/pic2graph/pic2graph.1.man b/contrib/pic2graph/pic2graph.1.man
index 571a520f2..84a906baf 100644
--- a/contrib/pic2graph/pic2graph.1.man
+++ b/contrib/pic2graph/pic2graph.1.man
@@ -16,6 +16,21 @@ diagram into a cropped image
.do nr *groff_pic2graph_1_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Synopsis
diff --git a/contrib/rfc1345/groff_rfc1345.7.man b/contrib/rfc1345/groff_rfc1345.7.man
index 9998e1690..c04cad94e 100644
--- a/contrib/rfc1345/groff_rfc1345.7.man
+++ b/contrib/rfc1345/groff_rfc1345.7.man
@@ -35,6 +35,21 @@ groff_rfc1345 \- special character names from RFC 1345 and Vim digraphs
.do nr *groff_groff_rfc1345_7_man_C \n[.cp]
.cp 0
.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
.
.\" ====================================================================
.SH Description