Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

deroff(1)

eqn(1)

sed(1)

sort(1)

tbl(1)

tee(1)

troff(1)



spell(1)                                                 spell(1)



NAME
     spell, hashmake, spellin, hashcheck - find spelling errors

SYNOPSIS
     spell [ -v ] [ -b ] [ -x ] [ -l ] [ +local_file ] [ files ]

     /usr/lib/spell/hashmake

     /usr/lib/spell/spellin n

     /usr/lib/spell/hashcheck spelling_list

DESCRIPTION
     spell collects words from the named files and looks them up
     in a spelling list.  Words that neither occur among nor are
     derivable (by applying certain inflections, prefixes, and/or
     suffixes) from words in the spelling list are printed on the
     standard output.  If no files are named, words are collected
     from the standard input.

     spell ignores most troff(1), tbl(1), and eqn(1) construc-
     tions.

     -v          All words not literally in the spelling list are
                 printed, and plausible derivations from the
                 words in the spelling list are indicated.

     -b          British spelling is checked.  Besides preferring
                 centre, colour,
                 programme, speciality, travelled, etc., this
                 option insists upon -ise in words like standar-
                 dise, Fowler and the OED (Oxford English Dic-
                 tionary) to the contrary notwithstanding.

     -x          Every plausible stem is displayed, one per line,
                 with = preceding each word.

     -l          Follow the chains of all included files.  By
                 default, spell (like deroff(1)) follows chains
                 of included files (.so and .nx troff(1)
                 requests), unless the names of such included
                 files begin with /usr/lib.

     +local_file Words found in local_file are removed from
                 spell's output.  local_file is the name of a
                 user-provided file that contains a sorted list
                 of words, one per line.  The list must be sorted
                 with the ordering used by sort(1) (e.g. upper
                 case preceding lower case).  If this ordering is
                 not followed, some entries in local_file may be
                 ignored.  With this option, the user can specify
                 a set of words that are correct spellings (in



Page 1                              CX/UX User's Reference Manual





spell(1)                                                 spell(1)



                 addition to spell's own spelling list) for each
                 job.

     The spelling list is based on many sources, and while more
     haphazard than an ordinary dictionary, is also more effec-
     tive with respect to proper names and popular technical
     words.  Coverage of the specialized vocabularies of biology,
     medicine, and chemistry is light.

     Alternate auxiliary files (spelling lists, stop list, his-
     tory file) may be specified on the command line by using
     environment variables.  These variables and their default
     settings are shown in the FILES section.  Copies of all out-
     put are accumulated in the history file.  The stop list
     filters out misspellings (e.g., thier=thy-y+ier) that would
     otherwise pass.

     Three routines help maintain and check the hash lists used
     by spell:

     hashmake    Reads a list of words from the standard input
                 and writes the corresponding nine-digit hash
                 code on the standard output.  This is the first
                 step in creating a new spelling list or adding
                 words to an existing list; it must be used prior
                 to using spellin.

     spellin     Reads n hash codes (created by hashmake) from
                 the standard input and writes a compressed spel-
                 ling list on the standard output.  Use spellin
                 to add words to an existing spelling list or
                 create a new spelling list.

     hashcheck   Reads a compressed spelling_list and recreates
                 the nine-digit hash codes for all the words in
                 it; it writes these codes on the standard out-
                 put.  It takes as input an existing spelling
                 list (hlista or hlistb) or a list created or
                 modified by spellin.  By using hashcheck on an
                 existing compressed spelling_list and hashmake
                 on a file of selected words, you can compare the
                 two output files to determine if the selected
                 words are present in the existing spelling_list.

EXAMPLES
     The following example creates the hashed spell list hlist
     and checks the result by comparing the two temporary files;
     they should be equal.







Page 2                              CX/UX User's Reference Manual





spell(1)                                                 spell(1)



          cat goodwds | /usr/lib/spell/hashmake | sort -u >tmp1
          cat tmp1 | /usr/lib/spell/spellin `cat tmp1 | wc -l`
          >hlist
          cat hlist | /usr/lib/spell/hashcheck >tmp2
          diff tmp1 tmp2

FILES
     D_SPELL=/usr/share/lib/spell/hlist[ab]       hashed spelling
                                                  lists, American
                                                  & British
     S_SPELL=/usr/share/lib/spell/hstop           hashed stop
                                                  list
     H_SPELL=/var/adm/spellhist                   history file
     /usr/lib/spell/spellprog                     program

SEE ALSO
     deroff(1), eqn(1), sed(1), sort(1), tbl(1), tee(1),
     troff(1).

NOTES
     The spelling list's coverage is uneven; new installations
     will probably wish to monitor the output for several months
     to gather local additions; typically, these are kept in a
     separate local file that is added to the hashed
     spelling_list via spellin.






























Page 3                              CX/UX User's Reference Manual



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026