lane@CAMIS.STANFORD.EDU (Christopher Lane) (04/24/91)
As is well-known, under 2.0, programmatic access to Webster is missing by default. You can obtain the necessary files ('text' and 'btree') by asking NeXT technical support (nicely). However, as is also well-known, thesaurus access won't work. Also, mapping over the entire dictionary word by word won't work either (usually stops in 'e' somewhere). We need both thesaurus access and the ability to map over the entire dictionary word by word so we came up with the following solution. The basic idea is to splice the 1.0 version of the Webster files into the 2.0 Webster directory. There are surprisingly few name conflicts and those that do don't matter (i.e. the 1.0 version isn't needed for this purpose). Specifically: mkdir /LocalLibrary/References cd /LocalLibrary/References mkdir Webster-{Dictionary,Thesaurus} cd Webster-Thesaurus ln -s /NextLibrary/References/Webster-Thesaurus/Thesaurus.nxbf cd ../Webster-Dictionary ln -s /NextLibrary/References/Webster-Dictionary/* . Copy the 1.0 files /NextLibrary/References/Webster-Thesaurus/{index,source} to /LocalLibrary/Reference/Webster-Thesaurus. Copy the 1.0 files /NextLibrary/References/Webster-Dictionary/{full-index,index,source} to /LocalLibrary/References/Webster-Dictionary. Copy the 1.0 file /usr/lib/libtext.a to /usr/local/lib/liboldtext.a (you may need to 'ranlib' it if you don't use 'tar'). Copy the 1.0 directory /usr/include/text to /usr/local/include/oldtext. To use the 'old' version of Webster that works, you can '#include <oldtext/Webster.h>' and link with 'liboldtext' in your Makefile. The name change (i.e. 'old') allows you to continue to use the new (broken) version, as well, assuming you have a 2.0 version of 'text' and 'btree'. In theory, you could just use the 1.0 versions and not bother with the 'old' name change but since libtext provides other utilities (e.g. pathutil, strutil), I prefer to keep them separate and use the newer one when possible. With this arrangement, applications like /NextApps/Webster will continue to use the 2.0 version of the dictionary files. Yes, this is a kludge--it is the only solution I'm aware of (I asked NeXT about the Webster bugs but received no response) to get full, working programmatic access to Webster under 2.0 until NeXT fixes the problems. We've been using this fix for several weeks without trouble and it has allowed us to finally upgrade our last 1.0 machine to 2.0. The 'cost' of doing this is about 42MB. - Christopher