From: pk@cs.few.eur.nl (Paul Kranenburg)
Subject: Re: answerbook 1.4 and answerbook 2.1
Reply-To: pk@cs.few.eur.nl
Organization: Erasmus University Rotterdam
Date: Tue, 15 Dec 1992 20:06:08 GMT

In <RUSTY.92Dec9174106@groan.Berkeley.EDU> rusty@groan.Berkeley.EDU (Rusty Wright) writes:
>AnswerBook 1.4 on it.  We've just received Solaris 2.1 and the
>corresponding AnswerBook.  I think we're going to buy another cd-rom
>drive for the Solaris 2.1 AnswerBook.

>What I don't understand is if we can set things up so that people will
>be able to have just one AnswerBook executable running and it will be
>able to access both the Solaris 1.1 and the Solaris 2.1 AnswerBook
>databases and files.

>When you look at the top-level AnswerBook window it seems to imply
>that you can, there's a window called "Location in Collection" which
>is a scrolling window that currently only has one entry, for
>AnswerBook 1.4.

>I've also received cd's for the new compilers for Solaris 2.1 and they
>say they provide on-line documentation in AnswerBook format, which I'm
>assuming they'll somehow install into my AnswerBook directory, or
>they'll install some pointer in it to wherever the compiler's stuff
>gets installed.  Or something like that.

These "secondary" Answerbooks can be merged into the "primary" (or
system) Answerbook with the help of some utility that is included in
the secondary Answerbook package. This utility won't let you merge
two system Answerbooks (like Solaris 2.1 AB and the SunOS 4.1.x AB v1.4)
because this would result in name conflicts of the included books (eg.
the book REFMAN1 occurs in both answerbooks). Since the name of a book
is used as a key when searching the `bookinfo' file, you would always
end up viewing the same book (the one that comes first in `bookinfo').
To get around this you could rename the books in one of the answerbooks
to some unique name, but alas, this involves making a new set of index
files for each of the renamed books as well.



>Along a similar vein, we're currently actually making available the
>AnswerBook 1.3 disc but will be replacing it with the 1.4 disc, but
>we've noticed that the following "books" are missing from the 1.4
>disc:

>	NeWs 3.0 Programmer's Guide
>	OLIT 3.0 Reference Manual
>	OPEN LOOK Application Style Guidelines
>	OPEN LOOK Functional Specification
>	The NeWs Toolkit 3.0 Reference Manual
>	X Protocol Reference Manual
>	X Toolkit Intrinsics Reference Manual

>It would be nice if we could extract them from the 1.3 disk and
>install them so that they could be easily available to people when we
>switch over to AnswerBook 1.4.

This can be done. I have put these books in a separate subdirectory and
and added a few lines to the `bookinfo' file like this:

OREILLY0:/usr/pkg/answerbook1.4/AB1.3:/usr/pkg/answerbook1.4/AB1.3::System Software AnswerBook Release 1, Issue 3

(where `/usr/pkg/answerbook1.4' is the AB 1.4 installation directory).

Next you create some book entries in the supplied `sr_index/ascii.xtoc'
like so:

	id      =       AB1-3TOP-167-0
	title   =       X11 and Openlook (from Answerbook version 1.3)
	label   = set   

		<<
		id      =       AB1-3TOP-168-1
		title   =       X Protocol Reference Manual
		book    =       <OREILLY0>

		id      =       AB1-3TOP-169-1
		title   =       Xlib Programming Manual
		book    =       <OREILLY1>

		<more of the same>
	>>


And make a new top-level index file with `dbgen' that comes with Solaris 2
answerbooks (you need a machine running Solaris 2.x for this).

Shortly, I will have a set of tools available that will be able to "decompile"
a given AB index file into a "ascii.xtoc" file (which can be edited) and
the equivalent of the Solaris 2 'dbgen' to convert this into a set of DBM
files again. This will allow the compilation of one's own Answerbook (currently,
I have our set of local manual pages on-line). I am still working on an
alternative navigator which will use ghostscript as its PS engine...

Note that this will not be a complete substitute, since I have no knowledge
about the search mechanism employed by Sun's navigator (those big files
in the `sr_index' subdirectory).

-pk