"Fossies" - the Fresh Open Source Software Archive

Member "texstudio-3.0.1/src/hunspell/ChangeLog" (31 Aug 2020, 88934 Bytes) of package /linux/misc/texstudio-3.0.1.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 2016-04-29 Caolán McNamara <caolanm at LibO>:
    2 	* deprecate old api and add new one
    3 	  old one remains implemented in terms of new one
    4 	  and will eventually be removed
    5 	* shrink exposed api down to just hunspell.hxx
    6 	* next major release is likely to require C++11
    7 
    8 2016-04-15 Caolán McNamara <caolanm at LibO>:
    9 	* generally using std::string and std::vector internally
   10 
   11 2016-04-13 Caolán McNamara <caolanm at LibO>:
   12 	* gh#371 drop experimental code
   13 
   14 2015-09-11 Caolán McNamara <caolanm at LibO>:
   15 	* rhbz#1261421 crash on mashing hangul korean keyboard
   16 
   17 2014-12-03 Németh László <nemeth at numbertext dot org>:
   18 	* tools/hunspell.cxx: security fixes of the Hunspell executable
   19 	  - secure file name handling, the problem (checking
   20 	    OpenDocument files with malicious file names)
   21 	    reported by Eric Sesterhenn
   22 	  - using tmpnam() only with system("mkdir tempname && ...")
   23 
   24 2014-10-17 Caolán McNamara <caolanm at LibO>:
   25 	* sf#245 Feature from Anish Patil -S mode
   26 	  to show suggestions for completion of
   27 	  correctly spelled words
   28 	* sf#248 Fix manpage about how to include
   29 
   30 2014-10-16 Caolán McNamara <caolanm at LibO>:
   31 	* rhbz#915448, sf#57, sf#185 report character offset
   32 	  and not byte offset in ispell mode
   33 	* sf#56 segv in experimental mode
   34 	* sf#228 don't translate init string
   35 
   36 2014-09-22 Németh László <nemeth at numbertext dot org>:
   37 	* fix crash in morphological analysis of the Hungarian
   38 	  compound word 'művészegyéniség', reported by Gáspár Sinai
   39 
   40 2014-08-26 Németh László <nemeth at numbertext dot org>:
   41 	* unmunch separates flags of prefixes from the word,
   42 	  bug reported by Daniel Naber
   43 
   44 2014-08-05 Németh László <nemeth at numbertext dot org>:
   45 	* moz#318040 Mozzilla accepts abbreviations without dots
   46 	* myfopen(): add _wfullpath to expand relative parts of absolute paths
   47 
   48 2014-07-16 Caolán McNamara <caolanm at LibO>:
   49 	* moz#675553 Switch from PRBool to bool
   50 	* moz#690892 replace PR_TRUE/PR_FALSE with true/false
   51 	* Silence the warning about empty while body loop in clang
   52 	* moz#777292 Make nsresult an enum 
   53 	* moz#579517 Use stdint types in gecko
   54 	* moz#784776 consistently use FLAG_NULL
   55 	* moz#927728 Convert PRUnichar to char16_t
   56 	* moz#943268 Remove nsCharsetAlias and nsCharsetConverterManager 
   57 	* Don't include config.h in license.hunspell if MOZILLA_CLIENT is set
   58 
   59 2014-06-26 Caolán McNamara <caolanm at LibO>:
   60 	* clang scan-build: Allocator sizeof operand mismatch
   61 	* clang scan-build: other low hanging warnings
   62 	* clang scan-build: significant warnings
   63 
   64 2014-06-02 Németh László <nemeth at numbertext dot org>:
   65 	* escape spaces in paths of ODF files
   66 
   67 2014-05-28 Németh László <nemeth at numbertext dot org>:
   68 	* add long path/Unicode path support in WIN32 environment:
   69 	- hunspell#233 (reported by mahak gark) and LibreOffice fdo#48017 
   70 	* flat ODF support, eg.:
   71 	  hunspell doc.fodt
   72 	  cat doc.fodt | hunspell -l -O
   73 	* new options:
   74 	- -X (XML) input format
   75 	- -O (ODF or flat ODF) input format
   76 	- --check-apostrophe: check and force Unicode apostrophe usage
   77 	  (ASCII or Unicode apostrophe has to be in the
   78 	  WORDCHARS section of the affix file)
   79 	* fix ODF support:
   80 	- break 1-line XML of ODT documents at </style:style>, too,
   81 	  not only at </text:p> (limiting tokenization problems, when
   82 	  fgets stops within an XML tag)
   83 	- show ODF file path on the UI instead of the temporary file
   84 	* fix XML support:
   85 	- ', ", &, < and > in replacements converted to XML entities
   86 	- recognize &apos at tokenization, depending from WORDCHARS
   87 	- &apos; in tokens converted to ' before spell checking and
   88 	  in the output of the pipe interface
   89 	* better apostrophe usage:
   90 	- WORDCHARS only with one of the Unicode or ASCII apostrophe
   91 	  results extended word tokenization: both of them will be part of
   92 	  the words (if they are inside: eg. word's, but not words').
   93 	- convert Unicode apostrophes to ASCII ones for 8-bit dictionaries
   94 	  (eg. English dictionaries), or for UTF-8 dictionaries only
   95 	  with ASCII apostrophe supports (eg. French dictionaries).
   96 	* updated manual:
   97 	- hunspell.4 renamed to hunspell.5, see
   98 	  hunspell#241 reported by Cristopher Yeleighton
   99 	- updated translations
  100 	- note about long/Unicode paths in WIN32 (hunspell.3)
  101 
  102 2014-04-25 Németh László <nemeth at numbertext dot org>:
  103 	* OpenDocument support, eg.
  104 	  hunspell *.odt
  105 	  hunspell -l *.odt
  106 	* always load default personal dictionary (fix
  107 	  filtering bad words - reduce this word list - using
  108 	  it as a personal dictionary workflow)
  109 	* fix parsing/URL recognition problem (bad tokens
  110 	  with aposthrophes)
  111 
  112 2013-07-25 pchang9@cs.wisc.edu
  113 	* moz#897255 Wasted work in line_uniq
  114 	* moz#897780 Wasted work in SuggestMgr::twowords
  115 
  116 2013-07-25 Caolán McNamara <caolanm at LibO>:
  117 	* hunspell#167 layout problems with long lines
  118 		- based on the original fix by xorho
  119 		  adapted to HEAD
  120 	* rhbz#925562 upgrade config.guess for aarch64
  121 
  122 2013-07-24 pchang9@cs.wisc.edu
  123 	* moz#896301 Wasted work in SfxEntry::checkword
  124 	* moz#896844 Wasted work in AffixMgr::defcpd_check
  125 
  126 2013-06-13 Konstantin Khlebniko
  127 	* #49 HashMgr::add_word computes wrong size for struct hentry
  128 
  129 2013-06-13 Ville Skyttä
  130 	* #53 Man page syntax fixes 
  131 
  132 2013-04-19 John Thomson <john thomson at SIL>
  133         * win_api: add remove() of Hunspell API (hun#3606435)
  134 
  135 2013-04-19 Rouslan Solomokhin <at sf.net>
  136         * fix crash in suggestions for 99-character long words
  137           by extending arrays of SuggestMgr::forgotchar_*
  138           (hun#3595024, also http://crbug.com/130128),
  139           thanks to also Paweł Hajdan to report the patch
  140 
  141 2013-04-01 Caolán McNamara <caolanm at LibO>:
  142 	* hunspell: -Werror=undef
  143 
  144 2013-03-13 Caolán McNamara <caolanm at LibO>:
  145 	* rhbz#918938 crash in interaction with danish thesaurus
  146 
  147 2012-09-18 Németh László <nemeth at numbertext dot org>:
  148         * src/hunspell/affixmgr.*: - fix morphological analysis of
  149         compound words (hun#3544994, reported by Dávid Nemeskey, fdo#55045)
  150 
  151 2012-06-29 Caolán McNamara <caolanm at LibO>:
  152 	* fix various coverity warnings
  153 
  154 2012-01-10 Ehsan Akhgari <ehsan at mozilla dot com>
  155 	* moz#710940 Firefox Crash [@ AffixMgr::parse_file(char const*, char
  156 	const*) ]
  157 
  158 2011-12-16 Jared Wein <jwein at mozilla dot com>
  159 	* moz#710967 Incorrect argument passed to strncmp in
  160 	AffixMgr::parse_convtable
  161 
  162 2011-12-06 Caolán McNamara <caolanm at LibO>:
  163 	* rhbz#759647 fixed tempname of hunSPELL.bak collides with other users
  164 	when multiple edits in one dir
  165 
  166 2011-10-13 Caolán McNamara <caolanm at LibO>:
  167 	* moz#694002 crash in hunspell affixmgr on exit with bad .aff
  168 	* leak in hunspell affixmgr with bad .aff
  169 
  170 2011-09-19 Caolán McNamara <caolanm at LibO>:
  171 	* make libparsers.a not installed thanks to Tomáš Chvátal
  172 
  173 2011-06-23 Caolán McNamara <caolanm at LibO>:
  174 	* fix some windows compiler warnings
  175 
  176 2011-05-24 Németh László <nemeth at numbertext dot org>:
  177         * src/hunspell/affixmgr.*: allow twofold suffixes in compounds
  178           by extended version of Arno Teigseth's patch, see hun#3288562.
  179         - new option for this feature: COMPOUNDMORESUFFIXES
  180 
  181 2011-02-16 Németh László <nemeth at numbertext dot org>:
  182         * src/*/Makefile.am: fix library versioning, the probem reported by
  183           Rene Engerhald and Simon Brouwer.
  184 
  185 	* man/hunspell.4: new version based on the revised version of Ruud Baars
  186 
  187 2011-02-02 Németh László <nemeth at OOo>:
  188 	* suggestngr.cxx: fix ngram PHONE suggestion for input words with
  189 	  diacritics using UTF-8 encoded dictionaries (add byte length to the
  190 	  8-bit phonet() argument instead of character length)
  191 
  192 	* suggestmgr.cxx: fix missing csconv problem with UTF-8 encoding
  193 	  dictionares, when the input contains non-BMP characters
  194 	- tests/utf8_nonbmp.sug: test file
  195 
  196 	* suggestmgr.cxx: mixed and keyboard based character suggestions
  197 	  don't forbid ngram suggestion search (optimized tests/suggestiontest)
  198 
  199 	* affixmgr.cxx: fix hun#2999225: interfering compounding mechanisms,
  200 	  tested on Dutch word list and reported by Ruud Baars
  201 
  202 	* affixmgr.cxx: allomorph fix for hun#2970240 (Hungarian 
  203 	  compound "vadász+gép" was analyzed as vad+ász+gép, and rejected
  204 	  by the ss->s rep rule (verb "vadássz"), but the analysis
  205 	  didn't continue for the longer word parts (vadász+gép).
  206 
  207 	* csutil.cxx: add lang code "az_AZ", "hu_HU", "tr_TR" for back
  208 	  compatibility (fixing Azeri and Turkish casing conversion, also
  209 	  Hungarian compound handling)
  210 
  211 	* affixmgr.cxx: fix morphological analysis
  212 
  213 2011-01-26 Németh László <nemeth at OOo>:
  214 	* affixmgr.cxx: fix for moz#626195 (memcheck problem with FULLSTRIP).
  215 
  216 	* affixmgr.*, suggestmgr.cxx: FORBIDWARN parameter (see manual)
  217 
  218 2011-01-24 Németh László <nemeth at OOo>:
  219 	* suffixmgr.cxx: fix bad suggestion of forbidden compound words, eg. 
  220 	  "termijndoel" with the Dutch dictionary. Reported by Ruud Baars.
  221 
  222 	* latexparser.cxx: fix double apostrophe TeX quoation mark tokenization
  223 	  (hun#3119776), reported by Wybodekker at SF.net.
  224 
  225 	* tests/suggestiontest/*: multilanguage and single Hunspell version, see README
  226 	* tests/suggestiontest/prepare2: for make -f Makefile.orig single
  227 
  228 2011-01-22 Németh László <nemeth at OOo>:
  229 	* affixmgr.*, suggestmgr.*: new features
  230 	  ONLYMAXDIFF: remove all bad ngram suggestions (default mode keeps one)
  231 	  NONGRAMSUGGEST: similar to NOSUGGEST, but it forbids to use the word
  232 	  in ngram based (more, than 1-character distance) suggestions.
  233 
  234 2011-01-21 Németh László <nemeth at OOo>:
  235 	* suggestmgr.*: limit wild suggestions (hun#2970237 by Ruud Baars)
  236 	- limited compound word suggestions
  237 	- improved and limited ngram based suggestions
  238 	* tests/*.sug: modified test files
  239 	- feature MAXCPDSUGS:
  240 	  MAXCPDSUGS 0 : no compound suggestion, suggested by
  241 	  Finn Gruwier Larsen in hunfeat#2836033
  242 	  MAXCPDSUGS n : max. ~n compound suggestions
  243 	- feature MAXDIFF: differency limit for ngram suggestions: 0-10 
  244 	  eg. MAXDIFF 5: normal (default) limit
  245 	  MAXDIFF 0: only one ngram suggestion
  246 	  MAXDIFF 10: ~maxngramsugs ngram suggestions 
  247 
  248 	* affixmgr.*, hunspell.*: add flag FORCEUCASE (hun#2999228), force
  249 	  capitalization of compound words, see Hunspell 4 manual),
  250 	  suggested by Ruud Baars
  251 	  test/forceucase.*: test files
  252 
  253 	* affixmgr.*, hunspell.*: add flag WARN (hun#1808861), optional warning feature
  254 	  for rare words, suggested by Ruud Baars
  255 	  tests/warn: test files
  256 	* tools/hunspell.cxx: add option -r for optional filtering of rare words
  257 
  258 	* affixmgr.cxx: fix hun#3161359 (gcc warnings) reported by Ryan VanderMeulen.
  259 
  260 2011-01-17 Németh László <nemeth at OOo>:
  261 	* suggestmgr.cxx: fix hun#3158994 and hun#3159027 (missing csconv table
  262 	  using awkward 8bit capitalization of UTF-8 encoded dictionary words with PHONE
  263 	  suggestion, reported by benjarobin and dicollecte at SF.net).
  264 
  265 2011-01-13 Németh László <nemeth at OOo>:
  266         * affixmgr.cxx: ONLYINCOMPOUND fix for hun#2999224 (fogemorphene
  267           was allowed in end position of compoundings). Reported by Ruud Baars.
  268         * tests/onlyincompound2.*: test files
  269 
  270 2011-01-10 Ingo H. de Boer <idb_winshell at SF.net>:
  271 	* win_api/{hunspell,libhunspell, testparser}.vcproj: updated project
  272 	  files for the library and the executables. Compiling problem
  273 	  also reported by Don Walker.
  274 
  275 2011-01-06 Németh László <nemeth at OOo>:
  276         * affixmgr.cxx: fix freedesktop#32850 (program halt during Hungarian
  277           spell checking of the word "6csillagocska6", reported by András Tímár)
  278 
  279         * tools/hunspell.cxx: add Mac OS X Hunspell dictionary paths, asked by
  280           Vidar Gundersen in hunfeat#3142010
  281 
  282 2011-01-05 Caolán McNamara <cmc at OOo>:
  283 	* moz#620626 NS_UNICHARUTIL_CID doesn't support
  284 	  case conversion
  285 
  286 2011-01-03 Németh László <nemeth at OOo>:
  287 	* NEWS and THANKS: update for release 1.2.13
  288 
  289 2010-12-20 Németh László <nemeth at OOo>:
  290         * affixmgr.cxx: hun#3140784
  291 
  292 2010-12-16 Németh László <nemeth at OOo>:
  293         * affixmgr.cxx: 
  294         - improved fix of hun#2970242 (supporting
  295           zero affixes, reported by Ruud Baars
  296         - tests/opentaal_cpdpat{,2}: test files
  297 
  298         - switching off default BREAK parameters by BREAK 0,
  299           reported by Ruud Baars
  300 
  301         - hun#2999225: interfering compounding mechanisms, reported by Ruud Baars
  302 
  303 2010-12-11 Németh László <nemeth at OOo>:
  304         * affixmgr.cxx: fix hun#2970242 (CHECKCOMPOUNDPATTERN only with flags),
  305           the bug reported by Ruud Baars
  306         * tests/2970242.*: test files
  307 
  308         * tests/2970240.*: test files for CHECKCOMPOUNDPATTERN fix (check all
  309           boundaries in compound words, fixed by the previous CHECKCOMPOUNDREP
  310           fix), the bug reported by Ruud Baars
  311 
  312         * win_api/Makefile.cygwin: update
  313 
  314 2010-12-09 Caolán McNamara <cmc at OOo>:
  315 	* moz#617953 fix leak
  316 
  317 2010-11-08 Caolán McNamara <cmc at OOo>:
  318 	* rhbz#650503 crash in arabic dictionary
  319 
  320 2010-11-05 Caolán McNamara <cmc at OOo>:
  321 	* rhbz#648740 don't warn on empty flagvector
  322 
  323 2010-11-03 Caolán McNamara <cmc at OOo>:
  324 	* logically we shouldn't need a csconv table in utf-8 mode
  325 
  326 2010-10-27 Németh László <nemeth at OOo>:
  327 	* hun#3000055 (requested by Ruud Baars) add REP boundary specifiation:
  328 	  REP ^word$ xxxx
  329 	  REP ^wordstarting xxxx
  330 	  REP wordending$ xxxx
  331 
  332 	* hun#3008434 (requested by Adrián Chaves Fernández) and
  333 	  hun#3018929 (requested by Ruud Baars): REP with more than 2 words:
  334 	  REP morethantwo more_than_two
  335 
  336 	* suggestmgr.cxx: fix incomplete suggestion list for capitalized words,
  337 	  eg. missing Machtstrijd->Machtsstrijd in the Dutch dictionary
  338 	  (reported by Ruud Bars)
  339 
  340 	* tests, man: related updates
  341 
  342 2010-10-12 Caolán McNamara <cmc at OOo>:
  343 	* moz#603311 HashMgr::load_tables leaks dict when decode_flags fails
  344 	* fix mem leak found with new tests
  345 	* hun#3084340 allow underscores in html entity names
  346 
  347 2010-10-07 Németh László <nemeth at OOo>:
  348 	* affixmgr.cxx: 
  349 	- hun#2970239 fix bad suggestion of forbidden compound words
  350 	- hun#2999224 fix keepcase feature on compound words (only partial
  351 	  fix for COMPOUNDRULE based compounding)
  352 	- fix checkcompoundrep feature in compound words (check all boundaries,
  353 	  not only the last one)
  354 	  Problems reported by Ruud Baars.
  355 	  
  356 	* tests/opentaal_forbiddenword[12]*, tests/opentaal_keepcase*:
  357 	  new test files for the previous fixes
  358 	* tests/checkcompoundrep: extended test file.
  359 
  360 2010-09-05 Caolán McNamara <cmc at OOo>:
  361 	* moz#583582 fix double buffer gcc fortify issue
  362 
  363 2010-08-13 Caolán McNamara <cmc at OOo>:
  364 	* moz#586671 AffixMgr::parse_convtable leaks pattern/pattern2 if it
  365 	can't create both
  366 	* moz#586686 tidy up get_xml_list and friends
  367 
  368 2010-08-10 Caolán McNamara <cmc at OOo>:
  369 	* hun#3022860 fix remove duplicate code
  370 
  371 2010-07-17 Caolán McNamara <cmc at OOo>:
  372 	* remove ununsed get_default_enc and avoid potential misrecognition of
  373 	three letter language ids
  374 	* normalize encoding names before lookup
  375 
  376 2010-07-05 Caolán McNamara <cmc at OOo>:
  377 	* hun#2286060 add Hangul syllables to unicode tables
  378 
  379 2010-06-26 Caolán McNamara <cmc at OOo>:
  380 	* moz#571728 keep new[]/delete[] wrappers in sync for embedded in moz
  381 	case
  382 
  383 2010-06-13 Caolán McNamara <cmc at OOo>:
  384 	* moz#571728 keep new[]/delete[] wrappers in sync for embedded in moz
  385 	case
  386 
  387 2010-06-02 Caolán McNamara <cmc at OOo>:
  388 	* moz#569611 compile cleanly under win64
  389 
  390 2010-05-22 Caolán McNamara <cmc at OOo>:
  391 	* moz#525581 apply mozilla's current preferred get_current_cs impl
  392 
  393 2010-05-17 Németh László <nemeth at OOo>:
  394 	* affixmgr.cxx: fix bad limitation of parenthesized flags at
  395 	  COMPOUNDRULEs. Windows crash reported by Ruud Baars and Simon Brouwer.
  396 
  397 2010-05-05 Caolán McNamara <cmc at OOo>:
  398 	* rhbz#589326 malloc of int that should have been of char**
  399 	* hun#2997388 fix ironic misspellings
  400 
  401 2010-04-28 Caolán McNamara <cmc at OOo>:
  402 	* moz#550942 get_xml_list doesn't handle failure from get_xml_par
  403 
  404 2010-04-27 Caolán McNamara <cmc at OOo>:
  405 	* moz#465612 mozilla-specific code leaks
  406 	* moz#430900 phone is dereferenced before oom check
  407 	* moz#418348 ckey_utf alloc is used unchecked in SuggestMgr::badcharkey_utf
  408 	* CID#1487 pointer "rl" dereferenced before NULL check
  409 	* CID#1464 Returned without freeing storage "ptr"
  410 	* CID#1459 Avoid duplicate strchr
  411 	* CID#1443 Avoid any chance of dereferencing *slst
  412 	* CID#1442 Unsafe to have a null morph
  413 	* CID#1440 Avoid null filenames
  414 	* CID#1302 Dereferencing NULL value "apostrophe"
  415 	* CID#1441 Avoid deferencing null ppfx
  416 
  417 2010-04-16 Caolán McNamara <cmc at OOo>:
  418 	* hun#2344123 fix U)ncap in utf-8 locale
  419 	* fix up hunspell text UI and lines wider than terminal
  420 
  421 2010-04-15 Caolán McNamara <cmc at OOo>:
  422 	* hun#2613701 fix small leak in FileMgr::FileMgr
  423 	* fix small leak in tools/hunspell
  424 	* hun#2871300 avoid crash if def and words are NULL
  425 	* hun#2904479 fix length of hzip file
  426 	* hun#2986756 mingw build fix
  427 	* hun#2986756 fix double-free
  428 	* hun#2059896 fix crash in interactive mode without nls
  429 	* hun#2917914 add some extra words to the latexparser
  430 	* make some structs static
  431 	* C-api has duped symbol names
  432 	* regenerate gettext/intl with recent version
  433 	* hun#2796772 build a .dll under MinGW
  434 	* rhbz#502387 allow cross-compiling for MinGW target
  435 	* hun#2467643 update .vcproj files to include replist.?xx
  436 	* unify visiblity/dll_export support across platforms
  437 	* hun#2831289 sizeof(short) typo
  438 	* hun#2986756 add -u3 gcc style output
  439 
  440 2010-04-14 Caolán McNamara <cmc at OOo>:
  441 	* hun#2813804 fix segfault on hu_HU stemming
  442 
  443 2010-04-13 Caolán McNamara <cmc at OOo>:
  444 	* hun#2806689 fix ironic misspellings
  445 	* hun#2836240 add Italian translations
  446 
  447 2010-04-09 Caolán McNamara <cmc at OOo>:
  448 	* fix titchy possible leak in command-line spellchecker
  449 
  450 2010-04-07 Caolán McNamara <cmc at OOo>:
  451 	* hun#2973827 apply win64 patch
  452 	* hun#2005643 fix broken mystrdup
  453 
  454 2010-03-04 Caolán McNamara <cmc at OOo>:
  455 	* ooo#107768 fix crash in long strings in spellml mode
  456 	* hun#1999737 add some malloc checks
  457 	* hun#1999769 drop old buffer on realloc failure
  458 	* hun#2005643 tidy string functions
  459 	* hun#2005643 micro-opt
  460 	* hun#2006077 free strings on failed dict parse
  461 	* hun#2110783 ispell-alike verbose mode implementation
  462 
  463 2010-03-03 Németh László <nemeth at OOo>:
  464 	* hunspell/(affixmgr, suggestmgr).cxx: add character sequence
  465 	  support for MAP suggestion, using parenthesized character groups
  466 	  in the syntax, eg. MAP ß(ss).
  467 	* man/hunspell.4, tests/map*: documentation and test files
  468 
  469 2010-02-25 Németh László <nemeth at OOo>:
  470 	* hunspell/hunspell.cxx: add recursion limit for BREAK (fix OOo Issue 106267)
  471 
  472 	* hunspell/hunspell.cxx: fix crash in morphological analysis of
  473 	  capitalized words with ending dashes
  474 
  475 	* affixmgr.cxx: fix morphological analysis of long numbers combined with dash,
  476 	  eg. 45-00000045 (reported by a@freeblog.hu).
  477 
  478 2010-02-23 Caolán McNamara <cmc at OOo>:
  479 	* hun#2314461 improve ispell-alike mode
  480 	* hun#2784983 improve default language detection
  481 	* hun#2812045 fix some compiler warnings
  482 	* hun#2910695 survive missing HOME dir
  483 	* hun#2934195 fix suggestmgr crash
  484 	* hun#2921129 remove unused variables
  485 	* hun#2826164 make sure make check uses the in-tree libhunspell
  486 	* bump toolchain to support --disable-rpath
  487 	* hun#2843984 fix coverity warning
  488 	* hun#2843986 fix coverity warning
  489 	* hun#2077630 add iconv lib
  490 	* make gcc strict-aliasing warning free
  491 	* make cppcheck warning free
  492 
  493 2008-11-01 Németh László <nemeth at OOo>:
  494 	* replist.*, hunspell.cxx, affixmgr.cxx: new input and output
  495           conversion support, see ICONV and OCONV keywords in the Hunspell(4)
  496           manual page and the test examples. The input/output conversion
  497           problem of syllabic languages reported by Daniel Yacob and
  498           Shewangizaw Gulilat.
  499         - tests/{iconv,oconv}.*: test examples
  500 
  501 	* tools/wordforms: word generation script for dictionary developers
  502           (Hunspell version of the unmunch program)
  503 
  504 	* hunspell/hunspell.cxx: extended BREAK feature: ^ and $ mean in break
  505           patterns the beginning and end of the word.
  506 	- tests/BREAK.*: modified examples.
  507 
  508 	* hunspell/hunspell.cxx: set default break at hyphen characters. 
  509 	  The associated problem reported by S Page in Hunspell Bug 2174061.
  510           See Mozilla Bug ID 355178 and OOo Issue 64400, too.
  511 	- tests/breakdefault.*: test data
  512 	  The following definition is equivalent of the default word break:
  513 
  514 	  BREAK 3
  515           BREAK -
  516           BREAK ^-
  517           BREAK -$
  518 
  519 	* affixmgr.cxx: SIMPLIFIEDTRIPLE is a new affix file keyword to allow
  520           simplified forms of the compound words with triple repeating letters.
  521 	  It is useful for Swedish and Norwegian languages.
  522  
  523 	* affixmgr.cxx: extend CHECKCOMPOUNDPATTERN to support
  524           alternations of compound words for example by sandhi
  525           feature of Indian and other languages. The problem reported
  526           by Kiran Chittella associated with Telugu writing system
  527           (see Telugu example in tests/checkcompoundpattern4.test).
  528           The new optional field of CHECKCOMPOUNDPATTERN definition is the
  529           replacement of the compound boundary defined by the previous fields:
  530 	  CHECKCOMPOUNDPATTERN ff f ff
  531 	  means ff|f compound boundary has been replaced by "ff", like in
  532           the (prereform) German Schiffahrt (Schiff+fahrt).
  533         - CHECKCOMPOUNDPATTERN supports also optional flag conditions now:
  534 	  CHECKCOMPOUNDPATTERN ff/A f/B ff
  535           means that the first word of the compound needs flag "A" and
  536           the second word of the compound needs flag "B" to the operation.
  537 
  538 	* tools/hunspell.cxx: add empty lines as separators to the output of
  539           the stemming and morphological analysis.
  540 
  541 	* affixmgr.cxx: fix condition checking algorithm. Bad suggestion
  542           generation reported by Mehmet Akin in SF.net Bug 2124186 with help of
  543           Eleonora Goldman.
  544 
  545 	* affixmgr,cxx: fix COMPOUNDWORDMAX feature. The problem and its
  546           code details reported by Göran Andersson under SF.net Bug ID 2138001.
  547 
  548 	* csutil.cxx: fix bad conditional code for Mozilla compilation.
  549           Patch by Serge Gautherie. The problem reported by Ryan VanderMeulen.
  550 
  551 	* hunspell/hunspell.cxx: add missing ngram suggestion for HUHINITCAP
  552           (capitalized mixed case) words.
  553 
  554 	* w_char.hxx: use GCC conditions for GCC related code. Patch by
  555           Ryan VanderMeulen.
  556 
  557 	* affixmgr.cxx: check morphological description in morphgen()
  558 	  (fix potential program fault by incomplete morphological
  559 	   description of affix rules)
  560 
  561 	* src/win_api: config.h: switch on warning messages on Windows
  562 
  563 	* tools/affixcompress: extended help for -h (use LC_ALL=C sort
  564           for input word list)
  565 
  566 	* man/hunspell.4: updated manual:
  567         - new and modified features (SIMPLIFIEDTRIPLE, ICONV, OCONV,
  568           BREAK, CHECKCOMPOUNDPATTERN).
  569         - note about costs of zero affixes, suggested by Olivier Ronez.
  570 
  571 	* hunspell/hunspell.cxx: remove deprecated word breaking codes.
  572 
  573 2008-08-15 Németh László <nemeth at OOo>:
  574 	* affentry.cxx: add FULLSTRIP option. With FULLSTRIP, affix rules can
  575 	  strip full words, not only one less characters. Suggested by
  576 	  Davide Prina and other developers in OOo Issue 80145.
  577 	* tests/fullstrip.*: Test data based on Davide Prina's example.
  578 	* tools/unmunch.cxx: modified for FULLSTRIP.
  579 
  580 	* affixmgr.cxx: COMPOUNDRULE now works with long and numerical flag
  581 	  types by parenthesized flags. Syntax: (flag)*, (flag)(flag)?(flag)*.
  582 	* tests/compoundrule[78].*: tests with parenthesized COMPOUNDRULE
  583 	  definitions.
  584 
  585 	* suggestmgr.cxx: modified badchar*(), forgotchar*() and extrachar*()
  586 	  1-character distance suggestion algorithms: search a TRY character
  587 	  in all position instead of all TRY characters in a character position
  588 	  (it can give more readable suggestion order, also better suggestions
  589 	  in the first positions, when TRY characters are sorted by frequency.)
  590 	  For example, suggestions for "moze":
  591 	  ooze, doze, Roze, maze, more etc. (Hunspell 1.2.6),
  592 	  maze, more, mote, ooze, mole etc. (Hunspell 1.2.7).
  593 
  594 	* suggestmgr.cxx: extended compound word checking for better COMPOUNDRULE
  595 	  related suggestions, for example English ordinal numbers: 121323th ->
  596 	  121323rd (it needs also a th->rd REP definition).
  597 
  598 	* phonet.cxx: cast unsigned char parameter of isdigit() and fix
  599 	  isalpha by myisalpha() (potential problems in Windows environment).
  600 	  Reported by Thomas Lange in OOo Issue 92736.
  601 
  602 	* hunspell/csutil.*,hunspell/{affentry,affixmgr,hunspell,suggestmgr}.cxx:
  603 	  fix potential buffer overloading under morphological analysis by the
  604 	  new mystrcat() function. Reported by Molnár Andor (dolhpy at true
  605 	  dot hu) in SF.net Bug 2026203.
  606 
  607 	* affixmgr.cxx: add recursion limit to defcpd(). Fix OOo Issue 76067:
  608 	  crash-like deceleration by checking hexadecimal numbers with long FFF
  609 	  sequence (combinatory explosion by the en_US words "f" and "ff").
  610 	  Missing fix reported by Mathias Bauer.
  611 
  612 	* affixmgr.cxx: fix the difference in the Unicode and non-Unicode
  613 	  parts of cpdcase_check(). Bug report by Brett Wilson.
  614 
  615 	* filemgr.*, affixmgr.cxx, csutil.*, hashmgr.*: warning messages now
  616 	  contain line numbers (use --with-warnings configure option for
  617 	  warning messages).
  618 
  619 	* hunspell.cxx: analyze(): fix case conversion of stemming and
  620 	  morphological analysis of UTF-8 encoded input. Reported by Ferenc Godó.
  621 
  622 	* tools/hunspell.cxx: fix LaTeX Unicode support in filter mode.
  623 	  Reported by Jan Seeger in SF.net Bug 2039990.
  624 
  625 	* affixmgr.hxx: 0.5 or in 64 bit environment, 1 MB (virtual) memory
  626 	  saving using only the requested size for sFlag and pFlag arrays.
  627 	  Bug report by Brett Wilson.
  628 
  629 	* affixmgr.cxx,tools/hunspell.cxx: get_version() returns with full
  630 	  VERSION affix parameter instead of its first word. Fixes for
  631 	  Hunspell's header. Some problems with Hunspell header reported in
  632 	  SF.net Bug 2043080.
  633 
  634 2008-07-15 Németh László <nemeth at OOo>:
  635 	* affentry.cxx: fixes of the affix rule matching algorithm (affected
  636 	  only the sk_SK dictionary from all OpenOffice.org dictionaries):
  637 	- fix dot pattern + accented letters matching (in non Unicode encoding)
  638 	- word-length conditions work again
  639 	* tests/condition.*: extended test for the fix.
  640 
  641 	* hashmgr.cxx: load multiword expressions: spaces may be parts
  642 	  of the dictionary words again (but spaces also work as morphological
  643 	  field separators: word word2 -> "word word2", word po:noun -> "word").
  644 	* man/hunspell.4: updated manual
  645 
  646 	* tools/hunspell.cxx: add iconv character conversion support to
  647 	  stemming and morphological analysis
  648 
  649 	* tools/hunspell.cxx: add /usr/share/myspell/dicts search path for
  650 	  Ubuntu support
  651 
  652 2008-07-09 Németh László <nemeth at OOo>:
  653         * affentry.cxx: fixes of the affix rule matching algorithm:
  654 	- right ASCII character handling in bracket expression;
  655 	- fault-tolerant nextchar() for bad rules.
  656           Problem with the en_GB dictionary and nextchar() with a detailed
  657 	  code analysis reported by John Winters in SF.net Bug ID 2012753.
  658 	* tests/condition.*: extended test for the fix.
  659 
  660 	* hunspell/hunspell.*, parsers/*, tools/hunspell.cxx: fix compiler
  661 	  warnings (deprecated const-free char consts)
  662 
  663 	* win_api/hunspelldll.*: add hunspell_free_list(), the problem
  664 	  reported by Laurier Mercer.
  665 
  666 2008-06-30 Török László <torok_laszlo at users dot SF dot net>:
  667 	* tests/affixmgr.cxx: fix morphological analysis: strcat() on
  668 	  an uninitialized char array in suffix_check_morph(). 
  669 
  670 2008-06-18 Németh László <nemeth at OOo>:
  671         * src/hunspell/affixmgr.cxx: fix GCC compiler warnings
  672           (comparisons with string literal results in unspecified behaviour).
  673           The problem reported by Ladislav Michnovič.
  674 
  675 2008-06-17 Németh László <nemeth at OOo>:
  676         * src/hunspell/{hunspell.cxx,hunspell.h}: add free_list() to the C and
  677           C++ interface to deallocate suggestion lists. The problem
  678           reported by Laurie Mercer and Christophe Paris.
  679         * csutil.cxx: fix freelist() to deallocate non-NULL list, when n = 0.
  680         * tools/{analyze,example,chmorph,hunspell}.cxx: use free_list().
  681 
  682         * tools/hunspell.cxx: fix only --with-readline compiling problem.
  683           Reported by Volkov Peter in SF.net Bug 1995842.
  684           
  685         * man/hunspell.3,hunspell.hxx: fix analyze and generate examples in
  686           the manual and comments (using char*** parameter instead of char**).
  687         
  688         * tools/example.cxx: fix suggestion example.
  689 
  690 2008-06-17 Németh László <nemeth at OOo>:
  691         * affentry.cxx: fix the new affix rule matching algorithm of
  692           Hunspell 1.2. Arabic dictionary problem reported by Khaled Hosny
  693           in SF.net Bug ID 1975530. Mohamed Kebdani also sent a
  694           prepared test data.
  695         * tests/{1975530,condition*}: tests for the fix
  696 
  697 2008-06-13 Ingo H. de Boer <idb_winshell at SF.net>:
  698         * src/hunspell/{affixmgr.cxx,hunspell.cxx}: add missing type 
  699           cast to strstr() calls for VC8 compatibility.
  700 
  701 2008-06-13 Németh László <nemeth at OOo>:
  702         * suggestmgr.cxx: add also part1-part2 suggestion with dash
  703           for bad part1part2 word forms, suggested by Ruud Baars.
  704           For example, now suggestion of "parttime": "part time"
  705           and "part-time".          
  706           NOTE: this feature will work only when the TRY definition
  707           contains "-" or the letter "a".
  708 
  709         * hunspell.cxx: new XML API in spell() and suggest() (see hunspell(3)).
  710 
  711         * src/hunspell/*: fixes for OpenOffice.org build environment.
  712 
  713         * man/{hunspell.3,hzip.1,hunzip.1}: add new manual pages for
  714           Hunspell programming API and dictionary compression and
  715           encryption utilities.
  716           
  717         * src/hunspell/*: handle failed mystrdup() calls and other potential
  718           insufficient memory problems. The problem reported by Elio Voci
  719           in OpenOffice.org Issue 90604 and others.
  720 
  721         * src/tools/affixmgr.cxx: restore original behaviour of get_wordchars
  722           without conditional code. Problem reported by Ingo H. de Boer
  723           in SF.net Bug 1763105.
  724 
  725         * win_api/hunspelldll.h: put_word() renamed to add() in the (old)
  726           Windows DLL API bug reported in SF.net Bug 1943236. Also reported
  727           by Bartkó Zoltán.
  728   
  729         * tools/hunspell.cxx: fix chench() for environments without
  730           native language support (ENABLE_NLS 0 in config.h),
  731           PHP system_exec() bug reported by Michel Weimerskirch in
  732           SF.net Bug 1951087.
  733         
  734         * hunspell.cxx, affixmgr.cxx: remove "result" from the
  735           (result && *result) conditions, when "result" is a static variable.
  736           The problem and a possible solution reported by Ladislav Michnovič.
  737 
  738         * affixmgr.cxx: parse_affix(): print line instead of NULL in
  739           the warning message, when affix class header is bad.
  740           The problem reported by Ladislav Michnovič.
  741 
  742 2008-06-01 Christian Lohmaier <cloph at OOo>
  743         * configure.ac: patch to fix --with-readline, --with-ui logic.
  744           Reported in the SF.net Bug 981395.
  745 
  746 2008-05-04: Volkov Peter <volkov_peter at users sourceforge net>
  747         * configure.ac: fix LibTool 2.22 incompatibility by removing
  748           unused LT_* macros. Report and patch in SF.net Bug 1957383.
  749           The problem reported and fixed by Ladislav Michnovič, too.
  750 
  751 2008-04-23: Ladislav Michnovič <lmichnovic at suse cz>
  752         * hunspell.pc.in: fix wrongly set directories.
  753 
  754 2008-04-12 Németh László <nemeth at OOo>:
  755         * src/tools/hunspell.cxx: 
  756         - Multilingual spell checking and special dictionary support with -d.
  757           Multilingual spell checking suggested by Khaled Hosny (SF.net
  758           Bug 1834280). Example for the new syntax:
  759           
  760           -d en_US,en_geo,en_med,de_DE,de_med
  761           
  762           en_US and de_DE are base dictionaries, and en_geo, en_med, de_med
  763           are special dictionaries (dictionaries without affix file).
  764           Special dictionaries are optional extension of the base dictionaries.
  765           There is no explicit naming convention for special dictionaries,
  766           only the ".dic" extension: dictionaries without affix file will
  767           be an extension of the preceding base dictionary. First dictionary
  768           in -d parameter must have an affix file (it must be a base
  769           dictionary).
  770 
  771         - new options for debugging, morphological analysis and stemming:
  772           -m: morphological analysis or flag debug mode (without affix
  773           rule data it signs the flag of the affix rules)
  774           -s: stemming mode
  775           -D: show also available dictionaries and search path
  776               (suggested by Aaron Digulla in SF.net Bug 1902133)
  777 
  778         - add missing refresh() to print bad words before the slower suggestion
  779           search in UI (better user experience)
  780           
  781         - fix tabulator problems (reported by ugli-kid-joe AT sf DOT net)
  782 
  783         - fix different encoding of dic and input, and suggestions
  784 
  785         - add per mille sign to LANG hu_HU section.
  786 
  787         - rewrite program messages. Concatenating multiple printfs for
  788           easier translation suggested by András Tímár and Gábor Kelemen.
  789 
  790         * src/hunspell/csutil.cxx: set static encds variable. Patch by
  791           Rene Engerhald. SF.net Bug 1896207 and 1939988.
  792         
  793         * src/hunspell/w_char.hxx,csutil.hxx: reorganizing
  794           w_char typedef and HENTRY_DATA, HENTRY_FIND consts
  795 
  796         * src/hunspell/hunzip.cxx: fopen(): using rb options instead of r (fix
  797           for Windows)
  798           
  799         * src/tools/affixmgr.cxx: restore original behaviour of get_wordchars
  800           in an #ifdef WINSHELL section. Problem reported by Ingo H. de Boer
  801           in SF.net Bug 1763105.
  802 
  803         * src/tools/chmorph.cxx: remove the experimental modifications
  804 
  805         * src/tools/hzip.c: fopen(): using wb options instead of w (fix
  806           for Windows)
  807 
  808         * src/tools/hunzip.cxx: add missing MOZILLA_CLIENT. Reported
  809           by Ryan VanderMeulen.
  810 
  811         * man/*, man/hu/*: updated manual
  812 
  813         * man/hunspell.4: fix formatting problem (missing header)
  814         
  815         * tools/makealias: now works with the extra data fields.
  816 
  817         * phonet.cxx: use HASHSIZE const
  818 
  819         * tests/rep.aff: fix REP count
  820         
  821         * src/win_api/Makefile.cygwin, README: native Windows compilation
  822           in Cygwin environment without cygwin1.dll dependency (see README
  823           for compiling instructions).
  824 
  825 2008-04-08 Roland Smith <rsmith AT xs4all DOT nl>:
  826         * src/parsers/latexparser.cxx: fix PATTERN_LEN for AMD64 and
  827           other platforms with different struct padding (SF.net Bug 1937995).
  828 
  829 2008-04-03 Kelemen Gábor <kelemeng AT gnome DOT hu>:
  830         * po/POTFILES.in: fix path of the source file
  831 
  832         * po/Makevars: add --from-code=UTF-8 gettext option 
  833         
  834         * hunspell.cxx: add comments for shortkey translation
  835 
  836 2008-02-04 Flemming Frandsen <flfr AT stibo DOT com>
  837         * src/hunspell.h: fix Windows DLL support
  838         - this patch also reported by Zoltán Bartkó.
  839 
  840 2008-01-30 Mark McClain <marc_mcclain AT users DOT sf DOT net>
  841         * src/hunspell.cxx: stem(): fix function call side effect
  842           for PPC platform (SF.net Bug 1882105).
  843 
  844 2008-01-30 Németh László <nemeth at OOo>:
  845         * hunspell.cxx, csutil.cxx, hunspelldll.c: fix
  846           SF.et Bug 1851246, patch also by Ingo H. de Boer.
  847 
  848         * hunspell.h: fix SF.net Bug 1856572 (C prototype problem),
  849           patch by Mark de Does.
  850 
  851         * hunspell.pc.in: fix SF.net Bug 1857450 wrong prefix, reported
  852           by Mark de Does.
  853 
  854         * hunspell.pc.in: reset numbering scheme: libhunspell-1.2.
  855           Fix SF.net Bug 1857512 reported by Mark de Does,
  856           also by Rene Engelhard.
  857 
  858         * csutil.cxx: patches for ARM platform, signed_chars.dpatch
  859           by Rene Engelhard and arm_structure_alignment.dpatch by
  860           Steinar H. Gunderson <sesse@debian.org>
  861 
  862         * hunzip.*, hzip.c: new hzip compression format
  863 
  864         * tools/affixcompressor: affix compressor utility (similar to
  865           munch, but it generates affix table automatically), works
  866           with million-words dictionaries of agglutinative languages.
  867 
  868         * README: fix problems reported by Pham Ngoc Khanh.
  869 
  870         * csutil.cxx, suggestmgr: Warning-free in OOo builds.
  871 
  872         * hashmgr.*, csutil.*: fix protected memory problems with
  873           stored pointers on several not x86 platforms by
  874           store_pointer(), get_stored_pointer().
  875 
  876         * src/tools/hunspell.cxx: fix iconv support on Solaris platform.
  877 
  878         * tests/IJ.good: add missing test file
  879 
  880         * csutil.cxx: fix const char* related errors. Compiling bug
  881           with Visual C++ reported by Ryan VanderMeulen and Ingo H. de Boer.
  882 
  883 2008-01-03 Caolan McNamara <cmc at OO.o>:
  884         * csutil.cxx: SF.net Bug 1863239, notrailingcomma patch and
  885           optimization of get_currect_cs().
  886 
  887 2007-11-01 Németh László <nemeth at OOo>:
  888         * hunspell/*: new feature: morphological generation,
  889           also fix experimental morphological analysis and stemming.
  890         - new API functions and improved API:
  891             - analyze(word): (instead of morph()) morphological analysis
  892             - stem(word): stemming
  893             - stem(list): stemming based on the result of an analysis
  894             - generate(word, word2): morphological generation 
  895             - generate(word, list): morphological generation 
  896             - add(word): add word to the run-time dictionary (renamed put_word())
  897             - add_with_affix(word, word2): (renamed put_word_pattern()):
  898               add word to the run-time dictionary with affix flags of the
  899               second parameter: all affixed forms of the user words will be
  900               recognised by the spell checker. Especially useful for
  901               agglutinative languages.
  902 	    - remove(word): remove word from the run-time dictionary (not
  903 	      implemented)
  904         - see manual and hunspell/hunspell.hxx header and tests/morph.*
  905         * tests/morph.*: test data, example for morphological analysis,
  906           stemming and generation
  907 
  908         * tools/analyze, tools/chmorph: extended and new demo applications:
  909         - analyze (originally hunmorph): analyses and stems input words,
  910           generates word forms from input word pairs.
  911         - chmorph: morphological transformation filter
  912 
  913         * configure.ac, hunspell/makefile.am: set library version number.
  914           Bug reported by Rene Engelhard.
  915 
  916         * affentry.cxx, affixmgr.cxx: new pattern matching algorithm in
  917           condition checking of affix rules instead of the Dömölki-algorithm:
  918         - Unlimited condition length (instead of max. 8 characters).
  919         - Less memory consumption, especially useful for affix rich languages:
  920           5,4 MB memory savings with hu_HU dictionary.
  921         - Speed change depends from dictionaries and CPU caches: English spell
  922           checking is 4% faster on Linux words with en_US dictionary, Hungarian
  923           spell checking is 25% slower on most frequent words of Hungarian
  924           Webcorpus.
  925 
  926         * tests/sug.*, sugutf.*: updated test data (use "a" and "lot"
  927           dictionary items instead of "a lot".)
  928 
  929         * src/hunspell/hunspell.cxx: free(csconv) instead of delete csconv.
  930           Report and patch by Sylvain Paschein in Mozilla Issue 398268.
  931 
  932         * suggestmgr.cxx, tools/hunspell.cxx: bad spelling of "misspelled".
  933           Ubuntu Bug #134792, patch by Malcolm Parsons.
  934 
  935         * tests/base_utf.*: use Unicode apostrophe instead of 8-bit one.
  936         
  937         * hunspell.cxx, hashmgr.cxx: add(): use HashMgr::add()
  938 
  939 2007-10-25 Pavel Janík <pjanik at OOo>:
  940 	* hunspell/csutil.cxx: Fix type cast warnings on 64bit Linux in
  941 	  printing of character positions in u8_u16(). OOo issue 82984.
  942 
  943 2007-09-05 Németh László <nemeth at OOo>:
  944 	* win_api/Hunspell.vproj, parsers/testparser.cxx,textparser.hxx:
  945 	  warning fixes and removing unnecessary Windows project file.
  946 	  Reported by Ingo H. de Boer.
  947 
  948 	* hashmgr.*, {affixmgr,suggestmgr}.cxx: optimized data structure
  949 	  for variable-count fields (only "ph" transliteration field in
  950 	  this version, see next item). Also less memory consumption:
  951 	  -13% (0.75 MB) with en_US dictionary, -6% (1 MB) with hu_HU.
  952 
  953 	* suggestmgr.cxx: dictionary based phonetic suggestion for special
  954 	  or foreign pronounciation (see also rule-based PHONE in manual).
  955 	  Usage: tab separated field in dictionary lines, started with "ph:".
  956 	  The field contains a phonetic transliteration of the word:
  957 
  958 Marseille	ph:maarsayl
  959 	* tests/phone.*: test data for dictionary and rule based phonetic
  960 	  suggestion.
  961 
  962 	* hunspell.cxx: fix potential bad memory access in allcap word
  963 	  capitalization in suggest() (bug of previous version).
  964 
  965 	* hunspell.cxx, atypes.hxx: set correct limit for UTF-8 encoded
  966 	  input words (256 byte).
  967 
  968 	* suggestmgr.cxx: improved REP suggestions with spaces: it works
  969 	  without dictionary modification.
  970 	  OOo issue 80147, reported by Davide Prina.
  971 	* tests/rep.*: new test data: higher priority for "alot" -> "a lot",
  972 	  and Italian suggestion "un'alunno" -> "un alunno".
  973 
  974 	* affixmgr.cxx: fix Unicode ngram suggestions in expand_rootword().
  975 	  (Suggestions with bad affixes.)
  976 	  Bug reported by Vitaly Piryatinksy <piv dot v dot vitaly at gmail>.
  977 	* tests/ngram_utf_fix.*: test based on Vitaly Piryatinksy's data.
  978 
  979 	* suggestmgr.cxx: fix twowords() for last UTF-8 multibyte character.
  980 	  (conditional jump or move depended on uninitialised value).
  981 
  982 2007-08-29 Ingo H. de Boer <idb_winshell at SF.net>:
  983 	* win_api/{hunspell,libhunspell, testparser}.vcproj: new project
  984 	  files for the library and the executables.
  985 	
  986 	* Hunspell.rc, Hunspell.sln, config.h: updated versions.
  987 	  Version number problem also reported by András Tímár.
  988 
  989 2007-08-27 Németh László <nemeth at OOo>:
  990 	* suggestmgr.hxx: put fixed version. Bug report by Ingo H. de Boer.
  991 
  992 	* suggestmgr.cxx: remove variable-length local character array
  993 	  reported by Ingo H. de Boer.
  994 
  995 2007-08-27 Németh László <nemeth at OOo>:
  996 	* suggestmgr.hxx: change bad time_t to clock_t in header, too.
  997 	  Bug reports or patches by Ingo H. de Boer under SF.net
  998 	  Bug ID 1781951, János Mohácsi and Gábor Zahemszky, András Tímár,
  999 	  OMax3 at SF.net under SF.net Bug ID 1781592.
 1000 
 1001 	* phonet.*: change variable-length local character array to
 1002 	  portable fixed size character array. Problem reported by
 1003 	  Ingo H. de Boer under SF.net Bug ID 1781951 and
 1004 	  Ryan VanderMeulen.
 1005 
 1006 	* suggestmgr.cxx: remove debug message (also by
 1007 	  Ingo H. de Boer).
 1008 
 1009 2007-08-26 Ingo H. de Boer <idb_winshell at SF.net>:
 1010 	* win_api/Hunspell.vcproj: updated version (with phonet.*)
 1011 
 1012 2007-08-23 Németh László <nemeth at OOo>:
 1013 	* phonet.{c,h}xx, suggestmgr.cxx: PHONE parameter:
 1014           pronounciation based suggestion using Björn Jacke's original Aspell
 1015           phonetic transcription algorithm (http://aspell.net), relicensed
 1016           under GPL/LGPL/MPL tri-license with the permission of the author.
 1017           Usage: see manual.
 1018 
 1019 	* affixmgr,suggestmgr.cxx: add KEY parameter for keyboard and
 1020 	  input method error related suggestions.
 1021 	  Example: KEY qwertyuiop|asdfghjkl|zxcvbnm
 1022 
 1023 	* man/hunspell.4: description about PHONE and KEY suggestion parameters.
 1024 
 1025 	* suggestmgr.cxx: enhancements for better suggestions:
 1026 	- Set ngram suggestions for badchar-type errors
 1027 	  and only two word and compound word suggestions, too.
 1028         - Separate not compound and compound word
 1029 	  suggestions for MAP suggestion, too.
 1030 	- Double swap suggestions for short words.
 1031 	  For example: ahev -> have, hwihc -> which.
 1032         - Better time limits using clock() instead of time()
 1033           (tenths of a second resolution instead of second ones).
 1034         - leftcommonsubstring() weigth function.
 1035 
 1036 	* htype.hxx, hashmgr.cxx: blen (byte length) and clen (character
 1037 	  length) fields instead of wlen
 1038 	  
 1039 	* affixmgr.cxx: fix get_syllable() for bad Unicode inputs.
 1040 	
 1041 	* tests/suggestiontest/*: test environment for suggestions
 1042 
 1043 2007-08-07 Martijn Wargers:
 1044 	* csutil.cxx: fix Mingw build error associated with ToUpper() call.
 1045 	  Report and patch in Mozilla Issue 391447.
 1046 
 1047 2007-08-07 Robert Longson:
 1048 	* atypes.cxx: use empty inline function HUNSPELL_WARNING instead of
 1049 	  variadic macros to switch of Hunspell warnings.
 1050 	  Reported by Gavin Sharp in Mozilla Issue 391147.
 1051 
 1052 2007-08-05 Ginn Chen:
 1053 	* hashmgr.cxx: Hunspell failed to compile on OpenSolaris (use stdio
 1054           instead of csdio). Report and patch in Mozilla Issue 391040.
 1055 
 1056 2007-07-25 Németh László <nemeth at OOo>:
 1057 	* parsers/*.cxx: Hunspell executable recognises and accepts URLs,
 1058 	  e-mail addresses, directory paths, reported by Jeppe Bundsgaard.
 1059 	* src/tools/hunspell.cxx: --check-url: new option of Hunspell program.
 1060 	  Use --check-url, if you want check URLs, e-mail addresses and paths.
 1061 
 1062 	* parsers/textparser.cxx: strip colon at end of words for Finnish
 1063 	  and Swedish (colon may be in words in Finnish and Swedish).
 1064 	  Problem reported by Lars Aronsson.
 1065 	* tests/colons_in_words.*: test data
 1066 
 1067 	* tests/digits_in_words.*: example for using digits in words
 1068  	  (eg. 1-jährig, 112-jährig etc. in German), reported by Lars Aronsson.
 1069 
 1070 	* hashmgr.cxx: Hunspell accepts allcaps forms of mixed case
 1071 	  words of personal dictionaries (+allcaps custom dictionary words with
 1072 	  allcaps affixes).
 1073 	  Sf.net Bug ID 1755272, reported by Ellis Miller.
 1074 
 1075 	* hashmgr.cxx: fix small memory leaks with alias compressed
 1076 	  dictionaries (free flag vectors of affixed personal dictionary words
 1077 	  and flag vectors of hidden capitalized forms of mixed case and
 1078 	  allcaps words).
 1079 
 1080 	* affixmgr.cxx: fix COMPOUNDRULE checking with affixed compounds.
 1081 	  Sf.net Bug ID 1706659, reported by Björn Jacke. Also fixing for
 1082 	  OOo Issue 76067 (crash-like deceleration for hexadecimal numbers
 1083 	  with long FFFFFF sequence using en_US dictionary).
 1084 
 1085 	* tools/hunspell.cxx: add missing return to save_privdic().
 1086 	
 1087 	* man/hunspell.4: add information about affixation of personal words:
 1088 	"Personal dictionaries are simple word lists, but with optional
 1089          word patterns for affixation, separated by a slash:
 1090 
 1091          foo
 1092          Foo/Simpson
 1093 
 1094          In this example, "foo" and "Foo" are personal words, plus Foo
 1095          will be recognised with affixes of Simpson (Foo's etc.)."
 1096 
 1097 2007-07-18 Németh László <nemeth at OOo>:
 1098 	* src/win_api/: add missing resource files, reported by Ingo H. de Boer.
 1099 
 1100 2007-07-16 Németh László <nemeth at OOo>:
 1101 	* hunspell.cxx: fix dot removing from UTF-8 encoded words in cleanword2()
 1102 	  (Capitalised words with dots, as "Something." were not recognised
 1103 	  using Unicode encoded dictionaries.)
 1104 	* tests/{base.*,base_utf.*}: extended and new test files for
 1105 	  dot removing and Unicode support.
 1106 	
 1107 	* tools/hunspell.cxx: fix Cygwin, OS X compatibility using platform
 1108 	  specifics iconv() header by ICONV_CONST macro of Autoconf.
 1109 	  Sf.net Bug ID 1746030, reported by Mike Tian-Jian Jiang.
 1110 	  Sf.net Bug ID 1753939, reported by Jean-Christophe Helary.
 1111 
 1112 	* tools/hunspell.cxx: fix missing global path setting with -d option.
 1113 
 1114 	* tests/test.sh: fix broken Valgrind checking (missing warnings
 1115 	  with VALGRIND=memcheck make check).
 1116 
 1117 	* csutil.cxx: fix condition in u8_u16() to avoid invalid read
 1118 	  of not null-terminated character arrays (detected by Valgrind
 1119 	  in Hunspell executable: associated with 8-bit character table
 1120 	  conversion in tools/hunspell.cxx).
 1121 
 1122 	* csutil.cxx: free_utf_tbl(): use utf_tbl_count-- instead of utf_tbl--.
 1123 	  Memory leak in Hunspell executable detected by Valgrind.
 1124 	  
 1125 	* hashmgr.cxx: add missing free_utf_tbl(), memory leak in Hunspell
 1126 	  executable detected by Valgrind.
 1127 
 1128 	* hashmgr.cxx: load_tables(): fix memory error in spec. capitalization.
 1129 	  Use sizeof(unsigned short) instead of bad sizeof(unsigned short*).
 1130 	  Invalid memory read detected by Valgrind.
 1131 
 1132 	* hashmgr.cxx: add_word(): fix memory error in spec. capitalization.
 1133 	  Update also affix array length of capitalized homonyms. Invalid
 1134 	  memory read detected by Valgrind.
 1135 
 1136 	* hunspell.cxx: suggest(): fix invalid memory write and leak.
 1137 	  Bad realloc() and missing free() detected by Valgrind associated
 1138           with suggestions for "something.The" type spelling errors.
 1139 
 1140 	* {dictmgr,csutil,hashmgr,suggestmgr}.cxx: check memory allocation.
 1141 	  Sf.net Bug ID 1747507, based on the patch by Jose da Silva.
 1142 
 1143 2007-07-13 Ingo H. de Boer <idb_winshell at SF.net>:
 1144 	* atypes.cxx: fix Visual C compatibility: Using
 1145 	"HUNSPELL_WARNING(a,b,...} {}" macro instead of empty "X(a,b...)".
 1146 	
 1147 	* hunspell.cxx: changes for Windows API.	
 1148 	* win_api/Hunspell.*: new resource files
 1149 	* win_api/hunspelldll.*: set optional Hunspell and Borland spec. codes
 1150 	Sf.net Bug ID 1753802, patch by Ingo H. de Boer.
 1151 	See also Sf.net Bug ID 1751406, patch by Mike Tian-Jian Jiang.
 1152 
 1153 2007-07-09 Caolan McNamara <cmc at OO.o>:
 1154 	* {hunspell,hashmgr,affentry}.cxx: fix warnings of Coverity program
 1155 	  analyzer. Sf.net Bug ID, 1750219.
 1156 
 1157 2007-07-06 Németh László <nemeth at OOo>:
 1158 	* atypes.cxx: warning-free swallowing of conditional warning messages
 1159 	  and their parameters using empty HUNSPELL_WARNING(a,b...) macro.
 1160 	* {affixmgr,atypes,csutil}.cxx: fix unused variable warnings
 1161 	  using WARNVAR macro for conditionally named variables.
 1162 	* hashmgr.cxx: fix unused variable warning in add_word() by cond. name
 1163 	* hunspell.cxx: fix shadowed declaration of captype var. in suggest()
 1164 
 1165 2006-06-29 Caolan McNamara <cmc at OO.o>: 
 1166 	* hunspell.cxx: patch to fix possible memory leak in analyze() of
 1167 	  experimental morphological analyzer code. Sf.net Bug ID 1745263.
 1168 
 1169 2007-06-29 Németh László <nemeth at OOo>:
 1170 improvements:
 1171 	* src/hunspell/hunspell.cxx: check bad capitalisation of Dutch letter IJ.
 1172 	- Sf.net Feature Request ID 1640985, reported by Frank Fesevur.
 1173 	- Solution: FORBIDDENWORD for capitalised word forms (need
 1174 	  an improved Dutch dictionary with forbidden words: Ijs/*, etc.).
 1175 	* tests/IJ.*: test data and example.
 1176 
 1177 	* hashmgr.cxx, hunspell.cxx: check capitalization of special word forms
 1178 	- words with mixed capitalisation: OpenOffice.org - OPENOFFICE.ORG
 1179 	  Sf.net Bug ID 1398550, reported by Dmitri Gabinski.
 1180 	- allcap words and suffixes: UNICEF's - UNICEF'S
 1181 	- prefixes with apostrophe and proper names: Sant'Elia - SANT'ELIA
 1182 	  For Catalan, French and Italian languages.
 1183 	  Reported by Davide Prina in OOo Issue 68568.
 1184 	* tests/allcaps*: tests for OPENOFFICE.ORG, UNICEF'S capitalization.
 1185 	* tests/i68568*: tests for SANT'ELIA capitalization.
 1186 
 1187 	* hunspell/hunspell.cxx: suggestion for missing sentence spacing:
 1188 	  something.The -> something. The
 1189 
 1190 	* tools/hunspell.cxx: multiple character encoding support
 1191 	- -i option: custom input encoding
 1192 	  Sf.net Bug ID 1610866, reported by Thobias Schlemmer.
 1193 	  Sf.net Bug ID 1633413, reported by Dan Kenigsberg.
 1194 	  See also hunspell-1.1.5-encoding.patch of Fedora from Caolan Mc'Namara.
 1195 	* tests/*.test: add input encodings
 1196 
 1197 	* tools/hunspell.cxx: use locale data for default dictionary names.
 1198 	  Sf.net Bug ID 1731630, report and patch from Bernhard Rosenkraenzer,
 1199 	  See also hunspell-1.1.4-defaultdictfromlang.patch of Fedora Linux
 1200 	  from Caolan McNamara.
 1201 
 1202 	* tools/hunspell.cxx: fix 8-bit tokenization (letters without
 1203 	  casing, like ß or Hebrew characters now are handled well) 
 1204 
 1205 	* tools/hunspell.cxx: dictionary search path
 1206 	- DICPATH environmental variable
 1207 	- -D option: show directory path of loaded dictionary
 1208 	- automatic detection of OpenOffice.org directories
 1209 
 1210 fixes:
 1211 	* affixmgr.cxx: fault-tolerant patch for REP and other affix
 1212 	  table data problems. Problem with Hunspell and en_GB dictionary
 1213 	  reported by Thomas Lange in OOo Issue 76098 and
 1214 	  Stephan Bergmann in OOo Issue 76100.
 1215 	  Sf.net Bug ID 1698240, reported by Ingo H. de Boer.
 1216 	  
 1217 	* csutil.cxx: fix mkallcap_utf() for allcaps suggestion in UTF-8.
 1218 
 1219 	* suggestmgr.cxx: fix bad movechar_utf() (missing strlen()).
 1220 
 1221 	* hunspell.cxx: fix bad degree sign detection in Unicode
 1222 	  hu_HU environment.
 1223 
 1224 	* hunspell/hunspell.cxx: free allocated memory of csconv in
 1225 	  ported Mozilla code.
 1226 	- Mozilla Bugzilla Bug 383564, report and Mozilla MySpell patch
 1227 	  by Andrew Geul. Reported by Ryan VanderMeulen for Hunspell.
 1228 
 1229 	* suggestmgr.cxx: fix minor difference in Unicode suggestion
 1230 	  (ngram suggestion of allcaps words in Unicode).
 1231 
 1232 	* hashmgr.cxx: close file handle after errors.
 1233 	  Sf.net Bug ID 1736286, reported by John Nisly.
 1234  
 1235 	* configure.ac: syntax error (shell variable with spaces).
 1236 	  Sf.net Bug ID 1731625, reported by Bernhard Rosenkraenzer.
 1237 
 1238 	* hunspell.cxx: check_word(): fix bad usage of info pointer.
 1239 
 1240 	* hashmgr.cxx: fix de_DE related bug (accept words with leading dash).
 1241 	  Sf.net Bug ID 1696134, reported by Björn Jacke.
 1242 
 1243 	* suggestmgr.cxx, tests/1695964.*: fix NEEDAFFIX homonym suggestion.
 1244 	  Sf.net Bug ID 1695964, reported by Björn Jacke.
 1245 
 1246 	* tests/1463589*: capitalized ngram suggestion test data for
 1247 	  Sf.net Bug ID 1463589, reported by Frederik Fouvry.
 1248 
 1249 	* csutil.cxx, affixmgr.cxx: fix possible heap error with
 1250 	  multiple instances of utf_tbl.
 1251 	  Sf.net Bug ID 1693875, reported by Ingo H. de Boer.
 1252 
 1253 	* affixmgr.cxx, suggestmgr.cxx, license.hunspell: convert to ASCII.
 1254 	  Locale dependent compiling problems. Sf.net Bug ID 1694379, reported
 1255 	  by Mike Tian-Jian Jiang. OOo Issue 78018 reported by Thomas Lange.
 1256 
 1257 	* tests/test.sh: compatibility issues
 1258 	- fix Valgrind support (check shared library instead of shell wrapper)
 1259 	- remove deprecated "tail +2" syntax
 1260 	- set 8-bit locale for testing (LC_ALL=C)
 1261 
 1262 	* hunspell.hxx: remove license.* and config.h dependencies.
 1263 	- hunspell-1.1.5-badheader.patch from Caolan McNamara <cmc at OO.o>
 1264 
 1265 2007-03-21 Németh László <nemeth at OOo>:
 1266         * tools/Makefile.am, munch.h, unmunch.h: add missing munch.h and unmunch.h
 1267           Reported by Björn Jacke and Khaled Hosny (sf.net Bug ID 1684144)
 1268         * hunspell/hunspell.cxx, hunspell.hxx: fix --with-ui compliling error (add get_csconv())
 1269           Reported by Khaled Hosny (sf.net Bug ID 1685010)
 1270 
 1271 2007-03-19 Németh László <nemeth at OOo>:
 1272         * csutil.cxx, hunspell/hunspell.cxx: Unicode non BMP area (>65K character range) support
 1273           (except conditional patterns and strip characters of affix rules)
 1274         * tests/utf8_nonbmp*: test data
 1275 
 1276         * src/hunspell/*: add Mozilla patches from David Einstein
 1277         - run-time generated 8-bit character tables
 1278         - other Mozilla related changes (see Mozilla Bugzilla Bug 319778)
 1279 
 1280         * csutil.cxx, affixmgr.cxx, hashmgr.cxx: optimized version of IGNORE feature
 1281         - IGNORE works with affixes (except strip characters and affix conditions)
 1282         * tests/ignore*: test data with latin characters
 1283         * tests/ignoreutf*: Unicode test data with Arabic diacritics (Harakat)
 1284 
 1285         * src/hunspell/suggestmgr.cxx: new edit distance suggestion methods
 1286         - capitalization: nasa -> NASA
 1287         - long swap: permenant -> permanent
 1288         - long mov.: Ghandi -> Gandhi
 1289         - double two characters: vacacation -> vacation
 1290         * tests/sug.*: test data
 1291 
 1292         * src/hunspell/affixmgr.cxx: space in REP strings (alot -> a lot)
 1293           Note: Underline character signs the space in REP strings: REP alot a_lot, and
 1294           put the expression with space ("a lot") into the dic file (see tests/sug).
 1295 
 1296         * hashmgr.cxx, affixmgr.cxx: ignore Unicode byte order mark (BOM sequence)
 1297         * tests/utf8_bom*: test data
 1298 
 1299         * hunspell/*.cxx: OOo Issue 68903 - Make lingucomponent warning-free on wntmsci10
 1300         - fix Hunspell related warning messages on Windows platform (except some assignment
 1301           within conditional expressions). Reported and started by Stephan Bergmann.
 1302 
 1303         * hunspell/affixmgr.cxx: fix OOo Issue 66683 - hunspell dmake debug=x fails
 1304         - Reported by Stephan Bergmann.
 1305 
 1306         * src/hunspell/hunspell.[ch]xx: thread safe API for Hunspell executable
 1307           (removing prev*() functions, new spell(word, info, root) function)
 1308 
 1309         * configure.ac, src/hunspell/*: HUNSPELL_EXPERIMENTAL code
 1310           --with-experimental configure option (conditional compiling of morphological analyser
 1311           and stemmer tools)
 1312 
 1313         * configure.ac, src/hunspell/*: conditional Hunspell warning messages
 1314           --with-warnings configure option
 1315 
 1316         * affixmgr.cxx: new, optimized parsing functions
 1317 
 1318         * affixmgr.cxx: fix homonym handling for German dictionary project,
 1319           reported by Björn Jacke (sf.net Bug ID 1592880).
 1320         * tests/1592880.*: test data by Björn Jacke
 1321 
 1322         * src/hunspell/affixmgr.cxx: fix CIRCUMFIX suggestion
 1323           Bug reported by Erdal Ronahi.
 1324 
 1325         * hunspell.cxx: reverse root word output (complex prefixes)
 1326           Bug reported by Munzir Taha.
 1327 
 1328         * tools/hunspell.cxx: fix Emacs compatibility, patch by marot at sf.net
 1329         - no % command in PIPE mode (SourceForge BugTracker 1595607)
 1330         - fix HUNSPELL_VERSION string
 1331 
 1332         * suggestmgr.[hc]xx: rename check() functions to checkword() (OOo Issue 68296)
 1333           adopt MySpell patch by Bryan Petty (tierra at ooo) for Hunspell source
 1334 
 1335         * csutil.cxx, munch.c, unmunch.c: adopt relevant parts of the MinGW patch
 1336           (OOo Issue 42504) by tonal at ooo
 1337 
 1338         * affigmgr.cxx: remove double candidate_check() call, reported by Bram Moolenaar
 1339 
 1340         * tests/test.sh: add LC_ALL="C" environment. Locale dependency of make check
 1341           reported by Gentoo project.
 1342 
 1343         * src/tools/hunspell.cxx: UTF-8 highlighting fix for console UI
 1344           (not solved: breaking long UTF-8 lines)
 1345 
 1346         * src/tools/unmunch.c: fix bad generation if strip is shorter than condition,
 1347           reported by Davide Prina
 1348         * src/tools/unmunch.h: increase 5000 -> 500000
 1349 
 1350         * src/tools/hunspell.cxx: fix memory error in suggestion (uninitialized parameter),
 1351           Bug also reported by Björn Jacke in SourceForge Bug 1469957
 1352 
 1353         * csutil.cxx, affixmgr.cxx: fix Caolan McNamara's patch for non OOo environment
 1354 
 1355 2006-11-11 Caolan McNamara <cmc at OO.o>: 
 1356         * csutil.cxx, affixmgr.cxx: UTF-8 table patch (OOo Issue 71449)
 1357           Description: memory optimization (OOo doesn't use the large UTF-8 table).
 1358 
 1359         * Makefile.am: shared library patch (Sourceforge ID 1610756)
 1360 
 1361         * hunspell.h, hunspell.cxx: C API patch (Sourceforge ID 1616353)
 1362 
 1363         * hunspell.pc: pkgconfig patch (Sourceforge ID 1639128)
 1364 
 1365 2006-10-17 Ryan Jones <at Mozilla Bugzilla>:
 1366         * affixmgr.cxx: missing fclose(affixlst) calls
 1367           Reported by <gavins at ooo> in OOo Issue 70408
 1368 
 1369 2007-07-11 Taha Zerrouki <taha at gawab>: 
 1370         * affixmgr.cxx, hunspell.cxx, hashmgr.cxx, csutil.cxx: IGNORE feature to remove
 1371           optional Arabic and other characters from input and dictionary words.
 1372         * src/hunspell/langnum.hxx: add Arabic language number, lang_ar=96
 1373         * tests/ignore.*: test data
 1374 
 1375 2006-05-28 Miha Vrhovnik <mvrhov at users.sourceforge>:
 1376         * src/win_api/*: C API for Windows DLLs
 1377         - also Delphi text editor example (see on Hunspell Sourceforge page)
 1378 
 1379 2006-05-18 Kevin F. Quinn <kevquinn at gentoo>:
 1380         * utf_info.cxx: struct -> static struct
 1381           Shared library patch also developed by Gentoo developers (Hanno Meyer-Thurow,
 1382           Diego Pettenò, Kevin F. Quinn)
 1383 
 1384 2006-02-02 Németh László <nemethl@gyorsposta.hu>:
 1385         * src/hunspell/hunspell.cxx: suggest(): replace "fooBar" -> "foo bar" suggestions
 1386           with "fooBar" ->"foo Bar" (missing spaces are typical OCR bugs).
 1387           Bug reported by stowrob at OOo in Issue 58202.
 1388         * src/hunspell/suggestmgr.cxx: twowords(): permit 1-character words.
 1389           (restore MySpell's original behavior). Here: "aNew" -> "a New".
 1390         * tests/i58202.*: test data
 1391 
 1392         * src/parsers/textparser.cxx: fix Unicode tokenization in is_wordchar()
 1393           (extra word characters (WORDCHARS) didn't work on big-endian platforms).
 1394           
 1395         * src/hunspell/{csutil,affixmgr}.cxx: inline isSubset(), isRevSubset():
 1396           little speed optimalization for languages with rich morphology.
 1397 
 1398         * src/tools/hunspell.cxx: fix bad --with-ui and --with-readline compiling
 1399           when (N)curses is missing. Reported by Daniel Naber.
 1400 
 1401 2006-01-19 Tor Lillqvist <tml@novell.com>
 1402         * src/hunspell/csutil.cxx: mystrsep(): fix locale-dependent isspace() tokenization
 1403 
 1404 2006-01-06 András Tímár <timar@fsf.hu>
 1405         * src/hunspell/{hashmgr.hxx,hunspell.cxx}: fix Visual C++ compiling errors
 1406 
 1407 2006-01-05 Németh László <nemethl@gyorsposta.hu>:
 1408         * COPYING: set GPL/LGPL/MPL tri-license for Mozilla integration.
 1409           Rationale: Mozilla source code contains an old MySpell version
 1410           with GPL/LGPL/MPL tri-license. (MPL license is a copyleft license, similar
 1411           to the LGPL, but it acts on file level.)
 1412         * COPYING.LGPL: GNU Lesser General Public License 2.1 (LGPL)
 1413         * COPYING.MPL: Mozilla Public License 1.1 (MPL)
 1414         * license.hunspell, src/hunspell/license.hunspell: GPL/LGPL/MPL tri-license
 1415 
 1416         * src/hunspell/{affixmgr,hashmgr}.*: AF, AM alias definitions in affix file:
 1417           compression of flag sets and morphological descriptions (see manual,
 1418           and tests/alias* test files).
 1419           Rationale: Alias compression is also good for loading time and memory
 1420           efficiency, not only smaller resources.
 1421         * src/tools/makealias: alias compression utility
 1422           (usage: ./makealias file.dic file.aff)
 1423         * tests/alias{,2,3}: AF, AM tests
 1424         * man/hunspell.4: add AF, AM documentation
 1425         * src/hunspell/affentry.cxx, atypes.hxx: add new opts bits (aeALIASM, aeALIASF)
 1426 
 1427         * tools/hunspell, src/parser/*, src/hunspell/*: Hunspell program
 1428           tokenizes Unicode texts (only with UTF-8 encoded dictionaries).
 1429           Missing Unicode tokenization reported by Björn Jacke, Egmont Koblinger, 
 1430           Jess Body and others.
 1431           Note: Curses interactive interface hasn't worked perfectly yet.
 1432         * tests/*.tests: remove -1 parameters of Hunspell
 1433         * tests/*.{good,wrong}: remove tabulators
 1434 
 1435         * src/hunspell/{hunspell,affixmgr}.cxx: BREAK option: break words at
 1436           specified break points and checking word parts separately (see manual).
 1437           Note: COMPOUNDRULE is better (or will be better) for handling dashes and
 1438           other compound joining characters or character strings. Use BREAK, if you
 1439           want check words with dashes or other joining characters and there is no time
 1440           or possibility to describe precise compound rules with COMPOUNDRULE.
 1441         * tests/break.*: BREAK example.
 1442 
 1443         * src/hunspell/{affixmgr,hunspell}.cxx: add CHECKSHARPS declaration instead
 1444           of LANG de_DE definitions to handle German sharp s in both spelling and
 1445           suggestion.
 1446         * src/hunspell/hunspell.cxx: With CHECKSHARPS, uppercase words are valid
 1447           with both lower sharp s (it's is optional for names in German legal texts)
 1448           and SS (MÜßIG, MÜSSIG). Missing lower sharp s form reported by Björn Jacke. 
 1449         * src/hunspell/hunspell.cxx: KEEPCASE flag on a sharp s word has a special
 1450           meaning with CHECKSHARPS declaration: KEEPCASE permits capitalisation and SS upper 
 1451           casing of a sharp s word (Müßig and MÜSSIG), but forbids the upper cased form 
 1452           with lower sharp s character(s): *MÜßIG.
 1453         * tests/germancompounding*: add CHECKSHARPS, remove LANG
 1454         * tests/checksharps*: add CHECKSHARPS and KEEPCASE, remove LANG
 1455 
 1456         * src/hunspell/hunspell.cxx: improved suggestions:
 1457         - suggestions for pressed Caps Lock problems: macARONI -> macaroni
 1458         - suggestions for long shift problems: MAcaroni -> Macaroni, macaroni
 1459         - suggestions for KEEPCASE words: KG -> kg
 1460         * src/hunspell/csutil.cxx: fix mystrrep() function:
 1461         - suggestions for lower sharp s in uppercased words: MÜßIG -> MÜSSIG
 1462         * tests/checksharps{,utf}.sug: add tests for mystrrep() fix
 1463 
 1464         * src/hunspell/hashmgr.cxx: Now dictionary words can contain slashes 
 1465           with the "\/" syntax. Problem reported by Frederik Fouvry.
 1466 
 1467         * src/hunspell/hunspell.cxx: fix bad duplicate filter in suggest().
 1468           (Suggesting some capitalised compound words caused program crash
 1469           with Hungarian dictionary, OOo Issue 59055).
 1470 
 1471         * src/hunspell/affixmgr.cxx: fix bad defcpd_check() call in compound_check().
 1472           (Overlapping new COMPOUNDRULE and old compounding methods caused program
 1473            crash at suggestion.)
 1474 
 1475         * src/hunspell/affixmgr.{cxx,hxx}: check affix flag duplication at affix classes.
 1476           Suggested by Daniel Naber.
 1477 
 1478         * src/hunspell/affentry.cxx: remove unused variable declarations (OOo i58338).
 1479           Compiler warnings reported by András Tímár and Martin Hollmichel.
 1480 
 1481         * src/hunspell/hunspell.cxx: morph(): not analyse bad mixed uppercased forms
 1482           (fix Arabic morphological analysis with Buckwalter's Arabic transliteration)
 1483 
 1484         * src/hunspell/affentry.{cxx,hxx}, atypes.hxx: little memory optimization
 1485           in affentry:
 1486           - using unsigned char fields instead of short (stripl, appndl, numconds)
 1487           - rename xpflg field to opts
 1488           - removing utf8 field, use aeUTF8 bit of opts field
 1489 
 1490         * configure.ac: set tests/maputf.test to XFAILED on ARM platform.
 1491           Fail reported by Rene Engelhard.
 1492 
 1493         * configure.ac: link Ncursesw library, if exists.
 1494 
 1495         * BUGS: add BUGS file
 1496 
 1497         * tests/complexprefixes2.*: test for morphological analysis with COMPLEXPREFIXES 
 1498         
 1499         * src/hunspell/affixmgr.cxx: use "COMPOUNDRULE" instead of
 1500           "COMPOUND". The new name suggested by Bram Moolenaar.
 1501         * tests/compoundrule*: modified and renamed compound.* test files
 1502 
 1503         * man/hunspell.4: AF, AM, BREAK, CHECKSHARPS, COMPOUNDRULE, KEEPCASE.
 1504           - also new addition to the documentation:
 1505           Header of the dictionary file define approximate dictionary size:
 1506           ``A dictionary file (*.dic) contains a list of words, one per line.
 1507           The first line of the dictionaries (except personal dictionaries)
 1508           contains the _approximate_ word count (for optimal hash memory size).''
 1509           Asked by Frederik Foudry.
 1510           
 1511           One-character replacements in REP definitions: ``It's very useful to
 1512           define replacements for the most typical one-character mistakes, too:
 1513           with REP you can add higher priority to a subset of the TRY suggestions
 1514           (suggestion list begins with the REP suggestions).''
 1515 
 1516 2005-11-11 Németh László <nemethl@gyorsposta.hu>:
 1517         * src/hunspell/affixmgr.*: fix Unicode MAP errors (sorted only n-1
 1518           characters instead of n ones in UTF-16 MAP character lists).
 1519           Bug reported by Rene Engelhard.
 1520 
 1521         * src/hunspell/affixmgr.*: fix infinite COMPOUND matching (default char
 1522           type is unsigned on PowerPC, s390 and ARM platforms and it will never
 1523           be negative). Bug reported by Rene Engelhard.
 1524         
 1525 	* src/hunspell/{affixmgr,suggestmgr}.cxx: fix bad ONLYINCOMPOUND
 1526           word suggestions.
 1527 	* tests/onlyincompound.sug: empty test file to check this fix.
 1528           Bug reported by Björn Jacke.
 1529 
 1530         * src/hunspell/affixmgr.cxx: fix backtracking in COMPOUND pattern matching.
 1531         * tests/compound6.*: test files to check this fix.
 1532         
 1533         * csutil.cxx: set bigger range types in flag_qsort() and flag_bsearch().
 1534         
 1535         * affixmgr.hxx: set better type for cont_classes[] Boolean data (short -> char)
 1536         
 1537         * configure.ac, tests/automake.am: set platform specific XFAIL test
 1538           (flagutf8.test on ARM platform)
 1539 
 1540 2005-11-09 Németh László <nemethl@gyorsposta.hu>:
 1541 improvements:
 1542         * src/hunspell/affixmgr.*: new and improved affix file parameters:
 1543 
 1544         - COMPOUND definitions: compound patterns with regexp-like matching.
 1545           See manual and test files: tests/compound*.*
 1546           Suggested by Bram Moolenaar.
 1547           Also useful for simple word-level lexical scanning, for example
 1548           analysing numbers or words with numbers (OOo Issue #53643):
 1549           http://qa.openoffice.org/issues/show_bug.cgi?id=53643
 1550           Examples: tests/compound{4,5}.*.
 1551 
 1552         - NOSUGGEST flag: words signed with NOSUGGEST flag are not suggested.
 1553           Proposed flag for vulgar and obscene words (OOo Issue #55498).
 1554           Example: tests/nosuggest.*.
 1555           Problem reported by bobharvey at OOo:
 1556           http://qa.openoffice.org/issues/show_bug.cgi?id=55498
 1557 
 1558         - KEEPCASE flag: Forbid capitalized and uppercased forms of words 
 1559           signed with KEEPCASE flags. Useful for special ortographies 
 1560           (measurements and currency often keep their case in uppercased
 1561           texts) and other writing systems (eg. keeping lower case of IPA
 1562           characters).
 1563 
 1564         - CHECKCOMPOUNDCASE: Forbid upper case characters at word bound in compounds.
 1565           Examples: tests/checkcompoundcase* and tests/germancompounding.*
 1566 
 1567         - FLAG UTF-8: New flag type: Unicode character encoded with UTF-8.
 1568           Example: tests/flagutf8.*.
 1569           Rationale: Unicode character type can be more readable
 1570           (in a Unicode text editor) than `long' or `num' flag type.
 1571 
 1572 bug fixes:
 1573         * src/hunspell/hunspell.cxx: accept numbers and numbers with separators (i53643)
 1574           Bug reported by skelet at OOo:
 1575           http://qa.openoffice.org/issues/show_bug.cgi?id=53643
 1576 
 1577 	* src/hunspell/csutil.cxx: fix casing data in ISO 8859-13 character table.
 1578 
 1579         * src/hunspell/csutil.cxx: add ISO-8859-15 character encoding (i54980)
 1580           Rationale: ISO-8859-15 is the default encoding of the French OpenOffice.org
 1581           dictionary. ISO-8859-15 is a modified version of ISO-8859-1
 1582           (latin-1) character encoding with French œ ligatures and euro
 1583 	  symbol. Problem reported by cbrunet at OOo in OOo Issue 54980:
 1584           http://qa.openoffice.org/issues/show_bug.cgi?id=54980
 1585 
 1586         * src/hunspell/affixmgr.cxx: fix zero-byte malloc after a bad affix header.
 1587           Patch by Harri Pitkänen.
 1588 
 1589 	* src/hunspell/suggestmgr.cxx: fix bad NEEDAFFIX word suggestion
 1590           in ngram suggestions. Reported by Daniel Naber and Friedel Wolff.
 1591 
 1592         * src/hunspell/hashmgr.cxx: fix bad white space checking in affix files.
 1593           src/hunspell/{csutil,affixmgr}.cxx: add other white space separators.
 1594           Problems with tabulators reported by Frederik Fouvry.
 1595 
 1596         * src/hunspell/*: replace system-dependent <license.*> #include
 1597           parameters with quoted ones. Problem reported by Dafydd Jones.
 1598 
 1599 	* src/hunspell/hunspell.cxx: fix missing morphological analysis of dot(s)
 1600           Reported by Trón Viktor.
 1601 
 1602 changes:
 1603 	* src/hunspell/affixmgr.cxx: rename PSEUDOROOT to NEEDAFFIX.
 1604 	  Suggested by Bram Moolenaar.
 1605 
 1606         * src/hunspell/suggestmgr.hxx: Increase default maximum of 
 1607           ngram suggestions (3->5). Suggested by Kevin Hendricks.
 1608 
 1609         * src/hunspell/htypes.hxx: Increase MAXDELEN for long affix flags.
 1610 
 1611         * src/hunspell/suggestmgr.cxx: modify (perhaps fix) Unicode map suggestion.
 1612           tests/maputf test fail on ARM platform reported by Rene Engelhard.
 1613 
 1614         * src/hunspell/{affentry.cxx,atypes.hxx}: remove [PREFIX] and
 1615           MISSING_DESCRIPTION messages from morphological analysis.
 1616           Problems reported by Trón Viktor.
 1617 
 1618 	* tests/germancompounding.{aff,good}: Add "Computer-Arbeit" test word.
 1619           Suggested by Daniel Naber.
 1620 
 1621         * doc/man/hunspell.4: Proof-reading patch by Goldman Eleonóra.
 1622           
 1623         * doc/man/hunspell.4: Fix bad affix example (replace `move' with `work').
 1624           Bug reported by Frederik Fouvry.
 1625           
 1626         * tests/*: new test files:
 1627           affixes.*: simple affix compression example from Hunspell 4 manual page
 1628           checkcompoundcase.*, checkcompoundcase2.*, checkcompoundcaseutf.*
 1629           compound.*, compound2.*, compound3.*, compound4.*, compound5.*
 1630           compoundflag.* (former compound.*)
 1631           flagutf8.*: test for FLAG UTF-8
 1632           germancompounding.*: simplification with CHECKCOMPOUNDCASE.
 1633           germancompoundingold.* (former germancompounding.*)
 1634           i53643.*: check numbers with separators
 1635           i54980.*: ISO8859-15 test
 1636           keepcase.*: test for KEEPCASE
 1637           needaffix*.* (former pseudoroot*.* tests)
 1638           nosuggest.*: test for NOSUGGEST
 1639 
 1640 2005-09-19 Németh László <nemethl@gyorsposta.hu>:
 1641 	* src/hunspell/suggestmgr.cxx: improved ngram suggestion:
 1642         - detect not neighboring swap characters (pernament -> permanent)
 1643           Rationale: ngram method has a significant error with not neighboring
 1644           swap characters, especially when swap is in the middle of the word.
 1645         - suggest uppercase forms (unesco -> UNESCO, siggraph's -> SIGGRAPH's)
 1646         - suggest only ngram swap character and uppercase form, if they exist.
 1647           Rationale: swap character and casing equivalence give mutch better
 1648           suggestions as any other (weighted) ngram suggestions.
 1649         - add uppercase suggestion (PERMENANT -> PERMANENT)
 1650           
 1651         * src/hunspell/*: complete comparison with MySpell 3.2 (in OOo beta 2):
 1652         - affixmgr.cxx: add missing numrep initialization
 1653         - hashmgr.cxx: add_word(): don't allocate temporary records
 1654         - hunspell.cxx: in suggest():
 1655           - check capitalized words first (better sug. order for proper names),
 1656           - check pSMgr->suggest() return value
 1657           - set pSMgr->suggest() call to not optional in HUHCAP
 1658         - csutil.cxx: fix bad KOI8-U -> koi8r_tbl reference in enc_entry encds
 1659 	- csutil.cxx: fix casing data in ISO 8859-2, Windows 1251 and KOI8-U
 1660           encoding tables. Bug reported by Dmitri Gabinski.
 1661 
 1662         * src/hunspell/affixmgr.*: improved compound word and other features
 1663         - generalize hu_HU specific compound word features with new affix file
 1664           parameters, suggested by Bram Moolenaar:
 1665         - CHECKCOMPOUNDDUP: forbid word duplication in compounds (eg. foo|foo)
 1666         - CHECKCOMPOUNDTRIPLE: forbid triple letters in compounds (eg. foo|obar)
 1667         - CHECKCOMPOUNDPATTERN: forbid patterns at word bounds in compounds
 1668         - CHECKCOMPOUNDREP: using REP replacement table, forbid presumably bad
 1669           compounds (useful for languages with unlimited number of compounds)
 1670         - ONLYINCOMPOUND flag works also with words (see tests/onlyincompound.*)
 1671           Suggested by Daniel Naber, Björn Jacke, Trón Viktor & Bram Moolenaar.
 1672         - PSEUDOROOT works also with prefixes and prefix + suffix combinations
 1673           (see tests/pseudoroot5.*). Suggested by Trón Viktor.
 1674         - man/hunspell.4: updated man page
 1675 
 1676         * src/hunspell/affixmgr.*: fix incomplete prefix handling with twofold
 1677           suffixes (delete unnecessary contclasses[] conditions in
 1678           prefix_check_twosfx() and prefix_check_twosfx_morph()).
 1679           Bug reported by Trón Viktor.
 1680         
 1681         * src/hunspell/affixmgr.*: complete also *_morph() functions with
 1682           conditions of new Hunspell features (circumfix, pseudoroot etc.).
 1683 
 1684         * src/hunspell/suggestmgr.cxx:
 1685         - fix missing suggestions for words with crossed prefix and suffix
 1686         - fix redundant non-compound word checking
 1687         - fix losing suggestions problem. Bug reported by Dmitri Gabinski.
 1688 
 1689         * src/hunspell/dictmgr.*:
 1690         - add new dictionary manager for Hunspell UNO modul
 1691           Problems with eo_ANY Esperanto locale reported by Dmitri Gabinski.
 1692 
 1693 	* src/hunspell/*: use precise constant sizes for 8-bit and 16-bit character
 1694           arrays with MAXWORDUTF8LEN and MAXSWUTF8L macros.
 1695 
 1696 	* src/hunspell/affixmgr.cxx: fix bad MAXNGRAMSUGS parameter handling
 1697 
 1698 	* src/hunspell/affixmgr.cxx, src/tools/{un}munch.*: fix GCC 4.0 warnings
 1699           on fgets(), reported by Dvornik László
 1700 
 1701 	* po/hu.po: improved translation by Dvornik László
 1702 
 1703         * tests/test.sh: improved test environment
 1704         - add suggestion testing (see tests/*.sug)
 1705         - add memory debugging environment, based on the excellent Valgrind debugger.
 1706           Usage on Linux and experimental platforms of Valgrind:
 1707           VALGRIND=memcheck make check
 1708         - rename test_hunmorph to test.sh
 1709 
 1710         * tests/*: new tests:
 1711         - base.*: base example based on MySpell's checkme.lst.
 1712         - map{,utf}.*, rep{,utf}: MAP and REP suggestion examples
 1713         - tests on new CHECKCOMPOUND, ONLYINCOMPOUND and PSEUDOROOT features
 1714         - i54633.*: capitalized suggestion test for Issue 54633 from OOo's Issuezilla
 1715         - i35725.*: improved ngram suggestion test for Issue 35725
 1716 
 1717 2005-08-26 Németh László <nemethl@gyorsposta.hu>:
 1718 improvements:
 1719 
 1720 	* src/hunspell/suggestmgr.cxx:
 1721 	  Unicode support in related character map suggestion
 1722 	
 1723 	* src/hunspell/suggestmgr.cxx: Unicode support in ngram suggestion
 1724 
 1725 	* src/hunspell/{suggestmgr,affixmgr,hunspell}.cxx: improve ngram suggestion.
 1726 	  Fix http://qa.openoffice.org/issues/show_bug.cgi?id=35725. See release
 1727           notes for examples. This problem reported by beccablain at OOo.
 1728         - ngram suggestions now are case insensitive (see `Permenant' bug in Issuezilla)
 1729         - weight ngram suggestions (with the longest common subsequent algorithm,
 1730           also considering lengths of bad word and suggestion, identical first
 1731           letters and almost completely identical character positions)
 1732         - set strict affix congruency in expand_rootword(). Now ngram suggestions
 1733           are good for languages with rich morphology and also better for English.
 1734           Rationale: affixed forms of the first ngram suggestion
 1735           very often suppress the second and subsequent root word suggestions. But
 1736           faults in affixes are more uncommon, and can be fix without suggestions.
 1737           We must prefer the more informative second and subsequent root word
 1738           suggestions instead of the suggestions for bad affixes.
 1739         - a better suggestion may not be substring of a less good suggestion
 1740 	  Rationale: Suggesting affixed forms of a root word is
 1741           unnecessary, when root word has got better weighted ngram value.
 1742           (Checking substrings is a good approximation for this refinement.)
 1743 	- lesser ngram suggestions (default 3 maximum instead of 10)
 1744           Rationale: For users need a big extra effort to check a lot of bad ngram
 1745           suggestions, nine times out of ten unnecessarily. It is very
 1746           distracting, because ngram suggestions could be very different.
 1747           Usually Myspell and Hunspell suggest one or two suggestions with
 1748           the old suggestion algorithms (maximum is 15), with ngram algorithm
 1749           often gives maximum number suggestions. With strict affix congruency
 1750           and other refinements, the good suggestion there is usually among the
 1751           first three elements.
 1752 	- new affix parameter: MAXNGRAMSUG
 1753 
 1754         * src/hunspell/*: support agglutinative languages with rich prefix
 1755 	  morphology or with right-to-left writing system (for example, Turkic
 1756 	  and Austronesian languages with (modified) Arabic scripts).
 1757 	- new affix parameter: COMPLEXPREFIXES
 1758 	  Set twofold prefix stripping (but single suffix stripping)
 1759 	* src/hunspell/affixmgr.cxx:
 1760 	- speed up prefix loading with tree sorting algorithm.
 1761 	* tests/complexprefixes.*, tests/complexprefixesutf.*:
 1762 	  Coptic example posted by Moheb Mekhaiel
 1763 
 1764 	* src/hunspell/hashmgr.cxx: check size attribute in dic file
 1765 	  suggested by Daniel Naber
 1766 	  Rationale: With missing size attribute Hunspell allocates too small and
 1767           more slower hash memory, and Hunspell can lose first dictionary word.
 1768 
 1769 	* src/hunspell/affixmgr.cxx: check stripping characters and condition
 1770 	  compatibility in affix rules (bugs detected in cs_CZ, es_ES, es_NEW,
 1771           es_MX, lt_LT, nn_NO, pt_PT, ro_RO and sk_SK dictionaries). See release
 1772           notes of Hunspell 1.0.9 in NEWS.
 1773 
 1774 	* src/hunspell/affixmgr.cxx: check unnecessary fields in affix rules
 1775           (bugs detected in ro_RO and sv_SE dictionaries). See release notes.
 1776 
 1777 	* src/hunspell/affixmgr.cxx: remove redundant condition checking
 1778 	  in affix rules with stripping characters (redundancy in OpenOffice.org
 1779 	  dictionaries reported by Eleonóra Goldman)
 1780           Rationale: this is a little optimization, but it was excellent for
 1781           detect the bad ngram affixation with bad or weak affix conditions.
 1782 
 1783 	* tests/germancompounding.aff: improve compound definition
 1784 	- use dash prefix instead of language specific tokenizer
 1785           Rationale: Using uniform approach is the right way to check and analyze
 1786 	  compound words. Language specific word breaking is deprecated, need
 1787           a sophisticated grammar checking for word-like word pairs
 1788           (for example in Hungarian there is a substandard, but accepted
 1789           syntax with dash for word pairs: cats, dogs -> kutyák-macskák (like
 1790           cats/dogs in English).
 1791 
 1792 	* test Hunspell with 54 OpenOffice.org dictionaries: see release notes
 1793 
 1794 bug fixes:
 1795 
 1796 	* src/hunspell/suggestmgr.*: add time limit to exponential
 1797 	  algorithm of the related character map suggestion
 1798 	  Rationale: a long word in agglutinative languages or a special pattern
 1799           (for example a horizontal rule) made of map characters can `crash' the
 1800           spell checker.
 1801 
 1802         * src/hunspell/affentry.cxx: add() functions: fix bad word generation
 1803           checking stripping characters (see similar bug in unmunch)
 1804 
 1805 	* src/hunspell/affixmgr.cxx: parse_file(): fix unconditional getNext()
 1806 	  call for ~AffixMgr() when affix file is corrupt.
 1807 
 1808 	* src/hunspell/affixmgr.*: AffixMgr(), parse_cpdsyllable(): fix missing
 1809 	  string duplications for ~AffixMgr() when affix file is corrupt.
 1810 
 1811 	* src/hunspell/affixmgr.*: parse_affix(): fix fprintf() call when affix
 1812 	  file is corrupt. Bug reported by Daniel Naber.
 1813 
 1814 	* suggestmgr.cxx: replace single usage of 'strdup' with 'mystrdup'
 1815 	  patch by Chris Halls (debian.org)
 1816 
 1817 	* src/hunspell/makefile.mk: add makefile.mk for compiling in OpenOffice.org
 1818 	  See README in Hunspell UNO modul.
 1819 	  Problems with separated compiling reported by Rene Engelhard
 1820 
 1821 	* src/hunspell/hunspell.cxx: fix pseudoroot support
 1822 	- search a not pseudoroot homonym in check()
 1823 	* tests/pseudoroot4.*: test this fix
 1824 
 1825 	* src/tools/unmunch.c: fix bad word generation when conditions
 1826 	  are shorter or incompatible with stripping characters in affix rules
 1827 
 1828 	* src/tools/unmunch.c: fix mychomp() for de_AT.dic and other dic files
 1829 	  without last new line character.
 1830 
 1831 other changes:
 1832 	* src/hunspell/suggestmgr.*: erase ACCENT suggestion
 1833 	  Rationale: ACCENT suggestion was the same as Kevin Hendrick's map
 1834 	  suggestion algorithm, but with a less good interface in affix file.
 1835 
 1836 	* src/hunspell/suggestmgr.*: combine cycle number limit
 1837 	  in badchar(), and forgotchar() with a time limit.
 1838 
 1839 	* src/hunspell/affixmgr.*: remove NOMAPSUGS affix parameter
 1840 
 1841 	* src/hunspell/{suggestmgr,hunspell}.*: strip periods from
 1842 	  suggestions (restore MySpell's original behaviour)
 1843 	  Rationale: OpenOffice.org has an automatic period handling mechanism
 1844 	  and suggestions look better without periods.
 1845 	- new affix file parameter: SUGSWITHDOTS
 1846 	  Add period(s) to suggestions, if input word terminates in period(s).
 1847           (No need for OpenOffice.org dictionaries.)
 1848 
 1849 	* tests/germancompounding.aff: improve bad german affix in affix example
 1850 	  (computeren->computern). Suggested by Daniel Naber.
 1851 
 1852 	* src/tools/example.cxx: add Myspell's example
 1853 
 1854 	* src/tools/munch.cxx: add Myspell's munch
 1855 
 1856 	* man{,/hu}/hunspell.4: refresh manual pages
 1857 
 1858 2005-08-01 Németh László <nemethl@gyorsposta.hu>:
 1859 	* add missing MySpell files and features:
 1860         - add MySpell license.readme, README and CONTRIBUTORS ({license,README,AUTHORS}.myspell)
 1861         - add MySpell unmunch program (src/tools/unmunch.c)
 1862         - add licenses to source (src/hunspell/license.{myspell,hunspell})
 1863         - port MAP suggestion (with imperfect UTF-8 support)
 1864         - add NOSPLITSUGS affix parameter
 1865         - add NOMAPSUGS affix parameter
 1866 
 1867         * src/man/man.4: MAP, COMPOUNDPERMITFLAG, NOSPLITSUGS, NOMAPSUGS
 1868 
 1869 	* src/hunspell/aff{entry,ixmgr}.cxx:
 1870           - improve compound word support
 1871 	  - new affix parameter: COMPOUNDPERMITFLAG (see manual)
 1872 	* src/tests/compoundaffix{,2}.*: examples for COMPOUNDPERMITFLAG
 1873 	* src/tests/germancompounding.*: new solution for German compounding
 1874 	  Problems with German compounding reported by Daniel Naber
 1875 
 1876         * src/hunspell/hunspell.cxx: fix German uppercase word spelling
 1877           with the spellsharps() recursive algorithm.
 1878 	  Default recursive depth is 5 (MAXSHARPS).
 1879 	* src/tests/germansharps*: extended German sharp s tests
 1880 
 1881 	* src/tools/hunspell.cxx: fix fatal memory bug in non-interactive
 1882           subshells without HOME environmental variable
 1883 	  Bug detected with PHP by András Izsók.
 1884 
 1885 2005-07-22 Németh László <nemethl@gyorsposta.hu>:
 1886 	* src/hunspell/csutil.hxx: utf16_u8()
 1887         - fix 3-byte UTF-8 character conversion
 1888 
 1889 2005-07-21 Németh László <nemethl@gyorsposta.hu>:
 1890 	* src/hunspell/csutil.hxx: hunspell_version() for OOo UNO modul
 1891 
 1892 2005-07-19 Németh László <nemethl@gyorsposta.hu>:
 1893         * renaming:
 1894           - src/morphbase -> src/hunspell
 1895           - src/hunspell, src/hunmorph -> src/tools
 1896           - src/huntokens -> src/parsers
 1897 
 1898         * src/tools/hunstem.cxx: add stemmer example
 1899 
 1900 2005-07-18 Németh László <nemethl@gyorsposta.hu>:
 1901         * configure.ac: --with-ui, --with-readline configure options
 1902         * src/hunspell/hunspell.cxx: fix conditional compiling
 1903 
 1904         * src/hunspell/hunspell.cxx: set HunSPELL.bak temporaly file
 1905           in the same dictionary with the checked file.
 1906 
 1907         * src/morphbase/morphbase.cxx:
 1908 
 1909             - handling German sharp s (ß)
 1910 
 1911             - fix (temporaly) analyize()
 1912 
 1913         * tests: a lot of new tests
 1914 
 1915 	* po/, intl/, m4/: add gettext from GNU hello
 1916 	
 1917 	* po/hu.po: add Hungarian translation
 1918 
 1919 	* doc/, man/: rename doc to man
 1920 
 1921 2005-07-04 Németh László <nemethl@gyorsposta.hu>:
 1922         * src/morphbase/hashmgr.cxx: set FLAG attributum instead of FLAG_NUM and FLAG_LONG
 1923         
 1924         * doc/hunspell.4: manual in English
 1925 
 1926 2005-06-30 Németh László <nemethl@gyorsposta.hu>:
 1927 	* src/morphbase/csutil.cxx: add character tables from csutil.cxx of OOo 1.1.4
 1928 
 1929 	* src/morphbase/affentry.cxx: fix Unicode condition checking
 1930 
 1931 	* tests/{,utf}compound.*: tests compounding
 1932 
 1933 2005-06-27 Németh László <nemethl@gyorsposta.hu>:
 1934 	* src/morphbase/*: fix Unicode compound handling
 1935 
 1936 2005-06-23 Halácsy Péter:
 1937         * src/hunmorph/hunmorph.cxx: delete spelling error message and suggest_auto() call
 1938 
 1939 2005-06-21 Németh László <nemethl@gyorsposta.hu>:
 1940         * src/morphbase: Unicode support
 1941         * tests/utf8.*: SET UTF-8 test
 1942         
 1943         * src/morphbase: checking and fixing with Valgrind
 1944         Memory handling error reported by Ferenc Szidarovszky
 1945 
 1946 2005-05-26  Németh László <nemethl@gyorsposta.hu>:
 1947 	* suggestmgr.cxx: fix stemming
 1948 	* AUTHORS, COPYING, ChangeLog: set CC-LGPL free software license
 1949 
 1950 2004-05-25  Varga Dániel  <daniel@all.hu>
 1951 	* src/stemtool: new subproject
 1952 
 1953 2005-05-25  Halácsy Péter  <peter@halacsy.com>
 1954 	* AUTHORS, COPYING: set CC Attribution license
 1955 
 1956 2004-05-23  Varga Dániel  <daniel@all.hu>
 1957 	* src: - modifications for compiling with Visual C++
 1958 	
 1959 	* src/hunmorph/csutil.cxx: correcting header of flag_qsort(),
 1960 	* src/hunmorph/*: correct csutil include
 1961 
 1962 2005-05-19  Németh László <nemethl@gyorsposta.hu>
 1963 	* csutil.cxx: fix loop condition in lineuniq()
 1964         bug reported by Viktor Nagy (nagyv nyelvtud hu).
 1965 	
 1966 	* morphbase.cxx: handle PSEUDOROOT with zero affixes
 1967         bug reported by Viktor Nagy (nagyv nyelvtud hu).
 1968 	* tests/zeroaffix.*: add zeroaffix tests
 1969 
 1970 2005-04-09  Németh László <nemethl@gyorsposta.hu>
 1971 	* config.h.in: reset with autoheader
 1972 	
 1973 	* src/hunspell/hunspell.cxx: set version
 1974 
 1975 2005-04-06  Németh László <nemethl@gyorsposta.hu>
 1976         * tests: tests
 1977         
 1978         * src/morphbase:
 1979         New optional parameters in affix file:
 1980         - PSEUDOROOT: for forbidding root with not forbidden suffixed forms.
 1981         - COMPOUNDWORDMAX: max. words in compounds (default is no limit)
 1982         - COMPOUNDROOT: signs compounds in dictionary for handling special compound rules
 1983         - remove COMPOUNDWORD, ONLYROOT
 1984 
 1985 2005-03-21  Németh László <nemethl@gyorsposta.hu>
 1986 	* src/morphbase/*:
 1987         - 2-byte flags, FLAG_NUM, FLAG_LONG 
 1988         - CIRCUMFIX: signed suffixes and prefixes can only occur together
 1989         - ONLYINCOMPOUND for fogemorpheme (Swedish, Danish) or Flute-elements (German)
 1990         - COMPOUNDBEGIN: allow signed roots, and roots with signed suffix in begin of compounds
 1991         - COMPOUNDMIDDLE: like before, but middle of compounds
 1992         - COMPOUNDEND: like before, but end of compounds
 1993         - remove COMPOUNDFIRST, COMPOUNDLAST