-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
261 lines (206 loc) · 11.3 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
This is ispell version 3.3, an interactive spelling checker.
Contents of this README file:
What Is Ispell and Why Do I Want It?
What's New in This Version?
Where Can I Get Ispell?
OK, How Do I Install It?
Who Wrote Ispell?
Where Do I Send Bug Reports?
How Do I Reference Ispell in Scholarly Papers?
Where Do I Get Dictionaries?
How Long Does It Take to Make Dictionaries?
Special Installation Notes for Certain Machines
What About Ispell for MS-DOS?
Note: this README file might not contain the latest information about
ispell. For that information, visit the ispell Web page:
http://www.lasr.cs.ucla.edu/geoff/ispell.html
------------------------------------------------------------------------
What Is Ispell and Why Do I Want It?
Ispell is a fast screen-oriented spelling checker that shows you
your errors in the context of the original file, and suggests possible
corrections when it can figure them out. Compared to UNIX spell, it
is faster and much easier to use. Ispell can also handle languages
other than English.
What's New in This Version?
Ispell 3.3 offers improved support for international languages,
improved deformatting, and better support for compilation on
Windows systems. All known security holes have been closed.
A number of small bugs are also fixed.
Where Can I Get Ispell?
Point your Web browser at the ispell home page:
http://www.lasr.cs.ucla.edu/geoff/ispell.html
The current version of ispell is available for Web download from
www.lasr.cs.ucla.edu using the following URL:
http://www.lasr.cs.ucla.edu/geoff/tars
The latest version is always named "ispell-3.3.xx.tar.gz", where
"xx" is the patch level. There are also sometimes files named
"README-patchxx", which contain notes specific to a given version.
A number of ftp mirror sites also store ispell. Check your
favorite search engine for "ispell-3.3" to find a site near you.
Ispell comes with English dictionaries. For other languages,
visit the ispell dictionaries Web page at:
http://www.lasr.cs.ucla.edu/geoff/ispell-dictionaries.html
OK, How Do I Install It?
Quick installation instructions for American English:
1) Download Ispell from http://www.lasr.cs.ucla.edu/geoff/ispell.html
2) gunzip ispell-3.3.xx.tar.gz
3) tar -xvf ispell-3.3.xx.tar
4) cd ispell-3.3.xx
5) Copy one of the sample local.h files to local.h:
cp local.h.bsd local.h
cp local.h.cygwin local.h
cp local.h.linux local.h
cp local.h.macos local.h
cp local.h.solaris local.h
or
cp local.h.generic local.h
6) If you used the generic local.h file and are using a
USG-style system (Linux, IRIX, HP-UX, Solaris, etc):
Edit local.h and change:
#undef USG
to:
#define USG
7) make all
If you get compile errors in term.c, do step 6 (or undo it
if you already did it).
8) make install
Long installation instructions:
(For installation on MS-DOS, see the section about MS-DOS at the
end of this file.)
Ispell is quite portable (thanks to many people). If you speak
American English and have one of the pre-configured systems,
follow the instructions above.
For more complex installations, you will have to create a fancier
local.h file. All customization of ispell, even for the Makefile,
is done by creating or editing the file "local.h" to override the
default definitions of certain variables. The most common change
is to add or remove "#define USG" so that term.c will compile.
The next most common changes will be to the LANGUAGES variable (to
set the languages; see also the Makefiles in the various language
subdirectories), CC (to choose gcc), and BINDIR through MAN45DIR
(to control where ispell is installed). There are many other
configuration parameters; see config.X for the complete list and
further instructions. *DO NOT* make changes to config.X or to any
of the Makefiles. Anything you define in "local.h" will override
definitions in those files.
The English-language dictionary comes in four sizes: small,
medium, large, and extra-large. I recommend using the medium
dictionary unless you are very short on space. The small and
medium dictionaries have been hand-checked against a paper
dictionary to improve their accuracy. This is not true of the two
larger ones. The large and extra-large dictionaries contain
less-frequently-used words and are known to have misspelling in
them. Also, even a correct large dictionary can hide misspellings
of short words because there is some similar word that nobody
uses. (For example, the crossword-puzzle favorite "ort" can keep
you from finding a place where you mistyped "or".)
If you have a list of extra words (such as /usr/share/dict/words
on some commercial Unixes), you can also choose to make a "plus"
version, named by adding a plus sign to the size indication, to
include that list in your dictionary. Because many modern
computers don't have /usr/share/dict/words, the default dictionary
is the "non-plus" version.
After all edits, you are ready to compile ispell. Simply type
"make all" to compile all the programs, put the dictionaries
together, and build the hash file. If you get errors while
compiling term.c, change the setting of "#define USG" in your
local.h file and try again.
After your first make completes, you are ready to install ispell.
The standard "make install" will install ispell, the auxiliary
programs and scripts, the manual page, and the dictionary hash
file, all in the directories you have chosen for them. This
usually has to be done as root, and on some systems you will not
be able to redirect the output to a file. (If you're the careful
sort, you'll check the output of "make -n install" first to be
sure there are no hidden surprises.) If you don't want to install
the dictionary-building tools, you can type "make partial-install"
to install just the files needed to use ispell itself.
As well as the standard "make clean" and "make realclean" targets,
there is also a "make dictclean" target which will get rid of
constructed dictionary files such as "english.med+". This is a
separate target because of the time it takes to build
dictionaries.
Finally, there is a directory named "addons", which contains shar
kits for ispell helper programs that were generously written by
other people. These are not copyrighted or supported by the
ispell maintainer. Contact the original authors (listed in README
files in the kits) for more information.
Who Wrote Ispell?
Ispell is a very old program. The original was written in PDP-10
assembly in 1971, by R. E. Gorin. The C version was written by
Pace Willisson of MIT. Walt Buehring of Texas Instruments added
the emacs interface and posted it to the net. Geoff Kuenning
added the international support and created the current release.
Ken Stevens has maintained the Emacs interface (ispell.el) for
many years. Many, many other people contributed to the current
version; a partial list (with a much more detailed history) can
be found in the file "Contributors".
Where Do I Send Bug Reports?
Most ispell bug reports, except bugs related to the emacs-lisp
interface, should be sent to "ispell-bugs@itcorp.com". Bugs in
the emacs interface (ispell.el) should be sent to
"ispell-el-bugs@itcorp.com". If you're not sure which address to
use, send your report to "ispell-bugs@itcorp.com" and I'll sort it
out from there. Note that the bug aliases are not discussion
lists; membership is limited.
Bugs in add-on packages (found in the "addons" subdirectory)
should not be sent to itcorp.com. Instead, send reports to the
developers of those packages (see the README file for the package
you are using).
How Do I Reference Ispell in Scholarly Papers?
There is no published paper on ispell, so if you make use of
ispell in a fashion that requires a reference (e.g., using the
dictionary as a word list in a research project), you are limited
to an Internet reference. The full proper title is printed by
"ispell -v": "International Ispell Version x.y.z". Please include
the full version number in your reference so that people can
discover the exact variant that you used; sometimes it's
important. If you're feeling really nice, you can also credit me,
Geoff Kuenning, as the author. Usually, you should also include a
link to the ispell Web page:
http://www.lasr.cs.ucla.edu/geoff/ispell.html
so that readers of your paper can locate a copy of ispell if they wish.
Where Do I Get Dictionaries?
Ispell comes with American and British dictionaries. American-style
spellings are the default. To get British spellings, copy the
LANGUAGES and MASTERHASH definitions from config.X into your
local.h, and then globally replace "american" with "british".
For other languages, consult the file "languages/Where", which
lists everything I know about. You can also check the ispell
dictionaries page:
http://www.lasr.cs.ucla.edu/geoff/ispell-dictionaries.html
which contains pointers to all known dictionaries.
As a general rule, if you use a dictionary that was not intended
for ispell, or if you combine multiple dictionaries, you should
use munchlist to reduce the size of the dictionary.
If you create a dictionary of your own and make it available for
ftp, please send a notification to ispell-bugs@itcorp.com so that
I can add your dictionary to the ftp list.
How Long Does It Take to Make Dictionaries?
Long ago, making a big dictionary took hours. But on a modern
machine, it should only take a few minutes.
Special Installation Notes for Certain Machines:
Although I have tried to avoid putting in specific machine
dependencies as a general rule, some machine-specific #defines
will be found at the end of config.X.
If you get lots of warnings when compiling term.c, check to be
sure that you have correctly defined SIGNAL_TYPE in your local.h.
Some recent "internationalized" Unixes (such as HP, and anything
using the GNU tools, such as Linux) vary the behavior of sort(1)
based on an environment variable such as LANG, LOCALE, or LC_xxx.
The symptom is that munchlist does not produce an optimal
dictionary. The shell scripts try to protect against this by setting
all of these variables to "C", but if your system uses different
environment variables, you may have to do this by hand.
If you get core dumps from the sort command (reported on HP
systems building large German dictionaries), try adding the "-y"
flag to the appropriate invocation of sort in the Makefile or in
munchlist. This flag is only available on some systems.
Some BSDI systems have a screwy sort command that uses
-T to specify the record (as opposed to field) delimiter. You'll
have to disable SORTTMP and enable MAKE_SORTTMP.
What About Ispell for MS-DOS?
Although the ispell maintainer does not support MS-DOS and
Windows, a generous contributor, Eli Zaretskii, has added MS-DOS
support. You can build ispell for MS-DOS with either EMX/GCC or
DJGPP. See the file pc/README for compilation instructions.