[Top][All Lists]

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

[groff] Rate this hack on a scale of 0 to stupid

From: John Gardner
Subject: [groff] Rate this hack on a scale of 0 to stupid
Date: Mon, 7 Jan 2019 20:08:51 +1100

First, the situation:

   1. I want/need a way to programmatically (and *reliably*) locate the
   directories containing a Groff installation's .tmac files. This is
   happening in JavaScript, without the user's intervention.
   2. I don't want to make assumptions about standard tmac locations like
   /usr/share/groff/tmac, et al.
   3. The containing directories are scooped up by Roff.js and scanned for
   `.tmac` files, which is a preparatory step to determine what macros are
   available and which aren't.

Second, the idiotic hack I wrote:

$ cat trace-paths.tmac

'de P
'tm \\n(.F
'it 1 P
'it 1 P
'cc !

Third, the aforementioned hack somehow working:

$ GROFF_TMAC_PATH=`pwd` groff -Tutf8 -z -mtrace-paths -man `man -w man`


Now, tell me. How could this trick go wrong...? Bear in mind that:

   - This is a last resort because I couldn't find any obvious/easy way to
   locate a site's default tmac directories without making assumptions about
   standard paths,
   - I'd like this to work on Windows
   <> (*without* Cygwin),
   - It's assumed that a site's `man` installation will always have its own
   manpage (hence the `man -w man` usage),
   - It's also similarly assumed that every Groff installation will have
   `an.tmac` available. Hence why it's being used to pinpoint the containing

That's all. You're all welcome to laugh now. =)

— John

reply via email to

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