gbranden pushed a commit to branch master
in repository groff.

commit 68ca283c26f4437f9c85d1e609c67189a5b28a0e
Author: G. Branden Robinson <[email protected]>
AuthorDate: Wed May 6 09:31:45 2026 -0500

    [groff]: Make `-I` stop implying `-g` and `-s`.
    
    To date, specifying `-I` has been the only way (employing only groff(1))
    as a pipeline manager, a usage we strongly encourage) to get an `-M`
    option of the same meaning to grn.
    
    However, we didn't know, simply from the user's specification of `-I`,
    that they meant to pass a `-M` option to grn.  Maybe they meant it for
    soelim(1).  Maybe they don't need preprocessors at all.
    
    With grn(1) now accepting `-I`, groff(1) no longer needs to synthesize
    `-g` and `-s` to cover these bases.  If the user demands these the
    grn(1) and soelim(1) preprocessors, they can specify their options,
    consistently with other groff preprocessors support a command-line
    option.
    
    * src/roff/groff/groff.cpp (main) <I>: Do it.
    
    * contrib/hdtbl/hdtbl.am ($(HDTBLPROCESSEDEXAMPLEFILES):
    * doc/doc.am (doc/webpage.html, doc/webpage.ps): Drop now-unnecessary
      dependencies on "grn" and "soelim".
    
    * src/roff/groff/groff.1.man (groff-specific options) <I>:
    * NEWS: Document it.
    
    Fixes <https://savannah.gnu.org/bugs/?68277>.
---
 ChangeLog                  | 29 +++++++++++++++++++++++++++++
 NEWS                       |  4 ++++
 contrib/hdtbl/ChangeLog    |  5 +++++
 contrib/hdtbl/hdtbl.am     |  5 +----
 doc/doc.am                 |  7 -------
 src/roff/groff/groff.1.man | 13 +++----------
 src/roff/groff/groff.cpp   |  2 --
 7 files changed, 42 insertions(+), 23 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e9ed97d03..e5a9afd72 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,32 @@
+2026-05-06  G. Branden Robinson <[email protected]>
+
+       [groff]: Make `-I` stop implying `-g` and `-s`.
+
+       To date, specifying `-I` has been the only way (employing only
+       groff(1)) as a pipeline manager, a usage we strongly encourage)
+       to get an `-M` option of the same meaning to grn.
+
+       However, we didn't know, simply from the user's specification of
+       `-I`, that they meant to pass a `-M` option to grn.  Maybe they
+       meant it for soelim(1).  Maybe they don't need preprocessors at
+       all.
+
+       With grn(1) now accepting `-I`, groff(1) no longer needs to
+       synthesize `-g` and `-s` to cover these bases.  If the user
+       demands these the grn(1) and soelim(1) preprocessors, they can
+       specify their options, consistently with other groff
+       preprocessors support a command-line option.
+
+       * src/roff/groff/groff.cpp (main) <I>: Do it.
+
+       * doc/doc.am (doc/webpage.html, doc/webpage.ps): Drop
+       now-unnecessary dependencies on "grn" and "soelim".
+
+       * src/roff/groff/groff.1.man (groff-specific options) <I>:
+       * NEWS: Document it.
+
+       Fixes <https://savannah.gnu.org/bugs/?68277>.
+
 2026-05-06  G. Branden Robinson <[email protected]>
 
        [grn]: Rename `-M` option to `-I`, better paralleling troff(1).
diff --git a/NEWS b/NEWS
index e6d977529..5e5398cfd 100644
--- a/NEWS
+++ b/NEWS
@@ -81,6 +81,10 @@ groff
 *  groff now passes `-I` options as-is to grn(1), instead of translating
    the option name to `-M`.
 
+*  groff's `-I` option no longer implies `-g` or `-s`; if your document
+   needs to be piped through grn(1) and/or soelim(1), specify the
+   foregoing options as appropriate.
+
 Macro packages
 --------------
 
diff --git a/contrib/hdtbl/ChangeLog b/contrib/hdtbl/ChangeLog
index 5702ac312..57b35e7f0 100644
--- a/contrib/hdtbl/ChangeLog
+++ b/contrib/hdtbl/ChangeLog
@@ -1,3 +1,8 @@
+2026-05-06  G. Branden Robinson <[email protected]>
+
+       * hdtbl.am ($(HDTBLPROCESSEDEXAMPLEFILES): Drop now-unnecessary
+       dependencies on "grn" and "soelim".  See Savannah #68277.
+
 2026-03-22  G. Branden Robinson <[email protected]>
 
        * examples/fonts_n.in:
diff --git a/contrib/hdtbl/hdtbl.am b/contrib/hdtbl/hdtbl.am
index 1b57a57fd..0e8336123 100644
--- a/contrib/hdtbl/hdtbl.am
+++ b/contrib/hdtbl/hdtbl.am
@@ -124,10 +124,8 @@ SUFFIXES += .roff.in .ps
        && sed -e "s|[@]fontdir[@]|$(fontdir)|" \
               -e "s|[@]EGREP[@]|$(EGREP)|" $< >$@
 
-# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and
-# soelim even though the documents don't require them.
 $(HDTBLPROCESSEDEXAMPLEFILES): $(HDTBLTMACFILES) $(DOC_GNU_EPS) groff \
-  troff eqn pic tbl grops grn soelim font/devps/stamp \
+  troff eqn pic tbl grops font/devps/stamp \
   contrib/hdtbl/examples/common.roff
 
 uninstall_groffdirs: uninstall-hdtbl-hook
@@ -136,7 +134,6 @@ uninstall-hdtbl-hook:
          rmdir $(DESTDIR)$(hdtblexampledir); \
        fi
 
-
 # Local Variables:
 # mode: makefile-automake
 # fill-column: 72
diff --git a/doc/doc.am b/doc/doc.am
index ad3b55ddd..c70235382 100644
--- a/doc/doc.am
+++ b/doc/doc.am
@@ -387,9 +387,6 @@ doc/pic.ps: $(doc_srcdir)/pic.ms $(TMAC_PACKAGE_MS) eqn pic 
tbl
        $(GROFF_V)$(MKDIR_P) `dirname $@` \
        && $(DOC_GROFF) -pet -Tps -ms $(doc_srcdir)/pic.ms >$@
 
-# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and
-# soelim even though the document doesn't require them.
-doc/webpage.ps: grn soelim
 doc/webpage.ps: $(DOC_GNU_EPS) tmac/pspic.tmac tmac/www.tmac tbl
 doc/webpage.ps: $(doc_srcdir)/webpage.ms $(TMAC_PACKAGE_MS)
        $(GROFF_V)$(MKDIR_P) `dirname $@` \
@@ -415,11 +412,7 @@ doc/pic.html: $(doc_srcdir)/pic.ms $(TMAC_PACKAGE_MS)
          $(doc_srcdir)/pic.ms > pic.html.tmp
        $(AM_V_at)mv [email protected] $@
 
-# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and
-# soelim even though the document doesn't require them.
-#
 # XXX: See XXX comment before "pic.html" target above.
-doc/webpage.html: grn soelim
 doc/webpage.html: $(DOC_GNU_EPS) tmac/www.tmac tbl
 doc/webpage.html: $(doc_srcdir)/groff.css
 doc/webpage.html: $(doc_srcdir)/webpage.ms $(TMAC_PACKAGE_MS)
diff --git a/src/roff/groff/groff.1.man b/src/roff/groff/groff.1.man
index 2a41cba3d..c0cc26011 100644
--- a/src/roff/groff/groff.1.man
+++ b/src/roff/groff/groff.1.man
@@ -280,23 +280,16 @@ implies
 Works as
 .IR @g@troff 's
 option
-(see below),
-but also implies
-.B \-g
-and
-.BR \-s .
+(see below).
 .
 .I groff
 passes
 .B \-I
 options and their arguments to
+.MR @g@grn @MAN1EXT@ ,
 .MR @g@soelim @MAN1EXT@ ,
 .MR @g@troff @MAN1EXT@ ,
-and output drivers;
-with the option letter changed to
-.BR \-M ,
-it passes the same arguments to
-.MR @g@grn @MAN1EXT@ .
+and output drivers.
 .
 .
 .TP
diff --git a/src/roff/groff/groff.cpp b/src/roff/groff/groff.cpp
index 45853eb3c..dd8f6a26d 100644
--- a/src/roff/groff/groff.cpp
+++ b/src/roff/groff/groff.cpp
@@ -188,9 +188,7 @@ int main(int argc, char **argv)
       iflag = 1;
       break;
     case 'I':
-      commands[GRN_INDEX].set_name(command_prefix, "grn");
       commands[GRN_INDEX].append_arg(buf, optarg);
-      commands[SOELIM_INDEX].set_name(command_prefix, "soelim");
       commands[SOELIM_INDEX].append_arg(buf, optarg);
       // .psbb may need to search for files
       commands[TROFF_INDEX].append_arg(buf, optarg);

_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to