1 | Things remaining to be done to ispell: |
---|
2 | |
---|
3 | - It might be nice to support multiple personal dictionaries. On |
---|
4 | the other hand, it's pretty easy to combine them with "cat". |
---|
5 | - A small amount of string space could be saved if buildhash would |
---|
6 | combine strings with common suffixes (e.g., "and" could be stored |
---|
7 | as a pointer to the tail of "bland"). |
---|
8 | - (Pace Willisson) Pace's latest version of ispell compresses |
---|
9 | common digrams to reduce the size of the hash file, and stores |
---|
10 | shorter words in the dictionary entry itself. (Since the digram |
---|
11 | compression also reduces word size, this is a big win). He also |
---|
12 | improved startup time, at a slight running-time penalty, by |
---|
13 | eliminating the mass conversion of string indexes to pointers |
---|
14 | and just using the indexes as such whenever a string is accessed. |
---|
15 | - The findaffix script takes ridiculous amounts of time and disk |
---|
16 | space. It desperately needs to be rewritten in C, which would |
---|
17 | also allow it to correctly support string characters and to |
---|
18 | suppress reporting of choices that are already in the affix file. |
---|
19 | - Some of the following ideas require more flag bits in the |
---|
20 | dictionary. Since there is only one bit remaining for most |
---|
21 | cases, I plan to use that bit as some sort of an indicator |
---|
22 | that more flag bits reside somewhere else. This will be a |
---|
23 | kludge, but it will save some space. Beware! Don't plan on |
---|
24 | using that last flag bit for something else. |
---|
25 | - (Ian Dall) For some applications, it can be handy to allow |
---|
26 | multiple dictionary hash files. This shouldn't be too hard, since |
---|
27 | there's already similar code to support the personal dictionary. |
---|
28 | - (Not mine, but I've lost the name of the originator.) |
---|
29 | Some misspellings are common, but corrections will not ever |
---|
30 | be found by ispell's algorithm. It would be nice to be able |
---|
31 | to explicitly specify misspelling/correction pairs for such |
---|
32 | words (e.g., "lite->light"). |
---|
33 | - Several people, notably Peter Mutsaers, have asked if the |
---|
34 | affix file format could be extended to allow limited |
---|
35 | variables, so that you could specify things like |
---|
36 | "[AEIOU][DNL] > \2ING" to handle words like "pad->padding". |
---|
37 | - Ispell should be smart enough to ignore hyphenation signs, |
---|
38 | such as the TeX \- hyphenation indicator. |
---|
39 | - Since there can be two personal dictionaries, there should |
---|
40 | be a way to specify which dictionary a new word ("I" |
---|
41 | command) should be inserted into. |
---|
42 | - For languages that form lots of compound words, such as |
---|
43 | German, munchlist should be smart enough to split compound |
---|
44 | words into their components when appropriate. |
---|
45 | - (Jeff Edmonds) The personal dictionary should be able to |
---|
46 | remove certain words from the master dictionary, so that |
---|
47 | obscure words like "wether" wouldn't mask favorite typos. |
---|
48 | - (Jeff Edmonds) It would be wonderful if ispell could correct |
---|
49 | inserted spaces such as "th e" for "the" or even "can not" |
---|
50 | for "cannot". |
---|
51 | - Since ispell has dictionaries available to it, it is |
---|
52 | conceivable that it could automatically determine the |
---|
53 | language of a particular file by choosing the dictionary |
---|
54 | that produced the fewest spelling errors on the first few |
---|
55 | lines. |
---|
56 | - It is long past the time when the ispell.1 manual page |
---|
57 | should have been broken up into components describing the |
---|
58 | various programs in the suite. |
---|
59 | - If the -C flag is disabled, ispell should (at least |
---|
60 | optionally) use the "??" form to suggestion possible |
---|
61 | compound formations. |
---|
62 | - The elisp interface should provide a way for ispell to |
---|
63 | return error messages to emacs, so that users don't get |
---|
64 | inexplicable failures when things like dictionary open |
---|
65 | failures happen. |
---|