update from George Bergman (gbergman@cartan.berkeley.edu)
[unix-history] / usr / src / usr.bin / spell / README
index 1930fc0..552cab8 100644 (file)
@@ -2,68 +2,101 @@ Copyright (c) 1987 Regents of the University of California.
 All rights reserved.  The Berkeley software License Agreement
 specifies the terms and conditions for redistribution.
 
 All rights reserved.  The Berkeley software License Agreement
 specifies the terms and conditions for redistribution.
 
-       @(#)README      1.3 (Berkeley) %G%
+       @(#)README      1.4 (Berkeley) %G%
 
 
-All files and subdirectories of this directory are recommended for
-rdisting except web2 and web2a (because of their size).  Details on
-most of these files is described under FILES below.
+All files and subdirectories of /usr/dict are recommended for
+rdisting except web2 and web2a (because of their size), and some of
+the files  hlist*  depending on needs of your machine (details below).
+Descriptions of most of these files are given under FILES below.
 
 The new subdirectory "special" contains lists of words in specialized
 
 The new subdirectory "special" contains lists of words in specialized
-fields, which may be hashed in with the regular lists on machines
-having many users working in these fields.  As of this writing, it
-contains two files.
+fields, which may be hashed in with the regular lists on machines having
+many users working in these fields.  As of this writing, there are two
+such specialized wordlists.
 
 It is advised that system managers also create a directory
 
 It is advised that system managers also create a directory
-/usr/local/dict.  (Such a directory will probably be provided, empty,
-in the next release.)  This can be used to maintain files of particular
-interest to users of the machine (e.g., surnames of members of the
+/usr/local/dict. This can be used to maintain files of particular
+interest to users of each machine (e.g., surnames of members of the
 department on a departmental machine).
 
 department on a departmental machine).
 
-Here is a script that might be used to customize the hashlists on a
-machine to include the words in /usr/dict/special/xxx, as well as two
-local lists called /usr/local/dict/surnames and
-/usr/local/dict/acronyms.
+The hashed wordlists hlista and hlistb in this distribution include
+the words in the file special/4bsd, comprising current 4bsd
+commands, system calls, etc. (from "abs" to "zcat").  Machines
+whose primary users are programmers should take these files by
+rdist.  For machines with other user populations, a file "hlist" is
+provided which only contains the contents of /usr/dict/words.  Managers
+of such machines should rdist this file, and use "spellin" to produce
+files hlist{a,b} which contain the words from
+/usr/dict/{american,british} respectively, plus any other files
+appropriate to the needs of the majority of their users.  (Some basic
+unix commands and terms that general users are likely to encounter,
+e.g. troff, emacs, tty, have been included in /usr/dict/words.
+More may be added as suggestions are received.)  Here, for instance is a
+script that might be used to create the hashlists on a particular
+machine, so as to include the words in /usr/dict/special/math, as well
+as two local lists which we will assume are called
+/usr/local/dict/surnames and /usr/local/dict/acronyms.
 
        #
        cd /usr/dict
 
        #
        cd /usr/dict
-       mv hlista hlista.0; mv hlistb hlistb.0
-       cat special/xxx /usr/local/dict/{surnames,acronyms} | \
-               spellin hlista.0 > hlista
-       cat special/xxx /usr/local/dict/{surnames,acronyms} | \
-               spellin hlistb.0 > hlistb
+       cat american special/math /usr/local/dict/{surnames,acronyms} | \
+               spellin hlist > hlista
+       cat british  special/math /usr/local/dict/{surnames,acronyms} | \
+               spellin hlist > hlistb
 
 
-The new hashed lists, being named /usr/dict/hlist[ab], become the
-default lists for "spell"; the old lists can still be called with the -d
-option.
+     Hashlists can also be created from scratch using
+/usr/src/usr.bin/spell/Makefile.  This is now written so that if "make"
+is run with no options it will produce the hashed files as presently
+distributed, but so that the extra wordlists used can be controlled with
+variables LOCAL and SPECIAL.  For instance, the results given by the
+above script can be obtained by doing:
 
 
-Wordlists are in general sorted as in sort -df.  This makes no
-difference for spell's hashing process, but will make a difference
-commands that search them directly (such as "look").
+       cd /usr/src/usr.bin/spell
+       make LOCAL='/usr/local/dict/surnames /usr/local/dict/acronyms' \
+               SPECIAL=special.math 
+       make install
+
+     Returning to the subject of the wordlists in /usr/dict, these are,
+in general, ordered as in  sort -df.  This makes no difference for
+spell's hashing process, but makes a difference for other commands,
+such as "look", that perform binary searches on the unhashed lists.
+
+Complaints, and any additional suggestions for words or wordlists,
+should be sent to me.  I cannot fix bugs involving the code of "spell",
+but I am maintaining a list of these bugs, and of other ideas for
+improvement.
+               George Bergman, gbergman@cartan.Berkeley.Edu
+               18 March, 1987
 
 --------------------------------------------------------------------
 
 --------------------------------------------------------------------
-FILES and subdirectories in /usr/dict:
-    words -- everyday words, and important technical terms from all
+FILES and subdirectories of /usr/dict:
+
+    words    -- common words, and important technical terms from all
        fields, that are spelled the same in British and American usage.
        fields, that are spelled the same in British and American usage.
-    american -- spellings accepted in American but not British usage.
-    british -- spellings accepted in British but not American usage.
-    stop -- forms that would otherwise be derivable by "spell" from
+    american -- spellings preferred in American but not British usage.
+    british  -- spellings preferred in British but not American usage.
+    stop     -- forms that would otherwise be derivable by "spell" from
        words in one of the above files, but should not be accepted.
        words in one of the above files, but should not be accepted.
-    hlista -- hashed list formed from files {words,american}.
-    hlistb -- hashed list formed from files {words,british}.
-    hstop  -- hashed list formed from file stop.
-    web2 -- words from Webster's 2nd International (see WEB below).
-    web2a -- compounds and phrases from Webster's 2nd International.
-    README -- this file
-    papers/ -- an (out-of-date) bibliographical database, used as the
-       default by the program "refer".
-    special/ -- directory of less common terms from specialized fields
-       special/4bsd -- commands and system calls (as in
-           /usr/man/man[1238n]), and builtin csh commands (listed in
+    hlist    -- hashed list, formed from the file "words" only.
+    hlista   -- hashed list, formed from files {words,american,special/4bsd}.
+    hlistb   -- hashed list, formed from files {words,british,special/4bsd}.
+    hstop    -- hashed list, formed from file "stop".
+    web2     -- words from Webster's 2nd International (see WEB below).
+    web2a    -- compounds and phrases from same source.
+    README   -- this file
+    papers/  -- an (out-of-date specialized) bibliographical database,
+       used as the default by the program "refer".
+    special/ -- directory of less common terms from specialized fields.
+       It presently contains:
+
+       special/4bsd -- commands and system calls (from filenames in
+           /usr/man/man[1238n]), and builtin csh commands (named in
            /usr/man/man1/csh.1) of the current version of 4bsd Unix.
            (Supersedes old "/usr/src/usr.bin/spell/local".)
            /usr/man/man1/csh.1) of the current version of 4bsd Unix.
            (Supersedes old "/usr/src/usr.bin/spell/local".)
-       math -- technical mathematical terms not in /usr/dict/words.
+       special/math -- some mathematical terms not in /usr/dict/words.
+
+WEB ---- (introduction provided by jaw@riacs) -------------------------
 
 
-WEB (intro provided in posting)--------------------------------------
 Welcome to Webster's Second International, all 234,936 words worth.
 The 1934 copyright has elapsed, according to the supplier.  The
 supplemental 'web2a' list contains hyphenated terms as well as assorted
 Welcome to Webster's Second International, all 234,936 words worth.
 The 1934 copyright has elapsed, according to the supplier.  The
 supplemental 'web2a' list contains hyphenated terms as well as assorted