home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / editor / speller / readme.2nd < prev   
Text File  |  1994-01-31  |  6KB  |  165 lines

  1. Note:  This readme file is from the unix ispell distribution.  JGH
  2. ***********************************************************************
  3.  
  4.  
  5. -*- Mode:Text -*-
  6.  
  7. Ispell consists of two programs: the actual spelling checker, "ispell",
  8. and the hash table builder, "buildhsh".
  9.  
  10. The dictionary comes from the ITS spell dictionary.  I got it from
  11. "ml:wba;dict 191", although I don't know that this is the copy currently
  12. in use on the 20's around MIT.
  13.  
  14. ----------------------------------------------------------------------
  15.  
  16. Addendum:
  17.  
  18. My eternal gratitude to the author of ispell -- I don't know how I
  19. ever lived without it.  I received his permission to post ispell to
  20. the net.
  21.  
  22. As far as I know, no one informally "supports" this program.  If you
  23. would like to "adopt" it (collect fixes/enhancements and post a new
  24. version periodically), feel free to do so.
  25.  
  26. I volunteer to collect dictionary diffs and post a composite diff
  27. periodically.  If you add a lot of words to the main dictionary, send
  28. me the diffs between the the modified dictionary and the posted one.
  29. Also, if you have access to a TOPS20 system with a more complete
  30. dictionary in ispell format, send me the diffs if you can.  Just
  31. PLEASE don't dump an entire dictionary to our site!
  32.  
  33. The dictionary posted is one I snarfed from around here -- after
  34. comparison with the one originally supplied, ours appears a tad more
  35. complete and accurate.
  36.  
  37. Walt Buehring
  38. Texas Instruments - Computer Science Center
  39.  
  40. ARPA:  Buehring%TI-CSL@CSNet-Relay
  41. UUCP:  {smu, texsun, im4u, rice} ! ti-csl ! buehring
  42.  
  43. ----------------------------------------------------------------------
  44.  
  45. The following is the only documentation I could find about the format
  46. of the dictionary.  It was written for the TOPS20 speller that ispell
  47. mimics, so I believe most the information is applicable.  It should be
  48. useful if you want to add words to the main dictionary by hand.  -WB
  49.  
  50. ----------------------------------------------------------------------
  51.  
  52. 11.6  Dictionary flags
  53.  
  54.      Words  in SPELL's main dictionary (but not the other dictionaries) may
  55. have flags associated with  them  to  indicate  the  legality  of  suffixes
  56. without  the  need  to keep the full suffixed words in the dictionary.  The
  57. flags have "names" consisting of single  letters.    Their  meaning  is  as
  58. follows:
  59.  
  60. Let  #  and  @  be  "variables"  that can stand for any letter.  Upper case
  61. letters are constants.  "..."  stands  for  any  string  of  zero  or  more
  62. letters,  but note that no word may exist in the dictionary which is not at
  63. least 2 letters long, so, for example, FLY may not be produced  by  placing
  64. the  "Y"  flag  on "F".  Also, no flag is effective unless the word that it
  65. creates is at least 4 letters  long,  so,  for  example,  WED  may  not  be
  66. produced by placing the "D" flag on "WE".
  67.  
  68. "V" flag:
  69.         ...E --> ...IVE  as in CREATE --> CREATIVE
  70.         if # .ne. E, ...# --> ...#IVE  as in PREVENT --> PREVENTIVE
  71.  
  72. "N" flag:
  73.         ...E --> ...ION  as in CREATE --> CREATION
  74.         ...Y --> ...ICATION  as in MULTIPLY --> MULTIPLICATION
  75.         if # .ne. E or Y, ...# --> ...#EN  as in FALL --> FALLEN
  76.  
  77. "X" flag:
  78.         ...E --> ...IONS  as in CREATE --> CREATIONS
  79.         ...Y --> ...ICATIONS  as in MULTIPLY --> MULTIPLICATIONS
  80.         if # .ne. E or Y, ...# --> ...#ENS  as in WEAK --> WEAKENS
  81.  
  82. "H" flag:
  83.         ...Y --> ...IETH  as in TWENTY --> TWENTIETH
  84.         if # .ne. Y, ...# --> ...#TH  as in HUNDRED --> HUNDREDTH
  85.  
  86. "Y" FLAG:
  87.         ... --> ...LY  as in QUICK --> QUICKLY
  88.  
  89. "G" FLAG:
  90.         ...E --> ...ING  as in FILE --> FILING
  91.         if # .ne. E, ...# --> ...#ING  as in CROSS --> CROSSING
  92.  
  93. "J" FLAG"
  94.         ...E --> ...INGS  as in FILE --> FILINGS
  95.         if # .ne. E, ...# --> ...#INGS  as in CROSS --> CROSSINGS
  96.  
  97. "D" FLAG:
  98.         ...E --> ...ED  as in CREATE --> CREATED
  99.         if @ .ne. A, E, I, O, or U,
  100.                 ...@Y --> ...@IED  as in IMPLY --> IMPLIED
  101.         if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
  102.                 ...@# --> ...@#ED  as in CROSS --> CROSSED
  103.                                 or CONVEY --> CONVEYED
  104. "T" FLAG:
  105.         ...E --> ...EST  as in LATE --> LATEST
  106.         if @ .ne. A, E, I, O, or U,
  107.                 ...@Y --> ...@IEST  as in DIRTY --> DIRTIEST
  108.         if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
  109.                 ...@# --> ...@#EST  as in SMALL --> SMALLEST
  110.                                 or GRAY --> GRAYEST
  111.  
  112. "R" FLAG:
  113.         ...E --> ...ER  as in SKATE --> SKATER
  114.         if @ .ne. A, E, I, O, or U,
  115.                 ...@Y --> ...@IER  as in MULTIPLY --> MULTIPLIER
  116.         if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
  117.                 ...@# --> ...@#ER  as in BUILD --> BUILDER
  118.                                 or CONVEY --> CONVEYER
  119.  
  120. "Z FLAG:
  121.         ...E --> ...ERS  as in SKATE --> SKATERS
  122.         if @ .ne. A, E, I, O, or U,
  123.                 ...@Y --> ...@IERS  as in MULTIPLY --> MULTIPLIERS
  124.         if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
  125.                 ...@# --> ...@#ERS  as in BUILD --> BUILDERS
  126.                                 or SLAY --> SLAYERS
  127.  
  128. "S" FLAG:
  129.         if @ .ne. A, E, I, O, or U,
  130.                 ...@Y --> ...@IES  as in IMPLY --> IMPLIES
  131.         if # .eq. S, X, Z, or H,
  132.                 ...# --> ...#ES  as in FIX --> FIXES
  133.         if # .ne. S, X, Z, H, or Y, or (# = Y and @ = A, E, I, O, or U)
  134.                 ...@# --> ...@#S  as in BAT --> BATS
  135.                                 or CONVEY --> CONVEYS
  136.  
  137. "P" FLAG:
  138.         if @ .ne. A, E, I, O, or U,
  139.                 ...@Y --> ...@INESS  as in CLOUDY --> CLOUDINESS
  140.         if # .ne. Y, or @ = A, E, I, O, or U,
  141.                 ...@# --> ...@#NESS  as in LATE --> LATENESS
  142.                                 or GRAY --> GRAYNESS
  143.  
  144. "M" FLAG:
  145.         ... --> ...'S  as in DOG --> DOG'S
  146.  
  147. ----------------------------------------------------------------------
  148.  
  149. [Whew!  That's all very nice, but how about a quick reference...  -WB]
  150.  
  151. V -  ive
  152. N -  ion, tion, en
  153. X -  ions, ications, ens
  154. H -  th, ieth
  155. Y -  ly
  156. G -  ing
  157. J -  ings
  158. D -  ed
  159. T -  est
  160. R -  er
  161. Z -  ers
  162. S -  s, es, ies
  163. P -  ness, iness
  164. M -  's
  165.