man-db-devel
[Top][All Lists]
Advanced

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

'-U' in 'DEFINE troff groff -U -mandoc' in manpath.config no longer hono


From: Alexis Huxley
Subject: '-U' in 'DEFINE troff groff -U -mandoc' in manpath.config no longer honoured
Date: Tue, 17 Dec 2019 15:51:35 +0100
User-agent: Mutt/1.10.1 (2018-07-13)

Hi, it looks like somewhere between 2.7.5 and 2.8.5, man-db stopped honouring
a locally added '-U' option in manpath.config:

        banana$ grep ^DEFINE /etc/manpath.config
        DEFINE troff groff -U -mandoc
        DEFINE nroff nroff -U -mandoc
        banana$ 

Was this change of behaviour deliberate? Or is there an alternative way to 
get .pso in man page sources working again? (Yes, I really need .pso.)

I checked the changelog entries from 2.7.5 to 2.8.5 but don't see any obvious 
change that caused this change in behaviour.

If I call groff directly with 'groff -man -Tascii -U ./lx.1' then it works.

Thanks!

Alexis

PS Below is a demonstration of the problem with 2.8.5 and it working on 2.7.5.






With 2.8.5:

I have a command ade-config available, which just outputs some
variable settings in manpage-compatible format:

        banana$ /usr/bin/ade-config --format=man
        .ds ade_prefix /usr
        .ds ade_lib_prefix /usr/lib/ade
        ...
        banana$ 

and I have a man page source:

        banana$ cat lx.1 
        .pso ade-config --format=man
        .TH LX 1 "25 Apr 2019"
        .SH NAME
        lx \- do something in \*[ade_lib_prefix]
        .br
        .ne 5
        .SH SYNOPSIS
        .B lx
        ...
        banana$ 

Yet when I run 'man ./lx.1' (or with lx.1 in a more normal place)
the stdout is (with blanks squeezed):

        banana$ man ./lx.1 | sed -r 's/[ \t]+/ /g'
        LX(1) General Commands Manual LX(1)
        
        NAME
         lx - do something in
        
        SYNOPSIS
         lx
        
         25 Apr 2019 LX(1)
        banana$ 
        
I.e.  the fourth line is missing the text "/usr/lib/ade".
stderr is empty:

        banana$ export MAN_KEEP_STDERR=1
        banana$ man ./lx.1 > /dev/null
        banana$ 

'man -d' shows no obvious errors but does show that the '-U' has 
been seen:

        banana$ man -d ./lx.1 2>&1 > /dev/null  | fgrep -- -U
        Defined `troff' as `groff -U -mandoc'.
        Defined `nroff' as `nroff -U -mandoc'.
        `troff' `groff -U -mandoc'      `-3'
        `nroff' `nroff -U -mandoc'      `-3'
        banana$ 

Exporting 'MANROFFOPT=-U' also did not restore the old bahaviour.

With 2.7.5 (on Ubuntu 16.04) the output from 'man ./lx.1' is:

        cercis$ man ./lx.1 | sed -r 's/[ \t]+/ /g'
        LX(1) General Commands Manual LX(1)
        
        NAME
         lx - do something in /usr/lib/ade
        
        SYNOPSIS
         lx
        
         25 Apr 2019 LX(1)
        cercis$ 

I.e. the fourth line *has* the text "/usr/lib/ade".

--



reply via email to

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