1hspell(1) Ivrix hspell(1)
2
3
4
6 hspell - Hebrew spellchecker
7
9 hspell [ -acDhHilnsvV ] [file...]
10
12 hspell tries to find incorrectly spelled Hebrew words in its input
13 files.
14
15 Like the traditional Unix spell(1), hspell outputs the sorted list of
16 incorrect words, and does not (yet) have a more friendly interface for
17 making corrections for you. However, unlike spell(1), hspell can sug‐
18 gest possible corrections for some spelling errors - such suggestions
19 are enabled with the -c (correct) and -n (notes) options.
20
21 Hspell currently expects ISO-8859-8-encoded input files. Non-Hebrew
22 characters in the input files are ignored, allowing the easy
23 spellchecking of Hebrew-English texts, as well as HTML or TeX files.
24 If files using a different encoding (e.g., UTF8) are to be checked,
25 they must be converted first to ISO-8859-8 (e.g., see iconv(1),
26 recode(1)).
27
28 The output will also be in ISO-8859-8 encoding, in so-called "logical
29 order", so it is normally useful to pipe it to bidiv(1) before viewing,
30 as in:
31
32 hspell -c filename | bidiv | less
33
34 If no input file is given, hspell reads from its standard input.
35
37 -v If the -v option is given, hspell prints emacs-oriented version
38 information and exits.
39
40 -vv Repetition of the -v option causes hspell to also show some
41 information on which optional features were enabled at compile
42 time.
43
44 -V With the -V option, hspell prints true and human-oriented ver‐
45 sion information and exits.
46
47 -c If the -c option is given, hspell will suggest corrections for
48 misspelled words, whenever it can find such corrections. The
49 correction mechanism in this release is especially good at find‐
50 ing corrections for incorrect niqqud-less spellings, with miss‐
51 ing or extra 'immot-qri'a.
52
53 -n The -n option will give some longer "notes" about certain spell‐
54 ing errors, explaining why these are indeed errors (or in what
55 cases using this word is in fact correct). It is recommend to
56 combine the two options, -cn for maximal correction help from
57 hspell.
58
59 -l The -l (linguistic information) option will explain for each
60 correct word why it was recognized (show the basic noun, verb,
61 etc., that this inflection relates to, and its tense, gender,
62 associated Kinnuy, or other relevant information)
63
64 If Hspell was built without morphological analysis support, this
65 option will only show the correct splits of the given word into
66 prefix + word, as the full information incurs a 4-fold increase
67 in the installation size.
68
69 Giving the -c option in addition to -l results in special behav‐
70 ior. In that case hspell suggests "corrections" to every word
71 (regardless if they are in the dictionary or not), and shows the
72 linguistic information on all those words. This can be useful
73 for a reader application, which may also want to be able to
74 understand mispellings and their possible meanings.
75
76
77 -s Normally, the words deemed spelling mistakes are shown in alpha‐
78 betical order. The -s option orders them by severity, i.e., the
79 errors that most frequently appear in the document are shown
80 first. This option is most useful for people helping to build
81 hspell's word list, and are looking for common correct words
82 that hspell does not know yet.
83
84 -a With the -a option, hspell tries to emulate (as little as possi‐
85 ble of) ispell's pipe interface. This allows Lyx, Emacs, Geresh
86 and KDE to use hspell as an external spell-checker.
87
88 -i This option only has any effect when used together with the -a
89 option. Normally, hspell -a only checks the spelling of Hebrew
90 words. If the given file also contains non-Hebrew words (such as
91 English words), these are simply ignored. Adding the -i option
92 tells hspell to pass the non-Hebrew words to ispell(1), and
93 return its answer as an answer from hspell. This allows conve‐
94 niently spell-checking mixed Hebrew-English documents.
95
96 Running hspell with the program name hspell-i also enables the
97 -i option. This is a useful trick when an application expects
98 just the name of a spell-checking program, and adds only the
99 "-a" option (without giving the user an option to also add
100 "-i"). The multispell script supplied with hspell serves a simi‐
101 lar purpose, with more control over encodings and which spell-
102 checker to run for non-Hebrew words.
103
104 -H By default, Hspell does not allow the He Ha-sh'ela prefix. This
105 is because this prefix is not normally used in modern Hebrew,
106 and generates many false-negatives (errors, like He followed by
107 a possessed noun, are thought to be correct). The -H option nev‐
108 ertheless tells Hspell to allow this prefix.
109
110 -D base
111 Load the word lists from the given base pathname, rather than
112 from the compiled-in default path. This is mostly used for test‐
113 ing Hspell, when the dictionaries have been compiled in the cur‐
114 rent directory and hspell is run as "hspell -Dhebrew.wgz".
115
116 -d, -B, -m, -T, -C, -S, -P, -p, -w, and -W
117 These options are passed to hspell by lyx or other applications,
118 and are cordially ignored.
119
121 Hspell was designed to be 100% and strictly compliant with the official
122 niqqud-less spelling rules ("Ha-ktiv Khasar Ha-niqqud", colloquially
123 known as "Ktiv Male") published by the Academy of the Hebrew Language.
124
125 This is both an advantage and a disadvantage, depending on your view‐
126 point. It's an advantage because it encourages a correct and consis‐
127 tent spelling style throughout your writing. It is a disadvantage,
128 because a few of the Academia's official spelling decisions are rela‐
129 tively unknown to the general public.
130
131 Users of Hspell (and all Hebrew writers, for that matter) are encour‐
132 aged to read the Academia's official niqqud-less spelling rules (which
133 are printed at the end of most modern Hebrew dictionaries, and an
134 abridged version is available in http://hebrew-academy.huji.ac.il/deci‐
135 sion4.html). Users are also encouraged to refer to Hebrew dictionaries
136 which use the niqqud-less spelling (such as Millon Ha-hove, Rav Milim,
137 and the new Even Shoshan).
138
139 Future releases might include an option for alternative spelling stan‐
140 dards.
141
143 The hspell program itself is mostly a simple (but efficient) program
144 that checks input words against a long list of valid words. The real
145 "brains" behind it are the word lists (dictionary) provided by the
146 Hspell project.
147
148 In order for this dictionary to be completely free of other people's
149 copyright restrictions, the Hspell project is a clean-room implementa‐
150 tion, not based on pre-existing word lists or spell checkers, or on
151 copying of printed dictionaries.
152
153 The word list is also not based on automatic scanning of available
154 Hebrew documents (such as online newspapers), because there is no way
155 to guarantee that such a list will be correct (not contain mis‐
156 spellings, useless proper names, and so on), complete (certain inflec‐
157 tions might not appear in the chosen samples) or consistent (especially
158 when it comes to niqqud-less spelling rules).
159
160 Instead, our idea was to write programs which know how to correctly
161 inflect Hebrew nouns and conjugate Hebrew verbs. The input to these
162 programs is a list of noun stems and verb roots, plus hints needed for
163 the correct inflection when these cannot be figured out automatically.
164 Most of the effort that went into the Hspell project went into building
165 these input files. Then, "word list generators" (written in Perl, and
166 are also part of the Hspell project) create the complete inlected word
167 list that will be used by the spellchecking program, hspell. This gen‐
168 eration process is only done once, when building hspell from source.
169
170 These lists, before and after inflection, may be useful for much more
171 than spellchecking. Morphological analysis (which hspell provides with
172 the -l option) is one example. For more ideas, see Hspell project's Web
173 site, at http://ivrix.org.il/projects/spell-checker.
174
176 ~/.hspell_words, ./hspell_words
177 These files, if they exist, should contain a list of Hebrew
178 words that hspell will also accept as correct words.
179
180 Note that only these words exactly will be added - they are not
181 inflected, and prefixes are not automatically allowed.
182
183
184 /usr/local/share/hspell/*
185 The standard Hebrew word lists used by hspell.
186
187
189 Currently always 0.
190
192 The version of hspell described by this manual page is 1.0 (May 16,
193 2006)
194
196 Copyright (C) 2000-2006, Nadav Har'El <nyh@math.technion.ac.il> and Dan
197 Kenigsberg <danken@cs.technion.ac.il>.
198
199 Hspell is free software, released under the GNU General Public License
200 (GPL). Note that not only the programs in the distribution, but also
201 the dictionary files and the generated word lists, are licensed under
202 the GPL. There is no warranty of any kind.
203
204 See the LICENSE file for more information and the exact license terms.
205
206 The latest version of this software can be found in
207 http://www.ivrix.org.il/projects/spell-checker
208
210 The hspell utility and the linguistic databases behind it (collectively
211 called "the Hspell project") were created by Nadav Har'El
212 <nyh@math.technion.ac.il> and by Dan Kenigsberg <danken@cs.tech‐
213 nion.ac.il>.
214
215 Although we wrote all of Hspell's code ourselves, we are truly indebted
216 to the old-style "open source" pioneers - people who wrote books
217 instead of hiding their knowledge in proprietary software. For the cor‐
218 rect noun inflections, Dr. Shaul Barkali's "The Complete Noun Book" has
219 been a great help. Prof. Uzzi Ornan's booklet "Verb Conjugation in Flow
220 Charts" has been instrumental in the implementation of verb conjuga‐
221 tion, and Barkali's "The Complete Verb Book" was used too.
222
223 During our work we have extensively used a number of Hebrew dictionar‐
224 ies, including Even Shoshan, Millon Ha-hove and Rav-Milim, to ensure
225 the correctness of certain words. Various Hebrew newspapers and books,
226 both printed and online, were used for inspiration and for finding
227 words we still do not recognize.
228
229 We wish to thank Cilla Tuviana and Dr. Zvi Har'El for their assistance
230 with some grammatical questions.
231
232 Several other people helped us in various releases, with suggestions,
233 fixes or patches - they are listed in the WHATSNEW file in the distri‐
234 bution.
235
236
238 hspell(3), spell(1), ispell(1), bidiv(1), iconv(1), recode(1)
239
241 This manual page is in English.
242
243 For GUI-lovers, hspell's user interface is an abomination. As more and
244 more applications learn to interface with hspell, this will no longer
245 be an issue. See http://www.ivrix.org.il/projects/spell-checker/Hspell-
246 HOWTO.html for instructions on how to use Hspell in a variety of appli‐
247 cations.
248
249 hspell's being limited to the ISO-8859-8 encoding, and not recognizing
250 UTF-8 or even CP1255 (including niqqud), is almost an anachronism
251 today.
252
253
254
255Hspell 1.0 16 May 2006 hspell(1)