Only resolve .so includes when it's the only thing in a man page

Leaving the rest to be formatted as links to the included man page
instead.

Primary reason for this change is to make it possible to cache formatted
man pages, as they now no longer depend on anything except the raw
source of the page itself.
This commit is contained in:
Yorhel 2025-05-25 14:02:07 +02:00
parent a14f7b9bac
commit 59a7a16c2a
3 changed files with 25 additions and 25 deletions

View file

@ -15,6 +15,11 @@ sub fmt($input) {
# $MANWIDTH works by using the following groff options: -rLL=100n -rLT=100n
push @cmd, qw/-mandoc -Tutf8 -DUTF-8 -P-c -rLL=80n -rLT=80n -/;
# tix comes with* a custom(?) man.macros package. But it looks okay even without loading that.
# (* It actually doesn't, the tcllib package appears to have that file, but doesn't '.so' it)
# Other .so's are just turned into a link.
$input =~ s/^\.so (.+)$/$1 eq 'man.macros' ? '' : ".in -10\n.sp\n[[[MANNEDINCLUDE$1]]]"/emg;
$input =
# Disable hyphenation, since that screws up man page references. :-(
".hy 0\n.de hy\n..\n"