groff-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[groff] 06/23: [man pages]: Define page-local `MR` fallback.


From: G. Branden Robinson
Subject: [groff] 06/23: [man pages]: Define page-local `MR` fallback.
Date: Thu, 23 Feb 2023 11:10:22 -0500 (EST)

gbranden pushed a commit to branch master
in repository groff.

commit a9767ace3dd6a4a500c02ff3658e6832fabc78ab
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Tue Feb 21 14:42:06 2023 -0600

    [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.
---
 ANNOUNCE                             |  7 ++--
 ChangeLog                            | 79 ++++++++++++++++++++++++++++++++++++
 contrib/chem/chem.1.man              | 15 +++++++
 contrib/eqn2graph/eqn2graph.1.man    | 15 +++++++
 contrib/gdiffmk/gdiffmk.1.man        | 15 +++++++
 contrib/glilypond/glilypond.1.man    | 15 +++++++
 contrib/gperl/gperl.1.man            | 15 +++++++
 contrib/gpinyin/gpinyin.1.man        | 15 +++++++
 contrib/grap2graph/grap2graph.1.man  | 15 +++++++
 contrib/hdtbl/groff_hdtbl.7.man      | 15 +++++++
 contrib/mm/groff_mm.7.man            | 15 +++++++
 contrib/mm/groff_mmse.7.man          | 15 +++++++
 contrib/mm/mmroff.1.man              | 15 +++++++
 contrib/mom/groff_mom.7.man          | 15 +++++++
 contrib/pdfmark/pdfroff.1.man        | 15 +++++++
 contrib/pic2graph/pic2graph.1.man    | 15 +++++++
 contrib/rfc1345/groff_rfc1345.7.man  | 15 +++++++
 man/groff.7.man                      | 15 +++++++
 man/groff_char.7.man                 | 15 +++++++
 man/groff_diff.7.man                 | 15 +++++++
 man/groff_font.5.man                 | 15 +++++++
 man/groff_out.5.man                  | 15 +++++++
 man/groff_tmac.5.man                 | 15 +++++++
 man/roff.7.man                       | 15 +++++++
 src/devices/grodvi/grodvi.1.man      | 15 +++++++
 src/devices/grohtml/grohtml.1.man    | 15 +++++++
 src/devices/grolbp/grolbp.1.man      | 15 +++++++
 src/devices/grolj4/grolj4.1.man      | 15 +++++++
 src/devices/gropdf/gropdf.1.man      | 15 +++++++
 src/devices/gropdf/pdfmom.1.man      | 15 +++++++
 src/devices/grops/grops.1.man        | 15 +++++++
 src/devices/grotty/grotty.1.man      | 15 +++++++
 src/devices/xditview/gxditview.1.man | 15 +++++++
 src/preproc/eqn/eqn.1.man            | 15 +++++++
 src/preproc/eqn/neqn.1.man           | 15 +++++++
 src/preproc/grn/grn.1.man            | 15 +++++++
 src/preproc/pic/pic.1.man            | 15 +++++++
 src/preproc/preconv/preconv.1.man    | 15 +++++++
 src/preproc/refer/refer.1.man        | 15 +++++++
 src/preproc/soelim/soelim.1.man      | 15 +++++++
 src/preproc/tbl/tbl.1.man            | 15 +++++++
 src/roff/groff/groff.1.man           | 15 +++++++
 src/roff/nroff/nroff.1.man           | 15 +++++++
 src/roff/troff/troff.1.man           | 15 +++++++
 src/utils/addftinfo/addftinfo.1.man  | 15 +++++++
 src/utils/afmtodit/afmtodit.1.man    | 15 +++++++
 src/utils/grog/grog.1.man            | 15 +++++++
 src/utils/hpftodit/hpftodit.1.man    | 15 +++++++
 src/utils/indxbib/indxbib.1.man      | 15 +++++++
 src/utils/lkbib/lkbib.1.man          | 15 +++++++
 src/utils/lookbib/lookbib.1.man      | 15 +++++++
 src/utils/pfbtops/pfbtops.1.man      | 15 +++++++
 src/utils/tfmtodit/tfmtodit.1.man    | 15 +++++++
 src/utils/xtotroff/xtotroff.1.man    | 15 +++++++
 tmac/groff_man.7.man.in              | 15 +++++++
 tmac/groff_me.7.man                  | 15 +++++++
 tmac/groff_ms.7.man                  | 15 +++++++
 tmac/groff_trace.7.man               | 15 +++++++
 tmac/groff_www.7.man                 | 15 +++++++
 59 files changed, 938 insertions(+), 3 deletions(-)

diff --git a/ANNOUNCE b/ANNOUNCE
index d9bd26c4f..31cf029a9 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -54,7 +54,7 @@ release shipped with three automated unit tests; this one 
ships with
 over 160 unit and regression tests.
 
 As of this writing, per the GNU Savannah bug tracker, the groff project
-has resolved 416 problems as fixed for the 1.23.0 release.  Some of the
+has resolved 417 problems as fixed for the 1.23.0 release.  Some of the
 bugs we've corrected were over 30 years old.
 
 Classifying these issues by type and the component of the project to
@@ -64,14 +64,14 @@ which they apply, we find the following.
   ----                              ---------
   Build/installation           39   Core                           96
   Crash/unresponsive           11   Driver: grohtml                 7
-  Documentation               101   Driver: gropdf                  9
+  Documentation               102   Driver: gropdf                  9
   Feature change               40   Driver: grops                   2
   Incorrect behavior          129   Driver: grotty                  4
   Lint                         15   Driver: others/general          8
   Rendering/cosmetics          10   Font: devpdf                    1
   Test                          4   Font: devps                     3
   Warning/suspicious behavior  67   Font: others/general            4
-                                    General                        47
+                                    General                        48
                                     Macros: man                    33
                                     Macros: mdoc                   13
                                     Macros: me                     36
@@ -159,6 +159,7 @@ of this release.
 Alan D. Salewski
 Alex Colomar
 Alexander Kanavin
+Alexis
 Andreas Kusalananda Kähäri
 Axel Kielhorn
 Ben Wong
diff --git a/ChangeLog b/ChangeLog
index 1ca54b3c9..7a7bb4a73 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,82 @@
+2023-02-21  G. Branden Robinson <g.branden.robinson@gmail.com>
+
+       [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.
+
 2023-02-20  G. Branden Robinson <g.branden.robinson@gmail.com>
 
        * tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh: Improve
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
diff --git a/man/groff.7.man b/man/groff.7.man
index 0391e5b8a..0d0539a98 100644
--- a/man/groff.7.man
+++ b/man/groff.7.man
@@ -28,6 +28,21 @@ language reference
 .do nr *groff_groff_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/man/groff_char.7.man b/man/groff_char.7.man
index 188fb80d3..14aeeaaee 100644
--- a/man/groff_char.7.man
+++ b/man/groff_char.7.man
@@ -30,6 +30,21 @@ special character and glyph repertoire
 .do nr *groff_groff_char_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
diff --git a/man/groff_diff.7.man b/man/groff_diff.7.man
index f27dcc281..1e0ecd8a4 100644
--- a/man/groff_diff.7.man
+++ b/man/groff_diff.7.man
@@ -29,6 +29,21 @@ and AT&T
 .do nr *groff_groff_diff_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
+.
 .
 .\" ====================================================================
 .\" Local definitions
diff --git a/man/groff_font.5.man b/man/groff_font.5.man
index a26003ed9..0ee1d9aa1 100644
--- a/man/groff_font.5.man
+++ b/man/groff_font.5.man
@@ -28,6 +28,21 @@ device and font description files
 .do nr *groff_groff_font_5_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
diff --git a/man/groff_out.5.man b/man/groff_out.5.man
index 65386de45..320315b08 100644
--- a/man/groff_out.5.man
+++ b/man/groff_out.5.man
@@ -28,6 +28,21 @@ intermediate output format
 .do nr *groff_groff_out_5_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/man/groff_tmac.5.man b/man/groff_tmac.5.man
index 20d1953d0..8126e594f 100644
--- a/man/groff_tmac.5.man
+++ b/man/groff_tmac.5.man
@@ -27,6 +27,21 @@ typesetting system
 .do nr *groff_groff_tmac_5_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
+.
 .
 .\" TODO: Consider parallelizing with our Texinfo node "Macro Packages".
 .\" ====================================================================
diff --git a/man/roff.7.man b/man/roff.7.man
index 153d2d336..e0058e808 100644
--- a/man/roff.7.man
+++ b/man/roff.7.man
@@ -31,6 +31,21 @@ typesetting
 .do nr *groff_roff_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
diff --git a/src/devices/grodvi/grodvi.1.man b/src/devices/grodvi/grodvi.1.man
index 8d7be9e5e..05cbe0d40 100644
--- a/src/devices/grodvi/grodvi.1.man
+++ b/src/devices/grodvi/grodvi.1.man
@@ -31,6 +31,21 @@ output driver for TeX DVI format
 .do nr *groff_grodvi_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
+.
 .
 .ie t .ds tx T\h'-.1667m'\v'.224m'E\v'-.224m'\h'-.125m'X
 .el .ds tx TeX
diff --git a/src/devices/grohtml/grohtml.1.man 
b/src/devices/grohtml/grohtml.1.man
index 4b8828124..2243b474c 100644
--- a/src/devices/grohtml/grohtml.1.man
+++ b/src/devices/grohtml/grohtml.1.man
@@ -31,6 +31,21 @@ output driver for HTML
 .do nr *groff_grohtml_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/src/devices/grolbp/grolbp.1.man b/src/devices/grolbp/grolbp.1.man
index f6ff7a3a0..c8cda762b 100644
--- a/src/devices/grolbp/grolbp.1.man
+++ b/src/devices/grolbp/grolbp.1.man
@@ -36,6 +36,21 @@ output driver for Canon CaPSL printers
 .do nr *groff_grolbp_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/src/devices/grolj4/grolj4.1.man b/src/devices/grolj4/grolj4.1.man
index 847d64451..622777985 100644
--- a/src/devices/grolj4/grolj4.1.man
+++ b/src/devices/grolj4/grolj4.1.man
@@ -31,6 +31,21 @@ output driver for HP LaserJet 4 and compatible printers
 .do nr *groff_grolj4_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
+.
 .\" This macro definition is poor style from a portability standpoint,
 .\" but it's a good test and demonstration of the standard font
 .\" repertoire for the devices where it has any effect at all, and so
diff --git a/src/devices/gropdf/gropdf.1.man b/src/devices/gropdf/gropdf.1.man
index db2b4b1f6..39eec969a 100644
--- a/src/devices/gropdf/gropdf.1.man
+++ b/src/devices/gropdf/gropdf.1.man
@@ -31,6 +31,21 @@ output driver for Portable Document Format
 .do nr *groff_gropdf_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
+.
 .
 .\" This macro definition is poor style from a portability standpoint,
 .\" but it's a good test and demonstration of the standard font
diff --git a/src/devices/gropdf/pdfmom.1.man b/src/devices/gropdf/pdfmom.1.man
index e77aff439..1b3dc014a 100644
--- a/src/devices/gropdf/pdfmom.1.man
+++ b/src/devices/gropdf/pdfmom.1.man
@@ -32,6 +32,21 @@ macro package for
 .do nr *groff_pdfmom_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/src/devices/grops/grops.1.man b/src/devices/grops/grops.1.man
index 0280507af..6789fb244 100644
--- a/src/devices/grops/grops.1.man
+++ b/src/devices/grops/grops.1.man
@@ -31,6 +31,21 @@ output driver for PostScript
 .do nr *groff_grops_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
+.
 .
 .\" This macro definition is poor style from a portability standpoint,
 .\" but it's a good test and demonstration of the standard font
diff --git a/src/devices/grotty/grotty.1.man b/src/devices/grotty/grotty.1.man
index b7c429a88..3dcafaee7 100644
--- a/src/devices/grotty/grotty.1.man
+++ b/src/devices/grotty/grotty.1.man
@@ -31,6 +31,21 @@ output driver for typewriter-like (terminal) devices
 .do nr *groff_grotty_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/src/devices/xditview/gxditview.1.man 
b/src/devices/xditview/gxditview.1.man
index 5e4646d66..920ccfdc4 100644
--- a/src/devices/xditview/gxditview.1.man
+++ b/src/devices/xditview/gxditview.1.man
@@ -35,6 +35,21 @@ intermediate output files in X11
 .do nr *groff_gxditview_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/src/preproc/eqn/eqn.1.man b/src/preproc/eqn/eqn.1.man
index 75e4ced83..c6b5d3c78 100644
--- a/src/preproc/eqn/eqn.1.man
+++ b/src/preproc/eqn/eqn.1.man
@@ -32,6 +32,21 @@ or MathML
 .do nr *groff_eqn_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
+.
 .
 .ie \n(.V<\n(.v \
 .  ds tx T\h'-.1667m'\v'.224m'E\v'-.224m'\h'-.125m'X
diff --git a/src/preproc/eqn/neqn.1.man b/src/preproc/eqn/neqn.1.man
index 24f8942dd..539afd018 100644
--- a/src/preproc/eqn/neqn.1.man
+++ b/src/preproc/eqn/neqn.1.man
@@ -29,6 +29,21 @@
 .do nr *groff_neqn_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/src/preproc/grn/grn.1.man b/src/preproc/grn/grn.1.man
index c8d3f9442..cbc15ae86 100644
--- a/src/preproc/grn/grn.1.man
+++ b/src/preproc/grn/grn.1.man
@@ -32,6 +32,21 @@ documents
 .do nr *groff_grn_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/src/preproc/pic/pic.1.man b/src/preproc/pic/pic.1.man
index 838f98d70..ac2864189 100644
--- a/src/preproc/pic/pic.1.man
+++ b/src/preproc/pic/pic.1.man
@@ -31,6 +31,21 @@ or TeX
 .do nr *groff_pic_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
+.
 .
 .\" ====================================================================
 .\" Definitions
diff --git a/src/preproc/preconv/preconv.1.man 
b/src/preproc/preconv/preconv.1.man
index 0e888c567..1535bae88 100644
--- a/src/preproc/preconv/preconv.1.man
+++ b/src/preproc/preconv/preconv.1.man
@@ -30,6 +30,21 @@ preconv \- prepare files for typesetting with
 .do nr *groff_preconv_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/src/preproc/refer/refer.1.man b/src/preproc/refer/refer.1.man
index dfae995ed..ad54ef317 100644
--- a/src/preproc/refer/refer.1.man
+++ b/src/preproc/refer/refer.1.man
@@ -30,6 +30,21 @@
 .do nr *groff_refer_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/src/preproc/soelim/soelim.1.man b/src/preproc/soelim/soelim.1.man
index 484ce1f60..4a1c04296 100644
--- a/src/preproc/soelim/soelim.1.man
+++ b/src/preproc/soelim/soelim.1.man
@@ -31,6 +31,21 @@ or other text files
 .\" Save and disable compatibility mode (for, e.g., Solaris 10/11).
 .do nr *groff_soelim_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
 .\" Man pages are seldom preprocessed with pic(1).
 .mso pic.tmac
 .
diff --git a/src/preproc/tbl/tbl.1.man b/src/preproc/tbl/tbl.1.man
index 5466bbcda..6fd06d634 100644
--- a/src/preproc/tbl/tbl.1.man
+++ b/src/preproc/tbl/tbl.1.man
@@ -32,6 +32,21 @@ documents
 .do nr *groff_tbl_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/src/roff/groff/groff.1.man b/src/roff/groff/groff.1.man
index 1759a6835..0873e175a 100644
--- a/src/roff/groff/groff.1.man
+++ b/src/roff/groff/groff.1.man
@@ -27,6 +27,21 @@ document formatting system
 .do nr *groff_groff_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
+.
 .\" Define a string for the TeX logo.
 .ie t .ds TeX T\h'-.1667m'\v'.224m'E\v'-.224m'\h'-.125m'X
 .el   .ds TeX TeX
diff --git a/src/roff/nroff/nroff.1.man b/src/roff/nroff/nroff.1.man
index 97c6aace7..6ccc9d49f 100644
--- a/src/roff/nroff/nroff.1.man
+++ b/src/roff/nroff/nroff.1.man
@@ -31,6 +31,21 @@ for TTY (terminal) devices
 .do nr *groff_nroff_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/src/roff/troff/troff.1.man b/src/roff/troff/troff.1.man
index 0bbbb0770..2ab12b969 100644
--- a/src/roff/troff/troff.1.man
+++ b/src/roff/troff/troff.1.man
@@ -28,6 +28,21 @@ typesetter and document formatter
 .do nr *groff_troff_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/src/utils/addftinfo/addftinfo.1.man 
b/src/utils/addftinfo/addftinfo.1.man
index 3cad99a3c..a60e8dff7 100644
--- a/src/utils/addftinfo/addftinfo.1.man
+++ b/src/utils/addftinfo/addftinfo.1.man
@@ -32,6 +32,21 @@ fonts for use with
 .do nr *groff_addftinfo_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/src/utils/afmtodit/afmtodit.1.man 
b/src/utils/afmtodit/afmtodit.1.man
index 79b18feab..e1e69b261 100644
--- a/src/utils/afmtodit/afmtodit.1.man
+++ b/src/utils/afmtodit/afmtodit.1.man
@@ -31,6 +31,21 @@ PostScript and PDF output
 .do nr *groff_afmtodit_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/src/utils/grog/grog.1.man b/src/utils/grog/grog.1.man
index abd020604..b705866f4 100644
--- a/src/utils/grog/grog.1.man
+++ b/src/utils/grog/grog.1.man
@@ -28,6 +28,21 @@ command a document requires
 .do nr *groff_grog_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/src/utils/hpftodit/hpftodit.1.man 
b/src/utils/hpftodit/hpftodit.1.man
index e645beb7b..12e3af794 100644
--- a/src/utils/hpftodit/hpftodit.1.man
+++ b/src/utils/hpftodit/hpftodit.1.man
@@ -32,6 +32,21 @@ and
 .do nr *groff_hpftodit_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/src/utils/indxbib/indxbib.1.man b/src/utils/indxbib/indxbib.1.man
index dd14ac164..df02fccda 100644
--- a/src/utils/indxbib/indxbib.1.man
+++ b/src/utils/indxbib/indxbib.1.man
@@ -29,6 +29,21 @@
 .do nr *groff_indxbib_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/src/utils/lkbib/lkbib.1.man b/src/utils/lkbib/lkbib.1.man
index 6d485729d..6295e5bc1 100644
--- a/src/utils/lkbib/lkbib.1.man
+++ b/src/utils/lkbib/lkbib.1.man
@@ -29,6 +29,21 @@ lkbib \- search bibliographic databases
 .do nr *groff_lkbib_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/src/utils/lookbib/lookbib.1.man b/src/utils/lookbib/lookbib.1.man
index fcbb739d2..aab5a048b 100644
--- a/src/utils/lookbib/lookbib.1.man
+++ b/src/utils/lookbib/lookbib.1.man
@@ -29,6 +29,21 @@
 .do nr *groff_lookbib_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/src/utils/pfbtops/pfbtops.1.man b/src/utils/pfbtops/pfbtops.1.man
index 61314a8b9..3d1bed5d4 100644
--- a/src/utils/pfbtops/pfbtops.1.man
+++ b/src/utils/pfbtops/pfbtops.1.man
@@ -30,6 +30,21 @@ Font ASCII
 .do nr *groff_pfbtops_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/src/utils/tfmtodit/tfmtodit.1.man 
b/src/utils/tfmtodit/tfmtodit.1.man
index b8590d16e..0f2175374 100644
--- a/src/utils/tfmtodit/tfmtodit.1.man
+++ b/src/utils/tfmtodit/tfmtodit.1.man
@@ -32,6 +32,21 @@ and
 .do nr *groff_tfmtodit_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
+.
 .
 .\" ====================================================================
 .\" Definitions
diff --git a/src/utils/xtotroff/xtotroff.1.man 
b/src/utils/xtotroff/xtotroff.1.man
index f598f4896..17fb0db44 100644
--- a/src/utils/xtotroff/xtotroff.1.man
+++ b/src/utils/xtotroff/xtotroff.1.man
@@ -31,6 +31,21 @@ font metrics
 .do nr *groff_xtotroff_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/tmac/groff_man.7.man.in b/tmac/groff_man.7.man.in
index 90aed7a1e..34a14c8c7 100644
--- a/tmac/groff_man.7.man.in
+++ b/tmac/groff_man.7.man.in
@@ -83,6 +83,21 @@ _endif()dnl
 .do nr *groff_groff_man_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/tmac/groff_me.7.man b/tmac/groff_me.7.man
index 8b0e0d834..4d27c4afc 100644
--- a/tmac/groff_me.7.man
+++ b/tmac/groff_me.7.man
@@ -52,6 +52,21 @@ documents
 .do nr *groff_groff_me_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/tmac/groff_ms.7.man b/tmac/groff_ms.7.man
index 4fbe8e26c..01afe61c7 100644
--- a/tmac/groff_ms.7.man
+++ b/tmac/groff_ms.7.man
@@ -32,6 +32,21 @@ manuscript macro package for formatting documents
 .do nr *groff_groff_ms_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/tmac/groff_trace.7.man b/tmac/groff_trace.7.man
index 45fbed598..63da8abb8 100644
--- a/tmac/groff_trace.7.man
+++ b/tmac/groff_trace.7.man
@@ -27,6 +27,21 @@ documents
 .do nr *groff_groff_trace_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/tmac/groff_www.7.man b/tmac/groff_www.7.man
index 4b34d3eef..599c3b7d5 100644
--- a/tmac/groff_www.7.man
+++ b/tmac/groff_www.7.man
@@ -32,6 +32,21 @@ macros for authoring web pages
 .do nr *groff_groff_www_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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]