1.\" $OpenBSD: spell.1,v 1.16 2022/08/03 07:43:45 jsg Exp $ 2.\" 3.\" Copyright (C) 1985, 1993, 1994 4.\" The Regents of the University of California. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. Neither the name of the University nor the names of its contributors 15.\" may be used to endorse or promote products derived from this software 16.\" without specific prior written permission. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28.\" SUCH DAMAGE. 29.\" 30.\" Copyright (C) Caldera International Inc. 2001-2002. 31.\" All rights reserved. 32.\" 33.\" Redistribution and use in source and binary forms, with or without 34.\" modification, are permitted provided that the following conditions 35.\" are met: 36.\" 1. Redistributions of source code and documentation must retain the above 37.\" copyright notice, this list of conditions and the following disclaimer. 38.\" 2. Redistributions in binary form must reproduce the above copyright 39.\" notice, this list of conditions and the following disclaimer in the 40.\" documentation and/or other materials provided with the distribution. 41.\" 3. All advertising materials mentioning features or use of this software 42.\" must display the following acknowledgement: 43.\" This product includes software developed or owned by Caldera 44.\" International, Inc. 45.\" 4. Neither the name of Caldera International, Inc. nor the names of other 46.\" contributors may be used to endorse or promote products derived from 47.\" this software without specific prior written permission. 48.\" 49.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA 50.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR 51.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 52.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 53.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, 54.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 55.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 56.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 57.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 58.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 59.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 60.\" POSSIBILITY OF SUCH DAMAGE. 61.\" 62.\" @(#)spell.1 8.2 (Berkeley) 4/18/94 63.\" 64.Dd $Mdocdate: August 3 2022 $ 65.Dt SPELL 1 66.Os 67.Sh NAME 68.Nm spell 69.Nd find spelling errors 70.Sh SYNOPSIS 71.Nm spell 72.Op Fl biltvx 73.Op Fl d Ar list 74.Op Fl h Ar spellhist 75.Oo 76.Fl m 77.Ar a | e | l | m | s 78.Oc 79.Op Fl s Ar list 80.Op + Ns Ar extra_list 81.Op Ar 82.Sh DESCRIPTION 83.Nm spell 84collects words from the named documents and looks them up in a spelling list. 85Words that neither occur among nor are derivable (by applying certain 86inflections, prefixes or suffixes) from words in the spelling list 87are printed on the standard output. 88.Pp 89If no files are named, words are collected from the standard input. 90.Nm 91ignores most troff, tbl, eqn, and pic constructions. 92Copies of all output may be accumulated in the history file, 93if one is specified. 94.Pp 95By default, 96.Nm 97(like 98.Xr deroff 1 ) 99follows chains of included files 100.Po 101.Dq .so 102and 103.Dq .nx 104commands 105.Pc . 106.Pp 107The default spelling list is based on Webster's Second International 108dictionary and should be fairly complete. 109Words that appear in the 110.Dq stop list 111are immediately flagged as misspellings, regardless of whether or not 112they exist in one of the word lists. 113This helps filter out misspellings (e.g. thier=thy\-y+ier) 114that would otherwise pass. 115Additionally, the 116.Pa british 117file is also used as a stop list unless the 118.Fl b 119option is specified. 120.Pp 121Site administrators may add words to the local word list, 122.Pa /usr/local/share/dict/words 123or the local stop list, 124.Pa /usr/local/share/dict/stop . 125.Pp 126All word (and stop) lists must be sorted in lexicographical order 127with case folded. 128The simplest way to achieve this is to use 129.Dq sort -df . 130If the word files are incorrectly sorted, 131.Nm 132will not be able to operate correctly. 133.Pp 134The options are as follows: 135.Bl -tag -width Ds 136.It Fl b 137Check British spelling. 138Besides preferring 139.Em centre , colour , speciality , travelled , 140etc., this option insists upon 141.Fl ise 142in words like 143.Em standardise , 144Fowler and the OED to the contrary notwithstanding. 145In this mode, American variants of words are added to the stop list. 146.It Fl d Ar list 147Use the specified word list instead of the default system word list. 148The word list must be sorted as specified above. 149.It Fl h Ar spellhist 150Store misspelled words in the specified history file. 151The output of 152.Li who -m 153is appended to the history file after the list of misspelled words. 154.It Fl i 155Instruct 156.Xr deroff 1 157to ignore 158.Dq .so 159and 160.Dq .nx 161commands. 162.It Fl l 163Use 164.Sy delatex 165instead of 166.Xr deroff 1 167if it is present on the system. 168.It Fl m 169Enable support for common 170troff macro packages; this option is passed verbatim to 171.Xr deroff 1 . 172Refer to the 173.Fl m 174description in 175.Xr deroff 1 176for details. 177.It Fl s Ar list 178Use the specified stop list instead of the default system stop list. 179The stop list must be sorted as specified above. 180.It Fl t 181Use 182.Sy detex 183instead of 184.Xr deroff 1 185if it is present on the system. 186.It Fl v 187Print all words not literally in the spelling list in addition to 188plausible derivations from spelling list words. 189.It Fl x 190Print every plausible stem, prefixed with 191.Sq = . 192.It + Ns Ar extra_list 193Use 194.Ar extra_list 195in addition to the default word list. 196The extra word list must be sorted as specified above. 197.El 198.Sh FILES 199.Bl -tag -width /usr/local/share/dict/wordsxx -compact 200.It Pa /usr/share/dict/words 201Default spelling list. 202.It Pa /usr/share/dict/american 203American spelling of certain words. 204.It Pa /usr/share/dict/british 205British spelling of certain words. 206.It Pa /usr/share/dict/stop 207Default stop list. 208.It Pa /usr/local/share/dict/words 209Local spelling list (optional). 210.It Pa /usr/local/share/dict/stop 211Local stop list (optional). 212.It Pa /usr/libexec/spellprog 213Binary executed by the shell script 214.Pa /usr/bin/spell . 215.El 216.Sh SEE ALSO 217.Xr deroff 1 , 218.Xr look 1 , 219.Xr sed 1 , 220.Xr sort 1 , 221.Xr tee 1 222.Sh HISTORY 223The 224.Nm spell 225command first appeared in 226.At v5 . 227It did not appear in freely redistributable 228.Bx 229releases for licensing reasons. 230After Caldera relicensed early UNIX releases the 231.Bx 4.4 232version was added to 233.Ox 3.1 . 234.Pp 235Unlike historic versions, the 236.Ox 237.Nm 238command does not use hashed word files. 239Instead, it uses lexicographically sorted files and the same technique as 240.Xr look 1 . 241.Sh BUGS 242The spelling list lacks many technical terms; new installations will 243probably wish to monitor the output for several months to gather local 244additions. 245.Pp 246British spelling was done by an American. 247.Pp 248In 249.Fl x 250mode it would be nicer if the stems were grouped with the appropriate word. 251