From owner-freebsd-arch Thu Dec 13 16:53: 7 2001 Delivered-To: freebsd-arch@freebsd.org Received: from monorchid.lemis.com (monorchid.lemis.com [192.109.197.75]) by hub.freebsd.org (Postfix) with ESMTP id A0E3C37B416; Thu, 13 Dec 2001 16:52:59 -0800 (PST) Received: by monorchid.lemis.com (Postfix, from userid 1004) id EBBFC786E3; Fri, 14 Dec 2001 11:22:55 +1030 (CST) Date: Fri, 14 Dec 2001 11:22:55 +1030 From: Greg Lehey To: Garance A Drosihn Cc: Peter Wemm , Nik Clayton , Warner Losh , ru@FreeBSD.ORG, ache@FreeBSD.ORG, freebsd-arch@FreeBSD.ORG Subject: Re: Changing 'man' to check alternate destination for 'cat' pages Message-ID: <20011214112255.L3448@monorchid.lemis.com> References: <20011212001610.9AEA739EA@overcee.netplex.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.23i Organization: The FreeBSD Project Phone: +61-8-8388-8286 Fax: +61-8-8388-8725 Mobile: +61-418-838-708 WWW-Home-Page: http://www.FreeBSD.org/ X-PGP-Fingerprint: 6B 7B C3 8C 61 CD 54 AF 13 24 52 F8 6D A4 95 EF Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Thursday, 13 December 2001 at 0:01:03 -0500, Garance A Drosihn wrote: > From the thread > Re: Getting rid of /usr file system (was: Using a larger block size...) > >>> On Tue, Dec 11, 2001, Garance A Drosihn wrote: >>>> In the land of weird suggestions, just how weird would it be to >>>> suggest that we create some way for 'cat' versions of man pages >>>> to land somewhere else? >>>> >>>> Maybe /var/man/usr/share/cat* >>>> for ones from /usr/share/man/man* >>>> etc? > > Given that Peter, Nik, and Greg expressed some interest, I thought it might > be interesting to try my hand at doing it. I looked at it for about 15 > minutes tonight, and noticed that 'man' is under gnu/usr.bin. Does that > imply changes for it should go thru gnu, somehow? <> No, there's no obligation to submit changes to the GNU project. If you think it would be worthwhile for them, you can do so, however. > I noticed there are some changes to 'man' in release 5 which haven't > been MFC'ed yet. Would there be any reason those should not be > MFC'ed? Your call. I'd guess that nobody felt motivated enough. > Should I try my hand at implementing my idea, or is someone else > already looking into it? > > While I haven't tried writing any code yet, my intent is that > 'man ' would do something like: > > search for the requested man page (same as it does now) > once it finds the location, then > + look for a 'cat' page at //cat/thing.n, > + if found, use it > look for a 'cat' page at /var/man//cat/thing.n, > if found, use it > + see if /var/man//cat is an existing directory, > + if so, then put the expanded 'man' page into that directory. > otherwise put it in //cat (as happens now) > > Does this sound about how people would want it to work? Basically the > idea is that it would work exactly the same as it does now, except for > the steps with a '+' on them. So, to get this alternate behavior people > would have to create the appropriate directories under /var/man (or > perhaps some other name), such as: > /var/man/usr/share/man/cat* > /var/man/usr/local/man/cat* > /var/man/usr/X11R6/man/cat* > > I haven't done any work on this yet, I'm just looking for feedback. If you're going to overhaul man, there's probably quite a bit you could do beyond the paths. I had a man years ago which would list which man pages were present (note that my MANPATH is: MANPATH=/usr/local/man:/usr/share/man:/usr/X11R6/man:/usr/share/man/BSDI-5:/usr/share/man/4.4BSD:/usr/share/man/BSDI:/usr/share/man/V6:/usr/share/man/V7:/usr/share/man/3bsd:/usr/share/man/2.11BSD:/usr/share/man/IRIX-5.3/u_man:/usr/share/man/IRIX-5.3/p_man:/usr/share/man/IRIX-5.3/a_man:/usr/share/man/IRIX-5.3/g_man:/usr/share/man/ISC-3.2/p_man:/usr/share/man/ISC-3.2/u_man:/usr/share/man/NonStop-UX-B23:/usr/share/man/NonStop-UX-C10:/usr/share/man/SCO-3.2.2:/usr/share/man/SCO-3.5.0:/usr/share/man/SVR4.2:/usr/share/man/Solaris-2.5:/usr/share/man/SunOS-4.1.3:/usr/share/man/Xenix-2.3.2 Under these circumstances it's interesting to know which man pages you have, and where they are. It also had a 'query' option: $ man -q ls -r--r--r-- 1 root wheel 5361 Sat Sep 30 17:13:47 2000 /usr/share/man/man1/ls.1.gz? n -rw-r--r-- 1 root wheel 3062 Thu Aug 18 21:45:13 1994 /usr/share/man/4.4BSD/cat1/ls.1.gz? n -r--r--r-- 1 bin bin 9435 Tue Jan 21 00:17:30 1997 /usr/share/man/BSDI/man1/ls.1? n -rw-r--r-- 1 root wheel 2271 Fri Aug 25 23:54:06 2000 /usr/share/man/linux/man1/ls.1.gz? n -rw-r--r-- 1 root wheel 4903 Fri Dec 10 09:30:51 1999 /usr/share/man/linux/man1/ls.1? n -rw-r--r-- 1 bin sys 3354 Fri Jun 27 10:05:42 1975 /usr/share/man/V6/man1/ls.1? As regards the cat files, it seems to me that an obvious solution would be to add a CATMAN environment variable which would specify the location of the catman pages, and default to /usr/share/man/cat. Greg -- See complete headers for address and phone numbers To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message