groff_char.7 manpage broken

joerg van den hoff veedeehjay at gmail.com
Thu Aug 25 09:15:25 UTC 2022


hi ranga,

thank you for the reply.

On 25.08.22 03:48, Sriranga Veeraraghavan wrote:
> Hi Joerg,
> 
> My experience with macports (as a user) is that macports rarely, if ever, modifies system configuration files provided by Apple.  I think that '/private/etc/man.conf’ falls in to this category, so I would say that it is probably up to the user to make any changes they want to this file.
> 
> An potential solution for you might be to create your own customized man.conf with the paths you want for the various commands and then use an alias or shell function for man that runs “man -C [path to personal man.conf]”.

yes, that would be a work around, I agree.

but in my view the principle behaviour is buggy:

* I use macports installed groff

* PATH and MANPATH are adjusted by macports so that usually the correct groff binaries (groff, 
gtroff, grops, etc, but especially also tbl and eqn) as installed by macports are found and
`man' queries/displays the correct (macports installed) manpages.

* however, the latter (manpage display) is done using the unmodified default /private/etc/man.conf 
which causes system installed tbl to be used which only works (as far as groff_char(7) is concerned) 
if it is fully compatible with the (newer) macports installed tbl (or so it seems).

I would argue: if the macports `tbl' is earlier on PATH than it also should be used by `man' -- 
which would probably imply that `ports' modfies man.conf. or am I mistaken?

best,
joerg



> 
> Best,
> 
> -ranga
> 
>> On Aug 13, 2022, at 07:34, joerg van den hoff <veedeehjay at gmail.com> wrote:
>>
>> re the below issue (reported in previous mail):
>>
>> `man -d groff_char' says:
>>
>> (cd "/opt/local/man" && (echo ".ll 14.3i"; echo ".nr LL 14.3i"; /usr/bin/gunzip -c '/opt/local/man/man7/groff_char.7.gz') | /usr/bin/tbl | /usr/bin/groff -Wall -mtty-char -Tascii -mandoc -c | (/usr/bin/less -is || true))
>>
>> so `man' uses the system-install of `tbl' and `groff' (rather than the macports-installed groff package). this seems to be the issue: changing `tbl' to the macports variant (system groff
>> is at 1.19, macports' groff at 1.22.4) and adding `-R' to the `less' options leads to a seemingly sane display. this looks like some post-1.19 change to `tbl' broke backwards compatibility.
>>
>> so it's not the man page that is broken but the `man' pipeline using "wrong" `tbl'. this in turn
>> seems to point to man.conf (5). the file /private/etc/man.conf indeed contains absolute paths to
>> system `tbl', `groff' etc. question: is this the user's responsibility to adjust that file or should macports `man' take  care of this via including `man -C private_man.conf' into the constructed pipeline and putting the correct (macports) paths there?
>>
>> best,
>> joerg
>>
>> ====original mail====
>>
>> this concerns the `groff' package: `man groff_char' is broken (again, I believe, after having worked correctly some time ago).
>>
>> `man groff_char' first lists a bunch of `tbl' warnings and the then displayed manpage
>> does not display any of the tables supposed to give the overview of "available glyphs on the currently used output device" (terminal, usually, but possibly postscript). look, e.g. for "Ligatures and Other Latin Glyphs". does neither work for terminal output nor for postscript (`man -t').
>>
>> this is on 10.15.7 with groff @1.22.4_6.
>>
> 


More information about the macports-users mailing list