dwww Home | Show directory contents | Find package

2021-12-21  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * NEWS:
        === Version 0.1.29 ===

2021-12-21  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-collection.txt:
        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
          - Add words.

2021-09-18  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Handle possible malloc failures.

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, brk_recover_try):
          - Handle cases where brk_pool_node_new() possibly returns NULL.
            In both places, fail gracefully by behaving as if the dict state
            were single there.

        Partially addresses Issue #15.

2021-09-18  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix typo in TIS-620 character name.

        * include/thai/tis.h:
          - Fix typo TIS_[S]YMBOL_BAHT, with backward compatibility macro.

2021-08-31  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update Doxyfile for doxygen 1.9.1.

        * doc/Doxyfile.in:
          - Apply 'doxygen -u'.
          - Fix invalid PAPER_TYPE 'a4wide' to 'a4'.
        * configure.ac:
          - Bump doxygen required version.

2021-08-31  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Apply 'autoupdate' for autoconf 2.71

        * configure.ac:
          - Quote m4 strings in AC_INIT() parameters.
          - Replace obsolete AC_PROG_LIBTOOL with LT_INIT. With this,
            drop AC_LIBTOOL_WIN32_DLL, as we haven't really declared
            dllexport anywhere yet.
          - Replace obsolete AC_LIBTOOL_LINKER_OPTION() with
            _LT_LINKER_OPTION(). Also quote an m4 string.
          - Replace obsolete AC_HELP_STRING() with AS_HELP_STRING().
          - Replace parameterized AC_OUTPUT() with AC_CONFIG_FILES()
            and parameter-less AC_OUTPUT.
          - Update AC_PREREQ() from 2.59 to 2.71.

2021-08-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt, data/tdict-spell.txt:
          - Move "องคชาติ" from common to spell.

2021-08-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-history.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
        * data/tdict-spell.txt:
          - Add words.

2021-03-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break between Thai/Alpha and Percent

        LB24 of UAX#14 prohibits break between AL and PO,
        and between PO and AL, without example. But cases like
        "ten%" can be found in the internet, and similar usage
        like "สิบ%" sounds sensible in Thai.

        * tests/test_thbrk.c (TestSamples):
          - Add test case
        * src/thbrk/brk-ctype.c (_break_table):
          - (THAI, NUM_NBB): _A -> _I
          - (ALPHA, NUM_NBB): _A -> _I

2021-03-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break between Currency and Alpha

        LB24 of UAX#14 prohibits break between PR and AL,
        and between AL and PR, without example. But some cases
        can be found from Wikipedia:
          - Brazilian real (usually written as R$)
          - Nicaraguan córdoba (usually written as C$)
          - Other uses: Micro$oft, George Luca$, etc.
        https://en.wikipedia.org/wiki/Dollar_sign

        Similar usage is not clear for Thai.

        * tests/test_thbrk.c (TestSamples):
          - Add test case, with "C++" to catch side-effect of PR and PR
        * src/thbrk/brk-ctype.c (_break_table):
          - (ALPHA, NUM_CUR): _A -> _I
          - (NUM_CUR, ALPHA): _A -> _I
          - (NUM_CUR, NUM_CUR): _A -> _I

2021-03-15  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break on the other side of parentesis

        LB30 of UAX#14 prohibits break in "(s)he" and "person(s)".
        The rule for Thai is more complicated. So, we only cover
        Latin for now.

        * tests/test_thbrk.c (TestSamples):
          - Add test case
        * src/thbrk/brk-ctype.c (_break_table):
          - (ALPHA, NBA): _A -> _I
          - (CLOSE, ALPHA): _A -> _I

2021-03-09  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break between Thai/Alpha and number

        LB23 of UAX#14 prohibits break between AL and NU, and between
        NU and AL. This makes sense for Latin. For Thai, prohibiting
        break between AL and NU makes sense for codes like "กข43"
        as a rice strain, but "40บาท" should still be broken.

        * tests/test_thbrk.c (TestSamples):
          - Add test case
        * src/thbrk/brk-ctype.c (_break_table):
          - (ALPHA, NUM): _A -> _I
          - (NUM, ALPHA): _A -> _I
          - (THAI, NUM): _A -> _I

2021-03-05  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Handle Latin acronyms

        LB29 of UAX#14 prohibits break between IS and AL for acronyms
        such as "e.g.", but this causes side-effects on other IS
        punctuations like comma, colon, semicolon as well. This leads
        to an error in case of ",ก" in Unicode LineBreakTest.txt
        as tested by Pango, which I think it makes perfect sense
        to allow break. So, I'm not trying to fix it, but try to
        extend acronym handling to cover Latin instead.

        * tests/test_thbrk.c (TestSamples):
          - Add test case
        * src/thbrk/thbrk.c (th_brk_find_breaks):
          - Rename 'thai_chunk' variable to 'chunk'.
          - Move brk_op() lookup to after chunk handling.
          - Adjust acronym handling to cover BRK_CLASS_ALPHA acronyms.
          - Reset chunk pointers every time break class changes,
            not just when entering Thai chunk.

2021-03-01  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit some breaks around number sign

        UAX#14 prohibits break within "#ก", which makes sense for
        hashtags, but its classification as AL would affect cases
        like "hello|สวัสดี". So, re-classify it as QUOTE instead.

        * tests/test_thbrk.c (TestSamples):
          - Add test cases
        * src/thbrk/brk-ctype.c (_char_class):
          - Change class of '#' from BRK_CLASS_ALPHA to BRK_CLASS_QUOTE.

        Partially addresses issue #6.

2021-02-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break between right parenthesis and currency

        It's common to write "12๎๎฿" instead of "฿12". So, line break
        between right parenthesis and currency, such as in "(12)฿",
        should be prohibited similarly to the left-side form.

        * tests/test_thbrk.c (TestSamples):
          - Add test cases
        * src/thbrk/brk-ctype.h (brk_class_t):
          - Add BRK_CLASS_CLOSE to separate ')', ']', '}' from BRK_CLASS_NBB.
        * src/thbrk/brk-ctype.c (_char_class):
          - Change class of ')', ']', '}' from BRK_CLASS_NBB to
            BRK_CLASS_CLOSE.
        * src/thbrk/brk-ctype.c (_break_table):
          - Insert row and column for CLOSE, with contents copied from NBB.
          - Change (CLOSE, NUM_CUR): _A -> _P

2021-02-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohibit break between currency and left parenthesis

        In UAX#14, although LB18 (break after spaces) makes prohibited breaks
        between PR and {NU,OP} in LB25 equivalent to indirect breaks,
        the description of PR Property insists that it must be prohibited
        "even if a space character intervenes", with "$ (100.00)"
        as an example with no break opportunity. [1] So, we take them as
        prohibited breaks.

        [1] https://www.unicode.org/reports/tr14/#PR

        * tests/test_thbrk.c (TestSamples):
          - Add test case as interpreted from UAX#14
        * src/thbrk/brk-ctype.c (_break_table):
          - (NUM_CUR, NBA): _A -> _P

2021-02-18  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Prohitbit 2 break cases before percent

        In UAX#14, although LB18 (break after spaces) makes prohibited breaks
        between {NU,CL,CP} and PO in LB25 equivalent to indirect breaks,
        the description of PO Property insists that it must be prohibited
        "even if one or more space characters intervene", with "(12.00) %"
        as an example with no break opportunity. [1] So, we take them as
        prohibited breaks.

        [1] https://www.unicode.org/reports/tr14/#PO

        * tests/test_thbrk.c (TestSamples):
          - Add test case as interpreted from UAX#14
        * src/thbrk/brk-ctype.c (_break_table):
          - (NUM, NUM_NBB): _I -> _P
          - (NBB, NUM_NBB): _A -> _P

2021-02-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Rewrite thbrk test for extensibility.

        * tests/test_thbrk.c:
          - Rewrite to read and test from sample list.
          - Encode samples in UTF-8 and convert them as required.

2021-02-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Simplify thbrk test.

        * tests/test_thbrk.c:
          - Remove interactive mode.
          - Continue testing, rather than exit, on failures.

2021-02-05  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Provide our own version of INSTALL instruction.

        * INSTALL:
          - Explain simple installation steps and build requirements.
        * .gitignore:
          - Remove INSTALL ignoring.

        This is to address a frequently found issue when
        'autoconf-archive' is missing, like in issue #9.

2021-01-28  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Another protection against invalid array access.

        In addition to commit 8e7ab6967f862a409352f7e8985fd4b445d37f4d.

        * src/thbrk/thbrk.c (th_brk_find_breaks):
          - Protect against accessing pos[-1] which may be caused by
            a failure in brk_maximal_do().

        Thanks Ratchanan Srirattanamet for the report via personal mail.

2020-08-16  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/Makefile.am, +data/tdict-currency.txt:
          - Add new category.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
        * data/tdict-spell.txt:
          - Add words.

        * data/tdict-science.txt:
          - Fix typo "อัลลอยด์" -> "อัลลอย".

2020-03-23  Ross Burton <ross.burton@intel.com>

        configure.ac: remove duplicate AC_CONFIG_MACRO_DIR

        Autoconf 2.70 will fatally error out if AC_CONFIG_MACRO_DIR is called
        more than once:

        | configure.ac:25: error: AC_CONFIG_MACRO_DIR can only be used once

        * configure.ac:
          - Remove duplicate AC_CONFIG_MACRO_DIR

2020-01-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-history.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
        * data/tdict-spell.txt:
          - Add words.

        * data/tdict-proper.txt, data/tdict-city.txt:
          - Move "ลิเวอร์พูล" from proper to city.
        * data/tdict-proper.txt, data/tdict-history.txt:
          - Move "เมจิ" from proper to history.

        * data/tdict-common.txt:
          - Correct some sorting order.

2019-12-20  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Use GitHub issue tracker as bug report address.

        * configure.ac:
          - Replace bug report e-mail address with GitHub issue tracker URL.

2018-12-17  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Split compound in dictionary.

        * data/tdict-std.txt:
          - Split "ชิงช้าชาลี" into a new entry "ชาลี", as is the case in recent version
            of Royal Institute dictionary.

2018-08-01  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * NEWS:
        === Version 0.1.28 ===

2018-08-01  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update README.

        * README:
          - Use HTTPS in project URL.

2018-08-01  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update library versioning.

        * configure.ac:
          - Bump library revision to reflect code change.

2018-08-01  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
          - Add words.

2018-06-21  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix warning on comma at the end of enum list

        * src/thbrk/brk-ctype.h (brk_op_t):
          - Remove comma at the end of enum list (-Wpedantic)

2018-06-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Adjust pointer declaration style

        * src/thbrk/brk-common.c (brk_load_default_dict):
          - Adjust pointer declaration style for 'dict_trie'

2018-06-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Avoid non-ANSI C snprintf()

        * src/thbrk/brk-common.c (+full_path, brk_load_default_dict):
          - Instead of preparing full path name with snprintf(), which is
            non-ANSI, and still risks path name trimming, do it with
            size-calculated malloc().
          - free() it as needed.

2018-06-12  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-spell.txt:
          - Add words suggested by @nuttee15 in issue #2
            https://github.com/tlwg/libthai/issues/2#issuecomment-396442354
            https://github.com/tlwg/libthai/issues/2#issuecomment-396456551
            Thank you very much!

2018-06-12  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Add 2 words from new RI dictionary.

        * data/tdict-std.txt:
          - Add 'กายินทรีย์' and 'กาเยนทรีย์' from new RI dict.

2018-06-12  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-history.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
        * data/tdict-spell.txt:
          - Add words.

2018-05-31  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Add missing includes in header files.

        * include/thai/thwbrk.h:
        * include/thai/thwcoll.h:
        * include/thai/thwinp.h:
        * include/thai/thwrend.h:
          - Add missing #include <thai/thwchar.h>

2018-01-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move some entries in tdict-common to proper files.

        * data/Makefile.am, +data/tdict-slang.txt:
          - Add file for keeping slangs.

        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-slang.txt:
        * data/tdict-spell.txt:
          - Move entries in tdict-common to more proper files.

2018-01-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-country.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
          - Add words.

        * data/tdict-history.txt:
          - Replace "ลาลูแบร์" with just "ลูแบร์".

2017-10-25  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * NEWS:
        === Version 0.1.27 ===

2017-10-25  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-history.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
          - Add words.

        * data/tdict-proper.txt:
          - Correct order for some entries.

2017-08-07  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Strip prefix for C source files in doc

        * doc/Doxyfile.in:
          - Append "@top_srcdir@/src" and "@top_srcdir@/tests"
            to STRIP_FROM_PATH, so that references to source directories
            in the generated document do not capture full build path.

        Defect caught by Debian Reproducible

2017-06-29  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Remove duplicated dict entry.

        * data/tdict-common.txt:
          - Remove 'ดัมพ์' which is already in tdict-std.
        * data/tdict-common.txt:
        * data/tdict-spell.txt:
          - Move 'ดั๊มพ์' from tdict-common to tdict-spell.

2017-06-29  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
          - Add words.

2016-12-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * NEWS:
        === Version 0.1.26 ===

2016-12-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Include git-version-gen in tarball

        * Makefile.am:
          - Add build-aux/git-version-gen to EXTRA_DIST.

2016-12-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move word.

        * data/tdict-common.txt, data/tdict-ict.txt:
          - Move 'แอดมิน' from tdict-common to tdict-ict.

2016-12-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
          - Add words.

2016-07-09  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move some uncommon compound names out of tdict-std dictionary.

        * data/tdict-std.txt, data/tdict-std-compound.txt:
          - Move 'กระดองหาย', 'กระดาดขาว', 'นางรำ', 'นางหงส์'
            to tdict-std-compound.

2016-07-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move compounds out of tdict-std dictionary.

        * data/tdict-std.txt:
          - Remove long compound 'ตะลึงพรึงเพริด'.
          - Keep only 'สะพรึง' instead of 'สะพรึงกลัว'.
        * data/tdict-std.txt, data/tdict-std-compound.txt:
          - Move compounds 'ตะลุ่มนก', 'ตากวาง', 'ตานนกกด' to tdict-std-compound.

2016-07-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Match git tag with version pattern.

        * build-aux/git-version-gen:
          - Apply --match pattern to git-describe to prevent confusion
            with other tags.
          - Drop unused LF var.

2016-07-07  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Use versioning based on Git snapshot.

        * Makefile.am:
          - Add dist-hook to generate VERSION file on tarball generation.
        * +build-aux/git-version-gen:
          - Add script to generate version based on 'git describe'
            if in git tree, or using VERSION file if in release tarball.
        * configure.ac:
          - Call git-version-gen to get package version.

2016-06-28  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac, NEWS:
        === Version 0.1.25 ===

2016-06-28  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
        - Add words.

2016-06-27  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Document about multi-thread use.

        * src/thbrk/thbrk.c (th_brk_new):
          - Add documentation about deleting after use, and about
            creating/destroying word breaker instance in critical sections.

2016-06-26  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Use 'wc' prefix instead of suffix for wide-char word break APIs.

        To be consistent with other modules, wide-char APIs should be
        prefixed, not suffixed with 'wc'.

        * include/thai/thwbrk.h:
        * src/libthai.c:
        * src/libthai.def:
        * src/libthai.map:
        * src/thwbrk/thwbrk.c:
        * tests/test_thwbrk.c:
          - Rename th_brk_find_breaks_wc() -> th_brk_wc_find_breaks().
          - Rename th_brk_insert_breaks_wc() -> th_brk_wc_insert_breaks().

2016-06-25  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Rename the new APIs to be more meaningful.

        The methods for ThBrk I proposed to Mark Brown in our discussion
        were too confusing. Before they get public, let's pick more
        meaningful names instead:
          - th_brk_brk()       -> th_brk_find_breaks()
          - th_brk_brk_line()  -> th_brk_insert_breaks()
          - th_brk_wbrk()      -> th_brk_find_breaks_wc()
          - th_brk_wbrk_line() -> th_brk_insert_breaks_wc()

        * include/thai/thbrk.h:
        * include/thai/thwbrk.h:
        * src/libthai.c:
        * src/libthai.def:
        * src/libthai.map:
        * src/thbrk/thbrk.c:
        * src/thwbrk/thwbrk.c:
        * tests/test_thbrk.c:
        * tests/test_thwbrk.c:
          - Rename functions as listed above.
          - Rename the 'n' argument in the functions to indicate
            whose size it describes.

2016-06-24  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Add function deprecation warnings.

        * include/thai/thailib.h:
          - Add TH_DEPRECATED and TH_DEPRECATED_FOR() macros,
            taken from GLib.
        * include/thai/thbrk.h (th_brk, th_brk_line):
        * include/thai/thwbrk.h (th_wbrk, th_wbrk_line):
          - Apply TH_DEPRECATED_FOR() to deprecated functions,
            with suggestions for alternatives.

2016-06-24  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update tests to test new APIs.

        * tests/test_thbrk.c (main), tests/test_thwbk.c (main):
          - Create, use, and free ThBrk instance with the new APIs
            instead of the deprecated ones.

2016-06-23  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update documentation for API deprecation.

        * src/thbrk/thbrk.c, src/thwbrk/thwbrk.c:
          - Add info for deprecated functions.
          - Add availability info for new functions.

        * src/thinp/thinp.c:
          - Add availability info for th_validate_leveled().

        * src/libthai.c:
          - Add missing link to th_validate_leveled().

2016-06-23  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update library versioning.

        * configure.ac:
          - Bump library versions to reflect the added API.

2016-06-22  Mark Brown  <mark@mercurylang.org>

        Implement a new thread-safe interface for word break.

        To achieve more thread-safety without depending on mutex mechanisms,
        a new set of APIs is added so that the client can create
        a shared instance of word break engine by him/herself
        under appropriate mutex. Then, the word break functions
        can be safely called in parallel using the shared engine.


        * include/thai/thbrk.h:
        * include/thai/thwbrk.h:
        * src/libthai.c:
        * src/libthai.def:
        * src/libthai.map:
          - Add new exported APIs:
            th_brk_new(), th_brk_delete(),
            th_brk_brk(), th_brk_brk_line(),
            th_brk_wbrk(), th_brk_wbrk_line().

        * src/thbrk/brk-common.h, src/thbrk/brk-common.c
          (-brk_on_unload, -brk_get_dict, +brk_load_default_dict):
          - Remove old shared dict management. It's to be as part of
            ThBrk implementation in ThBrk layer instead.
          - The logic for finding and loading dictionary at
            default paths is still retained here.

        * src/thbrk/thbrk.c (th_brk_new, th_brk_delete):
          - Implement ThBrk (de)allocation, with dictionary loading
            at specified path or at default paths if not specified.

        * src/thbrk/brk-maximal.h, src/thbrk/brk-maximal.c
          (struct _BrkEnv, brk_env_new):
          - Add ThBrk engine as a member of BrkEnv.
        * src/thbrk/brk-maximal.c (brk_root_pool):
          - Access dict trie from ThBrk in BrkEnv instead of getting
            shared dict directly.

        * src/thbrk/thbrk.c
            (th_brk -> th_brk_brk, th_brk_line -> th_brk_brk_line):
        * src/thwbrk/thwbrk.c
            (th_wbrk -> th_brk_wbrk, th_wbrk_line -> th_brk_wbrk_line):
          - Modify old functions to new ones by adding ThBrk* parameter.

        * src/thbrk/Makefile.am, +src/thbrk/thbrk-priv.h,
          src/thbrk/thbrk.c (brk_get_shared_brk, brk_free_shared_brk):
          - Add functions for managing the shared engine to preserve
            old behavior.
        * src/libthai.c (_libthai_on_unload):
          - Call brk_free_shared_brk() on unload.
        * src/thbrk/thbrk.c (th_brk, th_brk_line):
        * src/thwbrk/thwbrk.c (th_wbrk, th_wbrk_line):
          - Provide old APIs as wrappers to the new APIs,
            for backward compatibility.

        Merging pull request #1.

2016-05-02  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-spell.txt: Add words.

2016-03-28  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Do not test word breaking if dict is disabled.

        * tests/Makefile.am:
          - Only add test-thbrk.sh and test-thwbrk.sh to TESTS
            when dictionary is enabled.

2016-03-03  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Get rid of unused variable.

        * src/thrend/thrend.c (tis620_0_shape_table_):
          - Comment out unused variable reported by GCC 6.

2016-01-28  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Make source more readable.

        * src/thbrk/brk-common.c (brk_get_dict):
          - Break assignment and comparison chain on reading
            LIBTHAI_DICTDIR environment.

2016-01-20  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix compilation error with GCC 6

        * include/thai/thctype.h (_th_bitmsk):
          - Use unsigned int instead of unsigned short for bitmask base,
            as GCC 6 takes ~0 as -1 for unsigned short,
            and causes compilation error for scim-thai.

        Thanks Martin Michlmayr for the report via Debian #811690
        http://bugs.debian.org/811690

2016-01-20  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Post-release version suffix added.

2015-11-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac:
          - Bump library revision to reflect code changes.

        * configure.ac, NEWS:
        === Version 0.1.24 ===

2015-11-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2015-11-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix infinite loop introduced by recent optimization.

        * src/thbrk/brk-maximal.c (brk_recover_try):
          - Update 'pool' correctly when deleting matched BrkPool node.
            brk_pool_delete_node() cannot be started at pool_tail indeed.

        Thanks Zack Weinberg for the report via Debian #805703
        http://bugs.debian.org/805703

2015-11-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Post-release version suffix added.

2015-10-22  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac:
          - Bump library revision to reflect code changes.

        * configure.ac, NEWS:
        === Version 0.1.23 ===

2015-10-21  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-country.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt: Add words.

2015-10-16  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Share BrkEnv longer.

        The code before the threadsafe commit used to initialize the
        free list earlier in th_brk() and then called brk_maximal_do()
        multiple times. This allowed the free list to be shared among
        all such calls. The threadsafe commit did it deep in
        brk_maximal_do_impl(), limiting the share within the single
        brk_maximal_do() call only. We should widen the use to be
        the same as previously done.

        * src/thbrk/brk-maximal.h (+brk_env_new, +brk_env_free):
          - Re-add initialization/quit functions in terms of BrkEnv.
          - Add BrkEnv* arg to brk_maximal_do().
        * src/thbrk/brk-maximal.c (brk_env_init -> brk_env_new,
          brk_env_destroy -> brk_env_free):
          - Turn the init/destroy functions into new/free version.
        * src/thbrk/brk-maximal.c (brk_maximal_do, brk_maximal_do_impl):
          - Add the BrkEnv* arg and use it instead of the locally created
            one.
        * src/thbrk/thbrk.c (th_brk):
          - Create BrkEnv object at start and free it at end.
          - Add the env arg to brk_maximal_do() calls.

        This appears to save more 2.4% of the total runtime and makes
        it on par with the code before the threadsafe commit again.

2015-10-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Call brk_pool_match() linearly.

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, brk_recover_try):
          - Start next brk_pool_match() on node next to previously matched
            one, instead of the pool head, making the match O(n) instead of
            O(n^2).
          - [brk_maximal_do_impl] Also prevent using the deleted node to
            start the next round.
          - [brk_recover_try] Also start brk_pool_delete_node() on the
            pool tail, making it also linear. This is not possible for
            brk_maximal_do_impl, as the node to be deleted is not fixed.

        This appears to save time by 8.85% on brk_pool_match() calls,
        lowering its bottleneck rank by 2 positions, and saves time by
        0.0388% of total run time.

2015-10-14  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Declare variable inside block.

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, brk_recover_try):
          - Move "BrkPool *match" declaration into the block it's used.

2015-10-12  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Declare const arg for brk_pool_match().

        * src/thbrk/brk-maximal.c (brk_pool_match):
          - Add const-ness to the read-only 'node' arg.

2015-10-11  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Minor optimization on brk_pool_match().

        Callgrind reports brk_pool_match() among top bottlenecks.
        So, try to optimize it as we can.

        * src/thbrk/brk-maximal.c (brk_pool_match):
          - Instead of sharing the loop for two different cases,
            check the case once and run loop for each case separately,
            to minimize branching down to a single time.
          - Evaluate the unchanged 'node->shot.brk_pos[node_cur_pos - 1]'
            expression only once, instead of on every round.

        This appears to save time by 9.3% for total brk_pool_match() calls,
        and by 0.067% of total run time.

2015-10-11  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix 'make check' error on long path names.

        * tests/thsort.c (main):
          - Increase file name buffers from 64 to 512, to afford long path
            names in command-line arguments.

2015-10-10  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Replace static global free-list with local one.

        The static global free-list in brk-maximal.c makes it not
        thread-safe.

        * src/thbrk/brk-maximal.c:
          - Add type BrkEnv to keep break pool free list, with
            brk_env_init() and brk_env_destroy() methods.
          - (brk_pool_node_new, brk_pool_node_free, brk_pool_free,
             brk_pool_delete, brk_root_pool, brk_recover_try,
             brk_recover):
            Add (BrkEnv *) arg to relevant functions and use it properly.
          - (brk_maximal_do):
            Create and destroy BrkEnv instance for use locally.
            Pass it to the required function calls.
          - (brk_pool_delete -> brk_pool_delete_node):
            Rename function to avoid confusion with brk_pool_free().

        * src/thbrk/brk-maximal.c:
        * src/thbrk/brk-maximal.h:
        * src/thbrk/thbrk.c:
          - Get rid of now-unnecessary brk_maximal_init() and
            brk_maximal_quit().

        Thanks Behdad Esfahbod for the report.

2015-09-07  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix doxygen version checking.

        * configure.ac:
          - Correctly compare doxygen versions. Simple expr comparison
            didn't work with version 1.8.10.

        Taken from Petr Gajdos <pgajdos@suse.cz>'s patch for libdatrie.

2015-06-04  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Protect against invalid array access.

        * src/thbrk/thbrk.c (th_brk):
          - Add a condition to protect against accessing pos[-1]
            which may be caused by a failure in brk_maximal_do()
            on the first Thai chunk, which makes cur_pos remain 0.

        Thanks Behdad Esfahbod for the report.

2015-06-04  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Post-release version suffix added.

2015-05-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac, NEWS:
        === Version 0.1.22 ===

2015-05-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Bump library revision, due to code change.

2015-05-08  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix 'make distcheck' failure.

        * doc/Makefile.am:
          - Remove doxygen db file on clean.

2015-05-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2015-05-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Use my Gmail e-mail address everywhere.

        * AUTHORS:
        * include/thai/thailib.h:
        * include/thai/thbrk.h:
        * include/thai/thcell.h:
        * include/thai/thcoll.h:
        * include/thai/thctype.h:
        * include/thai/thinp.h:
        * include/thai/thrend.h:
        * include/thai/thstr.h:
        * include/thai/thwbrk.h:
        * include/thai/thwchar.h:
        * include/thai/thwcoll.h:
        * include/thai/thwctype.h:
        * include/thai/thwinp.h:
        * include/thai/thwrend.h:
        * include/thai/thwstr.h:
        * include/thai/tis.h:
        * include/thai/wtt.h:
        * man/man3/libthai.3:
        * man/man3/thctype.3:
        * man/man3/wtt.3:
        * man/template.3:
        * src/libthai.c:
        * src/thbrk/brk-common.c:
        * src/thbrk/brk-common.h:
        * src/thbrk/brk-ctype.c:
        * src/thbrk/brk-ctype.h:
        * src/thbrk/brk-maximal.c:
        * src/thbrk/brk-maximal.h:
        * src/thbrk/thbrk.c:
        * src/thcell/thcell.c:
        * src/thcoll/cweight.c:
        * src/thcoll/cweight.h:
        * src/thcoll/thcoll.c:
        * src/thctype/thctype.c:
        * src/thctype/wtt.c:
        * src/thinp/thinp.c:
        * src/thrend/thrend.c:
        * src/thstr/thstr.c:
        * src/thwbrk/thwbrk.c:
        * src/thwchar/thwchar.c:
        * src/thwctype/thwctype.c:
        * src/thwstr/thwstr.c:
        * tests/thsort.c:
          - Replace my e-mail address with the Gmail one.

2015-05-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        More LIKELY/UNLIKELY hints.

        * src/thbrk/brk-maximal.c (brk_recover):
          - Add UNLIKELY to recovery history hits, reducing time by 0.03%

2015-05-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Split LIKELY/UNLIKELY to a separate header.

        This prevents modules from depending on brk-common.h,
        which provides low-level APIs for breaker backends.

        * src/thbrk/Makefile.am, src/thbrk/brk-common.h
          +src/thbrk/thbrk-utils.h:
          - Move LIKELY/UNLIKELY macro definitions from brk-common.h
            to a new header thbrk-utils.h
        * src/thbrk/brk-common.c, src/thbrk/brk-maximal.c, src/thbrk/thbrk.c:
          - Include thbrk-utils.h instead of brk-common.h for LIKELY/UNLIKELY.

2015-05-04  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        More LIKELY/UNLIKELY hints.

        * src/thbrk/thbrk.c (th_brk_line):
          - Add UNLIKELY() on error conditions.

        Note: adding UNLIKELY() to th_brk() first if-statement makes it
        slower, which is weird. So, not added there.

2015-05-02  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Bump library revision, due to code change.

2015-05-02  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt: Add words.

2015-04-30  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Catch error on break hints allocation.

        * src/thbrk/brk-maximal.c (brk_maximal_do):
          - Do not continue if brkpos_hints allocation fails.

2015-04-30  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Do TIS-to-Unicode conversion only once on word breaking.

        * src/thbrk/brk-maximal.c (brk_maximal_do):
          - Convert input string to Unicode before passing to
            brk_maximal_do_impl().
        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, brk_recover,
          brk_recover_try):
          - Redeclare to accept wide char string.
          - Do not call th_tis2uni() on every input char.

        This appears to reduce word breaking time by 0.28% on test case.
        Thanks edgehogapp@gmail.com for the suggestion.
        https://groups.google.com/forum/#!topic/thai-linux-foss-devel/Be-OLMRYF7M

2015-04-29  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Bump doxygen required version.

        * configure.ac:
          - Bump doxygen required version to 1.8.8, according to recent
            Doxyfile update.

2015-03-07  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Also check for 'trietool' (without -0.2 suffix)

        * configure.ac:
          - Check for both trietool-0.2 (for libdatrie < 0.2.9) and
            trietool (for libdatrie >= 0.2.9) utility.

2015-03-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update Doxyfile.

        * doc/Doxyfile.in:
          - Updated for doxygen 1.8.8 with 'doxygen -u'.

2015-03-06  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix compiler warning.

        * src/thbrk/brk-maximal.c (brk_recover):
          - Initialize last_brk_pos on declaration.

2015-02-05  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Disable timestamp in Doxygen-generated doc.

        * doc/Doxyfile.in:
          - Set HTML_TIMESTAMP to NO to make the document reproducible.
            (reported by Debian Reproducible)

2015-02-04  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Micro-optimize with likely/unlikely hints.

        * src/thbrk/brk-common.h:
          - Add LIKELY() and UNLIKELY() macros based on compiler extension.
        * src/thbrk/brk-common.c (brk_get_dict):
        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, brk_root_pool,
          brk_shot_init, brk_pool_node_new, best_brk_new):
          - Use LIKELY() and UNLIKELY() where it is known to be so, mostly
            for one-time initialization and failure handling.

        Callgrind says it does help speed up a little bit.

2014-12-16  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Update word break dictionary.

        * data/tdict-city.txt:
        * data/tdict-collection.txt:
        * data/tdict-common.txt:
        * data/tdict-country.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt: Add words.

2014-08-23  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac: Post-release version suffix added.

2014-08-21  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * configure.ac, NEWS:
        === Version 0.1.21 ===

2014-08-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Be more careful about CFLAGS.

        * src/Makefile.am:
          - Add $(DATRIE_CFLAGS) to CFLAGS so that thbrk/brk-common.h
            included from libthai.c can safely find datrie/trie.h header.

2014-08-19  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Fix build failure due to missing header.

        * src/Makefile.am:
          - Add CFLAGS so that thbrk/brk-common.h included from libthai.c
            can find thai/thctype.h header.

2014-08-18  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2014-08-09  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        thbrk: Be greedy when recovering from error.

        * src/thbrk/brk-maximal.c (brk_recover_try):
          - Loop to match as many words as possible on every node picked
            from pool, to increase the chance of early sufficient words
            matched, and to avoid too much possibility exploration.

2014-08-09  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Minor optimization.

        Callgrind says brk_recover_try() is the most frequently called.
        So, try to optimize it as we can.

        * src/thbrk/brk-maximal.c (brk_recover, brk_recover_try):
          - Only return the last break position instead of all.
        * src/thbrk/brk-maximal.c (brk_recover_try):
          - Remove unneeded assignment on is_terminal for the case in which
            its value is irrelevant.
          - Remove unneeded check on is_terminal where its value is known.

2014-08-09  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * src/thbrk/brk-maximal.c:
          - Add missing #include <limits.h>.

2014-08-05  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Code clean up.

        * src/thbrk/brk-maximal.c (brk_shot_init):
          - Split assignment and if-condition.
        * src/thbrk/brk-maximal.c (brk_pool_free_node -> brk_pool_node_free):
          - Rename the function to obj-action form, in accordance with
            brk_pool_node_new().
          - Add forward declaration for it.

2014-08-04  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Refactor common thbrk code into brk-common.

        This prevents mutual dependency between brk-* and thbrk.

        * src/thbrk/Makefile.am:
        * src/thbrk/thbrk-private.h -> src/thbrk/brk-common.h:
          - Rename file, as thbrk-private.h contains only functions for
            common brk-* codes.
          - Rename thbrk_* functions back to brk_*.
        * src/thbrk/Makefile.am:
        * src/thbrk/thbrk.c:
        * +src/thbrk/brk-common.c:
          - Move common thbrk_* functions implementations to brk-common.c.
          - Rename the functions according to changes in brk-common.h.
        * src/thbrk/brk-maximal.c:
          - Update #include for thbrk-private.h to brk-common.h.
          - Update calls to thbrk_* to brk_*.
          - Remove #include's previously used by the common code.
        * src/libthai.c (_libthai_on_unload):
          - Update #include for thbrk-private.h to brk-common.h.
          - Update call to thbrk_on_unload() to brk_on_unload().

2014-08-03  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move brk_get_dict() to common thbrk code.

        * src/thbrk/brk-maximal.c, src/thbrk/thbrk-private.h:
          - Move brk_get_dict() declaration to thbrk-private.h.
          - Rename the function to thbrk_get_dict() for consistency.
        * src/thbrk/brk-maximal.c, src/thbrk/thbrk.c:
          - Move implementation of brk_get_dict() to thbrk.c.
          - Rename function & variable accordingly.
        * src/thbrk/brk-maximal.c (brk_root_pool):
          - Rename function call to thbrk_get_dict().
        * src/thbrk/brk-maximal.h, src/thbrk/brk-maximal.c,
          src/thbrk/thbrk.c:
          - Move implementation of brk_maximal_on_unload() to
            thbrk_on_unload(). 
          - Remove brk_maximal_on_unload() which is no longer needed.

2014-08-03  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Rename th_brkpos_hints() to thbrk_brkpos_hints().

        * src/thbrk/thbrk-private.h, src/thbrk/thbrk.c,
          src/thbrk/brk-maximal.c:
          - Change function prefix for consistency.

2014-08-03  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        Move th_brkpos_hints() to common thbrk code.

        This is a preparation for alternative word break algorithms.
        
        * src/thbrk/brk-maximal.c, src/thbrk/thbrk-private.h:
          - Move declaration of th_brkpos_hints() to thbrk-private.h.
        * src/thbrk/brk-maximal.c:
          - Include thbrk-private.h to get th_brkpos_hints() declaration.
        * src/thbrk/brk-maximal.c, src/thbrk/thbrk.c:
          - Move implementation of th_brkpos_hints() to thbrk.c.

2014-07-31  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-lang-ethnic.txt: Add words.

2014-06-30  Theppitak Karoonboonyanan  <theppitak@gmail.com>

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-geo.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

        * data/tdict-std.txt:
          - Remove rare word 'จอแส' which causes wrong segmentation for 'จอแสดงผล'
            as 'จอแส|ดง|ผล'.

2014-03-06  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-spell.txt: Add words.

        * data/tdict-common.txt:
          - Remove 'บ๊วย' which duplicates an entry in tdict-std.txt.
        * data/tdict-proper.txt, data/tdict-district.txt:
          - Move 'กรือเซะ' from tdict-proper.txt to tdict-district.txt.
        * data/tdict-proper.txt, data/tdict-geo.txt:
          - Move 'แอตแลนติส' from tdict-proper.txt to tdict-geo.txt.

2014-01-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix warning in test suite.

        * tests/test_thbrk.c (main):
          - Fix compiler warning on unused return value from fgets().
            Caught by debian package building with test suites enabled.

2013-12-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt, data/tdict-std.txt:
          - Move 'ชุติมา' from -std-compound to -std.

2013-12-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2013-12-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2013-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.ac, NEWS:
        === Version 0.1.20 ===

2013-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix warnings in tests.

        * tests/test_thwbrk.c (main):
          - Do some useful checks for 'unicodeCutCodeLength' unused var.
          - Cast (size_t) returned value of wcslen() to (long) and use "%ld"
            format to print it.
          - Remove trailing spaces in source.

2013-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix warnings in tests.

        * tests/test_thwchar.c (main):
          - Cast (thchar_t *) to (char *) to fix signedness differences.
          - Cast (thwchar_t) to (unsigned long) for "%lx" string format.
          - Cast (size_t) return values from wcslen() and strlen() to long,
            and use "%ld" format to print them.
          - Replace 'outputLength' var with 'tisLength' and 'uniLength'
            and do some useful checks on return values of th_tis2uni_line()
            and th_uni2tis_line().

2013-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix warnings in tests.

        * tests/test_thinp.c (test_th_validate):
          - Cast (thchar_t *) to (char *), to fix signedness differences.
        * tests/thsort.c (readData):
          - Cast (size_t) to (long) and use "%ld" format to print it.
          - Redeclare maxData from int to size_t, to match that of nData.

2013-10-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * README: Remove version-specific text.

2013-10-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-geo.txt:
        * data/tdict-history.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt: Add words.

2013-09-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2013-09-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Check for doxygen required version.

        * configure.ac:
          - When doxygen-doc is enabled, also check doxygen version.

2013-09-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Update Doxyfile.

        * doc/Doxyfile.in:
          - Updated with 'doxygen -u'.

2013-09-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix automake warnings.

        * src/thbrk/Makefile.am:
        * src/thcell/Makefile.am:
        * src/thcoll/Makefile.am:
        * src/thctype/Makefile.am:
        * src/thinp/Makefile.am:
        * src/thrend/Makefile.am:
        * src/thstr/Makefile.am:
        * src/thwbrk/Makefile.am:
        * src/thwchar/Makefile.am:
        * src/thwctype/Makefile.am:
        * src/thwstr/Makefile.am:
        * tests/Makefile.am:
          - Replace deprecated INCLUDES with AM_CPPFLAGS.

2013-08-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt: Add words.

        * data/tdict-std.txt: Remove 'พาส' whose use is rare and which
        potentially causes ambiguity like in 'พาสมองเสื่อม'.

2013-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2013-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Remove compound words that potentially cause ambiguity.

        * data/tdict-std-compound.txt:
          - Remove 'มีหน้า' which can cause 'มีหน้า|ที่' instead of 'มี|หน้าที่'.
          - Remove 'ลืมตา' which can cause 'ลืมตา|มหา' instead of 'ลืม|ตาม|หา'.

2013-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2013-01-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.ac, NEWS:
        === Version 0.1.19 ===

2013-01-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Modernize autoconf & switch to XZ tarball compression.

        * configure.in -> configure.ac:
          - Rename file for modern autoconf.
          - Replace deprecated AC_INIT() form with PACKAGE, VERSION form.
          - Use AC_CONFIG_SRCDIR() instead for the old AC_INIT() form.
          - Add AC_CONFIG_MACRO_DIR().
          - Replace deprecated AC_INIT_AUTOMAKE() form with OPTIONS form,
            passing "dist-xz no-dist-gzip" options to switch to XZ tarball.

        * Makefile.am:
          - Add "-I m4" to ACLOCAL_AMFLAGS, as suggested by libtool.

2013-01-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Change th_validate() default level back to ISC_STRICT.

        * src/thinp/thinp.c (th_validate):
          - Change ISC level back from ISC_BASICCHECK to ISC_STRICT.
            ISC_BASICCHECK fails 'make check', and the previous value
            ISC_STRICT should be better for general input with correction.

2013-01-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-science.txt: Fix typo.

2013-01-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-science.txt:
        * data/tdict-geo.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-district.txt: Add words.

        * data/tdict-std-compound.txt: Drop loose compound 'สว่างไสว'.

2012-11-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Add input method API for correction with levels.

        * include/thai/thinp.h:
        * src/libthai.def:
        * src/libthai.map (+th_validate_leveled):
          - Add API for input validation with strictness arg.
        * src/thinp/thinp.c (th_validate, th_validate_leveled):
          - Convert old th_validate() code to th_validate_leveled() and replace
            the hard-coded ISC_STRICT with the arg.
          - Make the old th_validate() a wrapper to th_validate_leveled() with
            default param (ISC_BASICCHECK, not ISC_STRICT, though).
        * configure.in:
          - Bump library versions to reflect the added API.

2012-11-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-ict.txt:
        * data/tdict-lang-ethnic.txt: Add words.

2012-10-16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-district.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt: Add words.

2012-07-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Doxyfile.in: Upgrade to doxygen 1.8.1.2 format.

2012-07-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt: Add words.

2012-07-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Doxyfile.in: Upgrade to doxygen 1.8.1.2 format.

2012-06-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2012-06-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, NEWS:
        === Version 0.1.18 ===

2012-06-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-lang-ethnic.txt:
        * data/tdict-proper.txt: Add words.

2012-06-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Remove some prefix-words as found during
          working on thailatex hyphenation.

2012-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-ict.txt: Add words.

2012-06-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Belated post-release version suffix added.

2012-06-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-city.txt:
        * data/tdict-common.txt:
        * data/tdict-ict.txt:
        * data/tdict-proper.txt:
        * data/tdict-spell.txt: Add words.

2012-03-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt, data/tdict-std.txt: Fix typos.

2012-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt: Add words.

2012-02-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, NEWS:
        === Version 0.1.17 ===

2012-02-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Bump library revision, due to code change.

2012-02-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thbrk.c, tests/test_thwbrk.c: Add acronym to the tests.

2012-02-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-spell.txt:
        * data/tdict-ict.txt:
        * data/tdict-common.txt: Add words.

2012-02-20  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_brk): Do not break last Thai chunk with
        dictionary if it's acronym.

2012-02-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-spell.txt:
        * data/tdict-common.txt: Add words.

        * data/tdict-geo.txt: Fix typo.

2012-02-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-spell.txt:
        * data/tdict-district.txt:
        * data/tdict-common.txt: Add words.

2012-02-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_brk): Handle Thai acronyms by detecting
        groups of <= 3 Thai characters + '.'. Thanks John Tapsell for
        the report and initial patch.

2012-02-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thrend/thrend.c (th_render_cell_): Reformat source a little bit.

2012-01-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-ict.txt:
        * data/tdict-common.txt: Add words.

        * data/tdic-proper.txt, data/tdict-history.txt: Move "ศรีวิชัย" to
        -history.

2012-01-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, NEWS:
        === Version 0.1.16 ===

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in:
          - Remove remaining '$Id'.
          - Remove unnecessary AC_SUBST(VERSION).

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * -TODO: Removed, the plan is obsolete.

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * README: Update project URL & e-mail.
        * configure.in: Use googlegroups as bug report address.

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Add bug report address.

2011-11-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-spell.txt:
        * data/tdict-common.txt: Add words.

        * data/tdict-country.txt: Use more popular short name for Saudi Arabia.

2011-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt, data/tdict-city.txt: "ไดฟุกุ" is city name.

2011-10-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-science.txt:
        * data/tdict-common.txt: Add words.

2011-09-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-common.txt: Add words.

        * data/tdict-std.txt: Remove "มาย" which is rare but can potentially
        cause ambiguity (e.g. "มายกร่าง"). A valid compound, "เมามาย" is
        already in tdict-std-compound.txt.

2011-07-19  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-common.txt: Add words.

        * data/tdict-std-compound.txt: Remove loose compound.

        * data/tdict-std.txt:
          - Remove rare words which potentially cause ambiguities.
          - Remove a duplicated entry.

2011-06-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-geo.txt:
        * data/tdict-ict.txt:
        * data/tdict-spell.txt:
        * data/tdict-common.txt:
        * data/tdict-lang-ethnic.txt: Add words.

2011-06-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2011-03-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, NEWS:
        === Version 0.1.15 ===

2011-03-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
        * data/tdict-district.txt:
        * data/tdict-common.txt: Add words.

2011-03-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-science.txt:
        * data/tdict-spell.txt:
        * data/tdict-district.txt:
        * data/tdict-common.txt: Add words.

2011-03-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-district.txt:
        Move 2 names from proper, district to history.

        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-district.txt:
        * data/tdict-common.txt: Add words.

2011-03-20  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-district.txt:
        * data/tdict-history.txt:
        Move "หริภุญชัย" from district to history list.

        * data/tdict-city.txt:
        Change "ฟูกุโอกะ" to "ฟูกูโอกะ", which is statistically more popular.

        * data/tdict-history.txt:
        * data/tdict-proper.txt:
        * data/tdict-city.txt:
        * data/tdict-science.txt:
        * data/tdict-geo.txt:
        * data/tdict-spell.txt:
        * data/tdict-common.txt:
        Add words.

2011-03-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Split historical names out of tdict-city.txt and tdict-district.txt.

        * data/Makefile.am:
        * +data/tdict-history.txt:
        * data/tdict-city.txt:
        * data/tdict-district.txt:
        Split historical names into tdict-history.txt.

        * data/tdict-city.txt:
        * data/tdict-geo.txt:
        * data/tdict-lang-ethnic.txt:
        Move 2 names from tdict-city.txt to tdict-geo.txt and
        tdict-lang-ethnic.txt.

2011-03-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Split tdict-country.txt and tdict-city.txt out of tdict-geo.txt
        and let tdict-geo.txt keeps only geographical names.

        * data/Makefile.am:
        * +data/tdict-country.txt:
        * +data/tdict-city.txt:
        * data/tdict-geo.txt:
          - Split country names into tdict-country.txt
          - Split city names into tdict-city.txt

        * data/tdict-geo.txt:
        * data/tdict-lang-ethnic.txt:
          - Split language/etchnic names into tdict-lang-ethnic.txt

2011-03-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-proper.txt:
        * data/tdict-common.txt:
        * data/tdict-geo.txt: Add words.

2011-03-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-spell.txt:
        * data/tdict-proper.txt:
        * data/tdict-common.txt:
        * data/tdict-geo.txt: Add words.

2011-03-09  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-ict.txt:
        * data/tdict-district.txt:
        * data/tdict-common.txt:
        * data/tdict-science.txt: Add words.

2010-12-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Adjust dictionary, as per Widhaya's feedback:
        http://groups.google.com/group/thai-linux-foss-devel/browse_thread/
        thread/986f74d786c9bace

        * data/tdict-std-compound.txt:
        * data/tdict-std-common.txt:
          - Remove some compounds that may cause potential ambiguities.
        * data/tdict-spell.txt:
        * data/tdict-common.txt:
          - Add words.

2010-12-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{common,geo}.txt: Add words.

2010-05-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{district,common,science}.txt: Add words.

2010-03-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

        Turn off manpages generation
        * doc/Doxyfile.in: Turn GENERATE_MAN off.
        * doc/Makefile.am: Remove man targets.

2010-02-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Bump library revision.

        * configure.in, NEWS:
        === Version 0.1.14 ===

2010-02-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,proper,common}.txt: Add words.

2010-02-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thcoll/cweight.c (char_weight_tbl_): Replace TIS-620 characters
        in comments with character names.
        * src/thctype/thctype.c (_th_ctype_tbl, _th_chlevel_tbl): Remove
        non-TIS-620 characters from comments. Convert source to UTF-8.

2010-02-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_get_dict): Limit path[] scope.

2010-02-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_get_dict): Print some warning when
        dictionary opening fails.

2010-02-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_get_dict): Do not try to open dictionary
        again if once tried. Multiple failing trials degraded performance.

2010-02-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/*.h, src/*.c, src/*/*.c: Add my e-mail address to
        license header as the contact address.

        * src/thctype/wtt.c,
        * src/thctype/thctype.c,
        * src/thcoll/cweight.h,
        * src/thcoll/cweight.c,
        * src/thwctype/thwctype.c:
        Add editor modeline.

2010-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thinp/thinp.c,
        * src/thrend/thrend.c,
        * src/thcoll/thcoll.c,
        * src/thcoll/cweight.c,
        * src/thwstr/thwstr.c,
        * src/thwchar/thwchar.c,
        * src/thwbrk/thwbrk.c,
        * src/thstr/thstr.c,
        * src/thcell/thcell.c:
        Reformat source. Add editor modeline.

2010-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/thsort.c: Yet another GPL header leftover removal.
        Update my e-mail address.

2010-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Replace <thai/tis.h> with a rewritten one, so we can enforce the
        license.

        * include/thai/tis.h:
        Rewritten based on Unicode names, with TIS_ prefix.

        * src/thinp/thinp.c (corrections, th_validate),
        * src/thrend/thrend.c (shiftdown_tone_ad, shiftdownleft_tone_ad,
          shiftleft_tone_ad, shiftdown_bv_bd, tailcutcons, th_render_cell_,
          th_render_cell_tis),
        * src/thbrk/brk-maximal.c (th_brkpos_hints),
        * src/thcell/thcell.c (th_next_cell, th_prev_cell),
        * tests/test_thcell.c (test_ans_nodecomp_am, test_ans_decomp_am):
        Update character names to the new TIS_* ones.

2010-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/*.h, src/*.c, src/*/*.c,
        * Makefile.am, include/Makefile.am, include/thai/Makefile.am,
        * src/Makefile.am, src/*/Makefile.am,
        * tests/*.c, tests/*.sh,
        * tests/Makefile.am,
        * data/Makefile.am,
        * man/template.3, man/man3/*.3,
        * man/Makefile.am, man/man3/Makefile.am:
        Remove CVS $Id in all files.

        * src/thctype/wtt.c: Fix file name in comment.

2010-02-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/*.h, src/*.c, src/*/*.c: Add license header to every
        source file.

2010-02-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Makefile.am: The added *.c dependencies must be from src/*/*.c,
        not include/thai/*.c. Silly copy-and-paste error.

2010-02-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Makefile.am: Add *.c to doxygen.stamp dependency, as the doc
        comments have been moved there.

2010-02-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_root_pool): Fail if brk_get_dict()
        returns NULL.

2010-02-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,proper,common,science}.txt: Add words.

2010-01-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thcoll/cweight.c, src/thcoll/cweight.h, src/thcoll/thcoll.c:
        Remove GPL header left over. The library is LGPL.

2010-01-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/brk-maximal.c (brk_root_pool): Fail if brk_pool_node_new()
        returns NULL.
        * src/brk-maximal.c (brk_maximal_do_impl): Fail if best_brk_new()
        returns NULL.

2010-01-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

2010-01-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Bump library revision.

        * configure.in, NEWS:
        === Version 0.1.13 ===

2010-01-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Add 'AC_CONFIG_MACRO_DIR([m4])' for the new libtool.

2010-01-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thwchar/thwchar.c (th_tis2uni_line, th_uni2tis_line):
        Fix type of 'result' argument to match that in header file, so
        doxygen recognizes and generates doc for it.

2010-01-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{proper,common}.txt: Add words.

2010-01-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h, src/thctype/thctype.c: Replace non-portable
        isascii() with most-significant bit check.

2010-01-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{common,geo}.txt: Add words.

2010-01-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thailib.h, src/libthai.c: Move more doc comments.

2010-01-09  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Move documentation from *.h to *.c, so libthai developers have the doc
        at hand. Users can still read the doxygen-generated doc BTW.

        * include/thai/*.h, src/*/*.c: Move doc comments from *.h to *.c.
        * doc/Doxyfile.in: Set INPUT to @top_srcdir@.

2010-01-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{proper,common,geo}.txt: Add words.

2010-01-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_shot_init):
        Return failure/success status.
        * src/thbrk/brk-maximal.c (brk_pool_node_new):
        Check & handle return code from brk_shot_init().

2010-01-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thwbrk/thwbrk.c (th_wbrk, th_wbrk_line):
        Rewritten, for harmony with the rests of the source, plus potential
        integer overflow vulnerability removed.

2010-01-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix potential integer overflow vulnerabilities.
        Thanks Tim Starling <tstarling@wikimedia.org> for pointing out.

        * src/thbrk/thbrk.c (th_brk_line): Return zero if malloc size overflows
        or malloc fails.
        * src/thbrk/brk-maximal.c (best_brk_new): Return NULL if malloc size
        overflows.

2009-08-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

        * data/tdict-std-compound.txt: Remove loose compounds.
        * data/tdict-{ict,district,proper,common,science,lang-ethnic,geo}.txt:
        Add words.

2009-06-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Bump library revision.

        * configure.in, NEWS:
        === Version 0.1.12 ===

2009-06-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt: Remove loose compounds.

2009-06-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt: Remove loose compounds.
        * data/tdict-{ict,district,proper,common,science,geo}.txt: Add words.

2009-06-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, best_brk_contest): 
        Back out weighted scoring for solution contest, as it sometimes tries
        too hard to minimize word count, even though another solution with more
        known words can match more text and results in smaller unknown zone.
        Accidental words problem, which this scheme tried to address, has
        already been alleviated with increased recovery threshold.

2009-06-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl): Add break pos at
        string end and let it enter the contest, instead of backing it out by
        moving back str_pos as done in previous commit. That commit just
        missed the point. Doing the right thing also guarantees consistency
        with the case when some text of valid words is appended to the string.

2009-06-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl): Set str_pos for cases
        that fail at string end back to the last progress position, to prevent
        it from wrongly winning the contest over some good candidates.

2009-06-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/tkbrk/brk-maximal.c (RECOVERED_WORDS): Increase recovery
        threshold, 2 is too few and can trigger wrong recovery position too
        easily.

2009-06-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am, +data/tdict-lang-ethnic.txt: Add a new category.
        * data/tdict-{common,geo}.txt, data/tdict-lang-ethnic.txt:
        Move some words to the new category.
        * data/tdict-{lang-ethnic,ict,spell,proper,common,science,geo}.txt:
        Add words.
        * data/tdict-std.txt: Remove a duplicated compound.

2009-06-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (best_brk_contest): Compare penalties with
        '<=' like in previous code, instead of '<', to retain longest-matching
        effect in case of equal scores.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt: Remove loose compounds.
        * data/tdict-{common,proper}.txt: Move a proper noun to tdict-proper.
        * data/tdict-{ict,spell,district,proper,common,science,geo}.txt:
        Add words.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, best_brk_contest): 
        Use weighted scoring, rather than parameters prioritization, to choose
        better solution.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl): When recovering from
        error, try to recover from the position next to the last break,
        rather than right at the crash position. We care the input string,
        not what it's being partially matched against.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_recover): When checking a character in
        text, brk pos returned from brk_recover_try() are relative to
        'text + p', not 'text'.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Split normal word break and recovery routines apart.

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl, +brk_recover_try):
          - Split brk_maximal_do_impl() into itself with (do_recover == 1) and
            brk_recover_try() with (do_recover == 0), for logic simplification.
          - Strip unnecessary tasks like best break contests and penalties from
            brk_recover_try(). All it needs is existence of a solution,
            regardless of its quality.
          - Use memcpy() to copy brk pos arrays instead of for loop.
        * src/thbrk/brk-maximal.c (brk_maximal_do, brk_recover):
          - Adjust calls to brk_maximal_do_impl() and brk_recover_try()
            according to the changed prototypes.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl): Add one missing change
        for last commit.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maximal_do_impl): Update 'shot' after
        'node' is changed, instead of referencing through the possibly new
        'node' value, for code readability.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Beautify code.

        * src/thbrk/brk-maximal.c (th_brkpos_hints): Adjust indents.
        * src/thbrk/brk-maximal.c (brk_recover): Adjust brackets.

2009-06-10  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_brkpos_hints): Add check for cases like
        'เฉพาะ'.

2009-06-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Remove obsolete Win32 checking stuffs.

2009-06-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Add symbol versioning.

        * configure.in: Check for -version-script support in linker.
        * +src/libthai.map: Add symbol map.
        * src/Makefile.am:
          - Conditionally supply -version-script, if supported, or
            -export-symbols otherwise, to linker.
          - Conditionally specify libthai.map or libthai.def as libthai.la
            dependency, according to corresponding linker option applied.
          - Include libthai.map in EXTRA_DISTS.

2009-06-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_brkpos_hints):
        Fix comment style to C, not C++.

2009-06-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix wrong case of syllable like 'ช็อก'.

        * src/thbrk/brk-maximal.c (th_brkpos_hints):
          - The case of SARA E/AE with next third character as MAITAIKHU should
            not apply when the MAITAIKHU is followed by O ANG or WO WAEN.
            That's a signature of new syllable, such as 'ช็อก'.
          - Add the case of syllable like 'ช็อก' or 'ช็วก'.

2009-06-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Refactor so brk hints is prepared only once per brk_maximal_do() call.

        * src/thbrk/brk-maximal.c (brk_maximal_do, +brk_maximal_do_impl):
        Split implementation code into _impl() function, and let the
        original brk_maximal_do() be a wrapper doing necessary preparations.

        * src/thbrk/brk-maximal.c (brk_recover):
        Call brk_maximal_do_impl() instead of brk_maximal_do(), passing the
        appropriate brk hints subarray to it.

        * src/thbrk/brk-maximal.{c,h} (brk_maximal_do):
        * src/thbrk/thbrk.c (th_brk):
        Drop the do_recover arg from brk_maximal_do(), as it's now a wrapper
        which can seed initial condition for the mutual recursion.

        * src/thbrk/brk-maximal.c (th_brkpos_hints): Add prototype.

2009-06-04  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_isleadable -> th_brkpos_hints):
          - Turn simple leadable check into a pre-processed break position
            hinting. Instead of doing the complicated checks on every loop,
            now the clients just check the prepared boolean array.
          - Add more complicated cases, such as Thai composite vowels.

        * src/thbrk/brk-maximal.c (brk_recover):
          - Change prototype to accept brk pos hints, so it doesn't need to be
            recalculated.
          - Drop additional checks of preceeding ldvowel, as it's already
            covered by the brk pos hints.

        * src/thbrk/brk-maximal.c (brk_maximal_do):
          - Pre-calculate brk pos hints on entry, and free it on exit.
          - Check the hints instead of calling the obsolete th_isleadable().
          - Pass the hints to brk_recover().

2009-06-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,proper,common,science,geo}.txt: Add words.

2009-05-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{std-compound,common}.txt: Remove some loose compounds.
        * data/tdict-common.txt: Reorder some words.
        * data/tdict-{ict,proper,common,science,geo}.txt: Add words.

2009-05-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/Makefile.am: Refactor and add sublibs to libthai.la dependencies,
        so the final library gets rebuilt when its sub-libraries are changed.

2009-05-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_isleadable): Consonant following
        MAITAIKHU is not always unleadable, such as after "ก็". So, drop the
        case.

2009-05-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_isleadable): Also check for certain
        vowels like MAITAIKHU, MAIHUNAKAT, SARA UEE in previous cell for
        non-leadable consonants.

        * src/thbrk/brk-maximal.c (brk_maximal_do, brk_recover): Adjust
        th_isleadable() calls according to prototype change.

2009-05-16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (th_isleadable): Prohibit consonants with
        THANTHAKHAT from being leadable.

        * src/thbrk/brk-maximal.c (brk_maximal_do, brk_recover): Adjust
        th_isleadable() calls according to prototype change.

2009-05-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,proper,common,science,geo}.txt: Add words.

2009-05-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am, data/tdict-*.txt: Convert wordlists from TIS-620
        to UTF-8, for easy management with modern tools.

2009-05-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt: Remove some loose compounds.
        * data/tdict-{ict,spell,district,proper,common,science,geo}.txt:
        Add words.

2009-05-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,district,proper,common,science,geo}.txt: Add words.
        * data/tdict-proper.txt: Sort some words properly.

2009-04-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,proper,common,science,geo}.txt: Add words.

2009-04-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version prefix added.

        * data/tdict-{ict,district,proper,common,geo}.txt: Add words.
        * data/tdict-{common,collection}.txt: Move some collection of words
        to appropriate category.

2009-04-06  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Bump library revision.

        * configure.in, NEWS:
        === Version 0.1.11 ===

2009-04-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{ict,district,proper,common,science,geo}.txt: Add words.

2009-03-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version suffix added.

        * libthai.pc.in: Require datrie-0.2 privately, to avoid exposing it
          unnecessarily to applications. This had even caused upgrading problem
          when libdatrie with different soname versions are loaded
          simultaneously, one from the application, and the other from libthai.
          And with libdatrie poor symbols handling, this had caused name clash.
          Thanks Loic Minier for pointing out the cause.

2009-03-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * libthai.pc.in: Requires datrie-0.2 instead of datrie.
        * configure.in: Bump library revision.

        * configure.in, NEWS:
        === Version 0.1.10 ===

2009-03-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tdict-{common,district,ict,proper}.txt: Add words.
        * tdict-std.txt: Remove 2 potentially ambiguous words.

2009-03-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tdict-{district,proper,common,geo}.txt: Add words.
        * tdict-collection.txt: Add another variant of "x" transcription.

2009-03-20  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std-compound.txt: Removed potentially ambiguous word.
        * data/tdict-{ict,district,science}.txt: Add words.

2009-03-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{common,geo,ict,spell}.txt: Add words. Move word from
          -common to -spell as appropriate.

2009-01-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        First SVN commit.

        * data/tdict-{common,geo}.txt: Add words.

2009-01-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt, data/tdict-proper.txt:
        Move more proper nouns from tdict-common.

        * data/tdict-{collection,common,district,geo,ict,proper,science,
        spell}.txt: Add words.

2008-12-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_get_dict):
        Move comment to proper place.

2008-12-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_get_dict):
        Adjust code so that brk_dict is not checked twice for normal cases.

2008-12-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_maxmimal_do):
        Call trie_state_is_single() instead of trie_state_is_leaf() when a
        state is known to be terminal, eliminating redundant check.
        (Requires libdatrie >= 0.1.99.2+cvs20081228)

2008-12-27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c
        (brk_shot_init, brk_shot_reuse, best_brk_contest):
        Use memcpy() to copy arrays, rather than iteration via array index.
        Yet another minor performance improvement.

        * src/thbrk/brk-maximal.c (brk_shot_reuse):
        Re-allocate 'brk_pos' array only when growing, and never bother
        shrinking it.

2008-12-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Reuse break pool nodes more deeply, improving performance a little bit.
        (Requires libdatrie >= 0.1.99.2+cvs20081226)

        * src/thbrk/brk-maximal.c
        (brk_shot_copy -> brk_shot_init, +brk_shot_reuse):
        Split brk_shot_copy() into brk_shot_init() and brk_shot_reuse().
        The former is for newly created nodes, while the latter is for
        reusing old nodes, with memory reallocation minimized.
        * src/thbrk/brk-maximal.c (brk_pool_node_new):
        Separately call brk_shot_init() and brk_shot_reuse() per case.
        * src/thbrk/brk-maximal.c (brk_pool_free):
        Do not destruct BrkShot member. Keep it for further reuses.
        * src/thbrk/brk-maximal.c (brk_pool_allocator_clear):
        ..And actually destruct it here.

        * src/thbrk/brk-maximal.c (brk_root_pool):
        Save one malloc() call for temporary 'root_shot'.

2008-12-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/brk-maximal.c (brk_pool_get_node, brk_maximal_do):
        Get rid of unused arg 's' for brk_pool_get_node().

2008-12-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-ict.txt: Add words.

2008-12-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Add housekeeping routine to clean up dictionary.

        * src/Makefile.am, src/dummy.c -> libthai.c, src/libthai.def:
        Add destructor function in .fini section, to be called on library
        unload.

        * src/thbrk/Makefile.am, +src/thbrk/thbrk-private.h, src/thbrk/thbrk.c
        (thbrk_on_unload):
        Add on-unload function for thbrk module.

        * src/thbrk/brk-maximal.h, src/thbrk/brk-maximal.c 
        (brk_get_dict, brk_maximal_on_unload):
          - Move 'brk_dict' static var from function to file scope
          - Add on-unload function to clean up dictionary

2008-12-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/brk-maximal.c (brk_maximal_do): Adjust if-block a little bit.

2008-12-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{geo,ict}.txt: Add words.

2008-12-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am, +data/tdict-proper.txt, data/tdict-common.txt:
        Split proper nouns from tdict-common.txt into a new list.
        * data/tdict-{common,proper}.txt: Add words

2008-12-16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am:  No need to install 'thbrk.abm' any more.

2008-12-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{common,geo,ict}.txt: Add words.

2008-12-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Switch to libdatrie 0.2. (Requires libdatrie >= 0.1.99.2)

        * configure.in:
          - Check for 'trietool-0.2' binary instead of 'trietool'
          - Check for 'datrie-0.2' pkg-config instead of 'datrie'

        * src/thbrk/brk-maximal.c:
          - Replace 'SBTrie' with 'Trie'
          - Replace 'SBTrieState' with 'TrieState'
          - Replace 'sb_trie_*' function calls with corresponding 'trie_*'
          - For 'sb_trie_state_walk()', also convert TIS-620 char to UCS-4
            before actually walking
          - For 'sb_trie_open()', replace with 'trie_new_from_file()', plus
            dir + path combined

        * data/Makefile.am:
          - Replace '*.br' and '*.tl' targets with '*.tri'
          - Add '-e tis-620' command-line argument to trietool
        * data/Makefile.am, data/thbrk.sbm -> data/thbrk.abm:
          - Replace 'thbrk.sbm' (TIS-620) with 'thbrk.abm' (Unicode)

        * tests/Makefile.am:
          - Add 'libthwchar.la' where 'libthbrk.la' is used, as th_tis2uni()
            is required there

2008-06-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, Makefile.am: Add --disable-dict option to prevent
        dictionary data generation.

2007-10-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h:
        * src/thcell/thcell.c:
        * src/thcoll/cweight.c:
        * src/thcoll/cweight.h:
        * src/thcoll/thcoll.c:
        * src/thctype/thctype.c:
        * src/thctype/wtt.c:
        * src/thinp/thinp.c:
        * src/thrend/thrend.c:
        * src/thstr/thstr.c:
        * src/thwchar/thwchar.c:
        * src/thwstr/thwstr.c: Update my e-mail address.

2007-10-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/libthai.def: List only symbols in plain format, for Mac build.
        Thanks Vee Satayamas for the report.

        * src/Makefile.am: Add libthai.def as libthai_la_DEPENDENCIES.

2007-08-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * NEWS:
        === Version 0.1.9 ===

2007-08-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thbrk.c (main), tests/test_thwbrk.c (main): Update check
        values, according to the new compound words support.

2007-08-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Doxyfile.in: Update for doxygen 1.5.3.

2007-08-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (O Ang - Ho Nokhuk)

        * data/tdict-{common,spell}.txt: Add words.

2007-08-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Ho Hip)

        * data/tdict-{common,geo}.txt: Add words.

2007-08-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (So Sua)

        * data/tdict-{common,district,geo,spell}.txt: Add words.

2007-07-20  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Wo Waen - So Rusi)

        * data/tdict-{common,ict,scicence,spell}.txt: Add words.

2007-07-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Ro Rua - Lu)

        * data/tdict-{common,science}.txt: Add words.

        * data/tdict-district.txt: Move non-province names to the bottom, so
        they are separated from provinces. Add two more names.

2007-07-09  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Mo Ma - Yo Yak)

        * data/tdict-{common,geo,ict,science,spell}.txt: Add words.

2007-07-06  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Pho Phan - Pho Samphao)

        * data/tdict-{common,spell,ict}.txt: Add words.

2007-06-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove rare words. Rearrange and add
        compounds. (Tho Thahan - Fo Fa)

        * data/tdict-{common,spell}.txt: Add words.

2007-06-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Remove more rare words. Move some
        compound words from -std to -std-compound. Add some missing entries
        found. (Restarted from Ko Kai - Tho Thung. We need more space to
        continue adding compounds from last commit.)

        * data/tdict-{common,ict}.txt: Add words.

2007-06-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std[-compound].txt: Add more compound words. Move some
        compound words from -std to -std-compound. Remove some rare entries,
        to make room for more entries. (~80% done)

        * data/tdict-{common,ict}.txt: Add words.

2007-06-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am, +data/tdict-std-compound.txt, data/tdict-std.txt:
        Split compound words into a new file. Selectively add compound words.
        (Half done.)

        * data/tdict-{common,ict,science,spell}.txt: Add words.

2007-06-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_brk): Don't break between CR and LF.
        Remove last break if at string end.

        * tests/test_th[w]brk.c (main): Update test values.

2007-06-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Redesign itemization code for th_brk(), aiming at Unicode UAX #14
        compatiblity.

        * src/thbrk/Makefile.am, +src/thbrk/brk-ctype.{c,h}: Add character
        classification table, as well as operation table for breaking between
        all class combinations.

        * src/thbrk/thbrk.c (th_brk): Rewrite the itemization code, based on
        the break class table.

        * tests/test_th[w]brk.c (main): Update test values.

2007-06-08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version bump.

        * data/tdict-{std,common}.txt: Add words.

2007-03-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * NEWS: Updated.

        === Version 0.1.8 ===

2007-03-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thbrk.c (main), tests/test_thwbrk.c (main): Fix word
        break check values, as white space handling has now been changed.

2007-03-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Add AC_LIBTOOL_WIN32_DLL as required for Win32.

        * src/Makefile.am (libthai_la_LDFLAGS): Always pass -no-undefined to 
        enforce all resolved symbols. Thanks Loïc Minier.

2007-03-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/Makefile.am (EXTRA_DIST, libthai_la_LDFLAGS), +src/libthai.def:
        Add -export-symbols flag to limit exported symbols. Thanks Loïc Minier
        for suggestion.

        * src/thwstr/thwstr.c (th_wthaichunk): Declare the non-extern func as
        static.

2007-03-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-common.txt: Added words.

2007-02-04  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Yet another fix to white space bug in th_brk(), as spotted by
        Suppachoke Santiwitchaya. This is just temporary fix for use while the
        planned redesign does not happen.

        * src/thbrk/thbrk.c (th_brk): Allow break between Thai punct and white
        space.

        * src/thbrk/thbrk.c (is_breakable): Allow break between punct and
        white space. Remove rule that inhibited break between space and
        MAIYAMOK. It was not sufficient anyway, as the space before MAIYAMOK
        was still wrapped.

        * ChangeLog: Fix wrong date in previous commit.

2007-02-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (is_breakable): Allow break before white space.
        This fixes wrong treatment of whitespace in HTML in mozlibthai 
        component, which caused glitches in webpages.

2007-01-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{common,geo,std}.txt: Added words.

2006-10-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version bump.

2006-10-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog: Converted to UTF-8.

        * NEWS: Updated.

        === Version 0.1.7 ===

2006-10-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am: Specify LC_ALL=C to make sure 'sort' always works.

2006-10-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        Fix 'make distcheck', plus a little enhancement on dict location.

        * src/thbrk/brk-maximal.c (brk_get_dict): Try openning dict at
        $LIBTHAI_DICTDIR environment before the default location.

        * tests/Makefile.am, +tests/test-thbrk.sh, +tests/test-thwbrk.sh:
        Added wrapper scripts to call test_th[w]brk programs with
        LIBTHAI_DICTDIR set to trie in build tree.

        * data/Makefile.am (EXTRA_DIST): Do not ship the auto-generated
        tdict.txt in source.

2006-10-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thbrk.c (main), tests/test_thwbrk.c (main): Rearrange
        source. Remove some unnecessary variables. Adjust style. Fix warnings.

2006-10-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thbrk.c (main), tests/test_thwbrk.c (main): Fix checking 
        value for the length of the output from th_[w]brk_line() tests.

2006-10-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Added some compound words.

        * data/tdict-{common,ict}.txt: Added words.

2006-10-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Added some compound words.

        * data/tdict-{common,ict}.txt: Added words.

2006-09-19  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/Makefile.am (libthbrk_la_SOURCES), src/thbrk/thbrk.c,
        +src/thbrk/brk-maximal.{h,c}: Split low-level mechanisms to
        brk-maximal module.

        * -src/thbrk/cttex.c, -src/thbrk/dict2state.c: Removed unused files.

2006-09-19  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Removed rare word (ยาจนก) which potentially
        causes wierd ambiguity. Added some more compound words.

        * data/tdict-{common,ict,spell}.txt: Added words.

2006-09-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * TODO: Updated plan. Cleared what have been done.

2006-09-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Removed rare words (มาระ, มาริ) which
        potentially cause weird ambiguities. Added some more compound words.

        * data/tdict-{common,geo}.txt: Added words.

2006-09-15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Added some compound words.

        * data/tdict-{common,district,geo,ict,spell}.txt: Added words.

2006-09-12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Removed rare word (มมาก) which potentially
        causes ambiguity. Moved entry (มาย) into its compound forms, as it
        alone can cause ambiguity. Added some more compound words.

        * data/tdict-{common,geo,ict,spell}.txt: Added words.

2006-09-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): Used is_breakable() to determine
        breakability at the end of Thai chunk, instead of hard-coded
        condition.

        * src/thbrk/thbrk.c (is_breakable): Added condition for Thai chunk
        ending. Also added condition so text is not breakable right after
        period, comma and semicolon.

        * data/tdict-std.txt: Broke "{เมทิล|เอทิล}แอลกอฮอล์" into two words.

        * data/tdict-{common,geo,science,spell}.txt: Added words.

2006-09-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (is_breakable): Added non-breakable cases:
        space + Mai Yamok; * + {right parenthesis|Khomut|...}.

2006-09-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_brk, is_breakable): Do not break after certain
        punctuations like left quote, left parenthesis, etc., also covering
        Paiyan Yai sequence.

        * data/tdict-common.txt: Removed Paiyan Yai. Added some more words.

2006-09-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Removed rare word (ทิวสะ) that caused weird
        ambiguities. Added some compound words.

        * data/tdict-{common,geo,ict,spell}.txt: Added words.

2006-09-07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-{std,common,district,geo,ict,science,spell}.txt:
        Added words.

2006-09-06  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/tdict-std.txt: Removed two rare words (การก, ผลอ) that caused
        weird ambiguities. Added some compound words.

        * data/tdict-{common,district,geo,ict,science}.txt: Added words.

2006-09-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_recover): Guarded against accessing beyond
        string end.

        * data/tdict-{std,common,geo,ict}.txt: Added more entries.

2006-09-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): Adjusted condition in previous change a
        little bit.

2006-09-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): (Optimization) In recovery mode, stop
        immediately when first solution is found.

2006-09-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_recover, brk_do): (Optimization) Remembered 
        previous recovery result for reuse, cutting off a few repeated
        recoveries at the same position.

        * data/tdict-{std,common}.txt: Added entries.

2006-09-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (best_brk_contest): Adjusted condition so that
        equally scored solution that comes later overrides previous one.
        Longest matching is preferred as a result for such situation.

        * data/tdict-std.txt: Added three more words.

2006-09-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_isleadable): RU and LU are also leadable.
        And don't bother checking for Thai digits. They are never passed.

        * src/thbrk/thbrk.c (brk_do): Fixed wrong choosing of nodes with error
        at end of string. Added penalty for such cases, and made sure the
        break position is not marked.

        * data/tdict-{std,science,ict,common}.txt: Added & removed entries.

2006-09-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * data/Makefile.am, +data/tdict-collection.txt, data/tdict-common.txt:
        Split collection sets into tdict-collection.

        * data/Makefile.am, +data/tdict-spell.txt, data/tdict-std.txt:
        Split common typos or variations into tdict-spell.

        * data/tdict-{std,common,ict,district,geo,science}.txt: Moved more 
        words out of tdict-std. Removed more redundant entries. Fixed typos.
        Added more words.

2006-09-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/Makefile.am (dictdatadir): Added variable missed during
        the tdict split.

        * data/tdict-{std,ict,common}.txt: Moved some words out of tdict-std.
        Removed duplicated and redundant entries. Added some more words.

2006-08-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, Makefile.am, src/thbrk/Makefile.am, +data/Makefile.am,
        src/thbrk/tdict.sbm -> data/tdict.sbm,
        src/thbrk/tdict.txt ->
        data/tdict-{common,district,geo,ict,science,std}.txt: Moved tdict
        generation from source to data directory.

2006-08-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        === merged from datrie_wbrk-branch into HEAD ===

2006-08-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): (Optimization) Unified the recovered
        node immediately. Chance is that it gets superseded, rather than
        picked up in later loop. Rearranged code to eliminate source
        duplications.

2006-08-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): (Optimization) When unifying converted
        nodes, clear all matches rather than just the first.

2006-08-30  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): (Optimization) When successfully
        recovered, stop walking immediately, increasing chance to be
        superseded earlier by better candidate. Also removed unnecessary check 
        for str_pos < len, because it's guaranteed by brk_recover() when return
        value is not -1.

2006-08-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (+brk_pool_allocator_use,
        brk_pool_allocator_clear): Guarded the free list with ref count, for
        thread safety.

        * src/thbrk/thbrk.c (th_brk): Requested to use the break pool
        allocator at the beginning.

2006-08-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_pool_node_new, brk_pool_free_node):
        ~(Optimization) Kept freed BrkPool nodes for reuse in next allocation, 
        reducing calls to malloc().

        * src/thbrk/thbrk.c (+brk_pool_allocator_clear, th_brk): Cleared the 
        free list when work is done.

2006-08-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): Calculated penalty for unrecoverable
        string with (len - recent break), not (strlen(s) - recent break).

2006-08-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in (LT_REVISION): Incremented library revision.

        * src/thbrk/thbrk.c (brk_do): (Optimization) Do not contest best break 
        when trie walking crashes in recover mode. It won't win recovery 
        criterion anyway. Also got rid of one inner loop condition.

2006-08-29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_recover): Do not try to recover after a
        leading vowel.

2006-08-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (th_brk): Tokenized mixed Thai-English text and
        called brk_do() chunk by chunk.

        * src/thbrk/thbrk.c (brk_do, brk_recover): Accepted string and length
        rather than null-terminated string, to support chunk-wise breaking.

2006-08-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_pool_delete): Adjusted code, for tiny
        performance improvement, esp. when deleting first node.

2006-08-25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/tdict.txt: Manually revised word list. Removed some
        archaic or obsolete words. Added some new terms.

2006-08-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c: s/penulty/penalty/. :-P

2006-08-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/thbrk.c (brk_do): Calculated penalty more accurately by
        measuring distance from recent break pos, rather than the crash pos.
        Also added penalty on recovery failure.

        * src/thbrk/thbrk.c (best_brk_contest): Fixed boolean expression by
        adding parentheses.

2006-08-23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * libthai.pc.in: Added datrie to Requires.

        * src/thbrk/Makefile.am: Removed old dict before rebuilding.

        * src/thbrk/thbrk.c (th_brk_line): Added implementation.

        * src/thbrk/thbrk.c (brk_do): Be satisfied with terminal state only if
        the following character can begin a word.

        * src/thbrk/thbrk.c (BrkShot, BestBrk, brk_root_pool, brk_do,
        brk_shot_copy, best_brk_new, best_brk_contest): Added penulty
        on crash recovery, and considered it when contesting shots. This can
        prevent long crash shots from showing up as maximally matched.

2006-08-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        === begin of datrie_wbrk-branch ===

        * configure.in, src/thbrk/Makefile.am, src/thbrk/thbrk.c,
        +src/thbrk/thbrk.sbm: Replaced old thbrk from cttex with my new
        version written from scratch.

2006-08-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Post-release version bump.

2006-08-05  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * NEWS, configure.in:
        Version 0.1.6.

2006-08-05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Update library version info, according to recent API
        additions.

2006-08-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Disable debug by default.

2006-08-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in: Enable doxygen by default.

        * configure.in, doc/Makefile.am: Use htmldocdir variable instead of
        pkgdocdir/docdir. Let default behavior install html under html/ subdir.

        * configure.in, Makefile.am: Exclude man/ subdir, and use
        doxygen-generated man pages instead.

        * doc/Doxyfile.in: Disable SHOW_INCLUDE_FILES, as showing include
        files included from the documented file just confuses readers in the 
        man pages.

2006-08-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h, man/man3/thctype.3: Clarify character level
        2 and 3 in the document.

2006-08-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thinp/thinp.c: Use WTTOp enum instead of int, as per recent
        change in wtt.h

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Makefile.am: Rearrange the man pages.

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Makefile.am, doc/Doxyfile.in: Generate man links and selectively
        install man pages.

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * doc/Makefile.am: Use html.stamp target to prevent unneccessary
        generation of document.

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h: Fix HTML errors in documentation comments.

        * include/thai/thctype.h, man/man3/thctype.3: Fix typo.

        * include/thai/thrend.h: Fix errors in doxygen tags in comments.

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/wtt.h, src/thctype/wtt.c: Add documentation from wtt.3.
        Use enum instead of #define.

        * man/man3/wtt.c: Revised.

2006-08-01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h: Add documentation taken from thctype.3.

        * man/man3/thctype.3: Revised.

        * doc/Doxyfile.in: Append "include" to STRIP_FROM_PATH.

2006-07-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thailib.h: Add main page using content from libthai.3.

        * man/man3/libthai.3: Fix typos.

2006-07-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/{thbrk,thcoll}.h: Fix typos in comments.

        * include/thai/{thwbrk,thwchar,thwcoll,thwctype,thwstr}.h:
        Edit comments for documentation.

        * include/thai/thwctype.h, src/thwctype/thwctype.c: Add missing
        functions corresponding to thctype: th_wcisthdiac,
        th_wcistaillesscons, th_wcisovershootcons, th_wcisundershootcons,
        th_wcisundersplitcons.

2006-07-31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, Makefile.am, +doc/, +doc/Doxyfile.in,
        +doc/Makefile.am: Add document generation with doxygen.

        * include/thai/{thailib,thbrk,thcell,thcoll,thctype,thinp,thrend,
        thstr}.h: Edit comments for documentation.

2006-07-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thcoll/cweight.c (th_char_weight_()): Remove unnecessary check
        of c's range that always yields true.

        * src/thwchar/thwchar.c (uni2thai_ext_()): Fix loop condition that
        always yielded true due to range of data type.

2006-07-03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thinp/thinp.c, src/thrend/thrend.c: Add missing <string.h>.

2006-05-04  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in, src/Makefile.am: Add check and condition for Win32
        build with cygwin/mingw.

2006-03-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * NEWS, configure.in:
        Version 0.1.5.

2006-03-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * tests/test_thwbrk.c: Allocate more buffer for th_brk_line() output,
        fixing bogus bug that blocks the test.

2006-03-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * tests/test_thwbrk.c: Print out the strings in problem when the
        result from th_brk_line() and th_wbrk_line() do not match.

2006-03-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * tests/test_thcell.c: Fix bug in test_th_prev_cell() due to wrong
        variable referencing.

2006-02-18  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * src/tkbrk/Makefile.am: Remove map.c from cttex sources, to fix
        compiling bug caused by building map.o with and without libtool.

2006-02-18  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * configure.in, src/Makefile.am: Add -version-info into LDFLAGS. 
        We start maintaining library version info from now on.

2005-10-28  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * COPYING:  Update FSF address.

2005-10-09  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * configure.in:
        Formatted configure options help strings with AC_HELP_STRING().
        Used --disable/--enable help style rather than --enable with default
        yes or no.

2005-03-15  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * src/thrend/thrend.c:
        Add Mac PUAs for baseless Tho Than and Yo Ying, as well as lowered
        version of lower marks.

        * tests/test_thrend.c:
        Update tester accodingly.

2005-03-02  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/:
        Debug information (default commented out)
        Some new words added to tdict.txt

2005-01-13  Pattara Kiatisevi <ott@linux.thai.net>
        
        * src/thbrk/thbrk.c:
        A space is considered and returned as a breakable point

2004-10-16  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * NEWS, configure.in:
        Version 0.1.4.

2004-10-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * src/thstr/thstr.c (th_normalize):
        Handle char of "Level 3".

        * src/thinp/thinp.c (th_validate):
        Handle correction of char of "Level 3".

2004-10-13  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * src/thcell/thcell.c (th_next_cell):
        Check for acell.hilo before placing repeated SARA AM into the same
        cell.

        * tests/test_thcell.c:
        Add test case for repeated SARA AM.

2004-10-12  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * tests/test_thctype.c (test_bool_funcs):
        Rewrite if-do-while loops with clearer while loops. Get rid of warning
        of range checking.

        * tests/test_thbrk.c, tests/test_thwbrk.c, test_thwchar.c:
        Add missing string.h includes.

2004-10-12  Theppitak Karoonboonyanan <thep@linux.thai.net>

        Handle the case of NIKHAHIT and MAITAIKHU, which can be in either
        above or top level. This behavior is defined as "level 3" in
        th_chlevel() returning value.

        * src/thcell/thcell.c (th_next_cell, th_prev_cell):
        Conditionally place character of weight 3 at above or top level.

        * src/thctype/thctype.h (th_chlevel):
        Document the "level 3".

        * src/thctype/thctype.c (_th_chlevel_tbl):
        Change levels of NIKHAHIT and MAITAIKHU to 3.

        * tests/test_thcell.c, tests/test_thrend.c:
        Add the test cases of NIKHAHIT and MAITAIKHU at top level.

2004-05-15  Pattara Kiatisevi <ott@linux.thai.net>

        * set the mode of cttex to firstmode=1 (we want it fast)

2004-04-08  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * AUTHORS:
        Update e-mail addresses.

2004-02-22  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * tests/test_thrend.c:
        Update check values as per new blank base glyph.

        * NEWS, configure.in:
        Version 0.1.3

2004-01-20  Theppitak Karoonboonyanan <thep@linux.thai.net>

        * include/thai/thrend.h, src/thrend/thrend.c:
        Use TH_BLANK_BASE_GLYPH as a base for floating upper/lower vowels.

2003-09-10  Theppitak Karoonboonyanan <thep@linux.thai.net>

        *** Stop using CVS-generated ChangeLog, as it's hard to read ***

        * include/thai/Makefile.am:
        List the missing thwstr.h.

        * man/man3/Makefile.am:
        Add EXTRA_DIST to include missing man pages.

        * man/template.3, man/man3/*.3:
        Change my e-mail address.

        * tests/test-thcoll.sh:
        Also remove out.txt, to pass 'make distcheck'.

        * TODO:
        Add TODO about normalization rules.

        * NEWS, configure.in:
        Version 0.1.2.

2003-03-23 Sunday 20:26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.55), src/thctype/wtt.c (1.3): Fix TACio_op_[] data
        for (FV1,NON) and (FV1,LV).

2003-03-23 Sunday 20:23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.54), include/thai/thcell.h (1.6),
        src/thcell/thcell.c (1.7): Add th_cell_init() function.

2003-02-02 Sunday 15:45  Pattara Kiatisevi <ott@linux.thai.net>

        * debian/: ex.package.doc-base (1.2), files (1.2),
        libthai0.postinst.debhelper (1.2), libthai0.postrm.debhelper (1.2),
        libthai0.substvars (1.2): -some more bullshits

2003-02-02 Sunday 15:44  Pattara Kiatisevi <ott@linux.thai.net>

        * debian/: conffiles.ex (1.2), cron.d.ex (1.2), emacsen-install.ex
        (1.2), emacsen-remove.ex (1.2), emacsen-startup.ex (1.2), init.d.ex
        (1.2), manpage.1.ex (1.2), manpage.sgml.ex (1.2), menu.ex (1.2),
        postinst.ex (1.2), postrm.ex (1.2), preinst.ex (1.2), prerm.ex
        (1.2), shlibs.local.ex (1.2), watch.ex (1.2): -remove these
        bullshits

2003-02-02 Sunday 15:35  Pattara Kiatisevi <ott@linux.thai.net>

        * debian/: README.Debian (1.1), changelog (1.1), conffiles.ex
        (1.1), control (1.1), copyright (1.1), cron.d.ex (1.1), dirs (1.1),
        docs (1.1), emacsen-install.ex (1.1), emacsen-remove.ex (1.1),
        emacsen-startup.ex (1.1), ex.package.doc-base (1.1), files (1.1),
        init.d.ex (1.1), libthai-dev.dirs (1.1), libthai-dev.files (1.1),
        libthai0.dirs (1.1), libthai0.files (1.1),
        libthai0.postinst.debhelper (1.1), libthai0.postrm.debhelper (1.1),
        libthai0.substvars (1.1), manpage.1.ex (1.1), manpage.sgml.ex
        (1.1), menu.ex (1.1), postinst.ex (1.1), postrm.ex (1.1),
        preinst.ex (1.1), prerm.ex (1.1), rules (1.1), shlibs.local.ex
        (1.1), watch.ex (1.1): -let's debianize it

2002-09-20 Friday 21:40  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * libthai.pc.in (1.2): Fix Cflags to not descend to thai/ subdir in
        include path

2001-10-03 Wednesday 21:52  poonlap

        * man/man3/libthai.3 (1.1): Main manpage.

2001-09-30 Sunday 21:03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.53), configure.in (1.18), include/thai/thwstr.h
        (1.2), src/Makefile.am (1.13), src/thwstr/.cvsignore (1.1),
        src/thwstr/Makefile.am (1.1), src/thwstr/thwstr.c (1.1): Add a
        quick-and-dirty implementation of thwstr.

2001-09-30 Sunday 18:48  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.52), tests/test_thwchar.c (1.4): Add tests for
        uni<->win/mac conversion. Use stderr in output messages.

2001-09-25 Tuesday 19:26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.51), Makefile.am (1.4), configure.in (1.17),
        man/.cvsignore (1.1), man/Makefile.am (1.1), man/man3/.cvsignore
        (1.1), man/man3/Makefile.am (1.1): Add Makefiles for man pages.

2001-09-22 Saturday 15:19  poonlap

        * src/Makefile.am (1.12): Thwbrk is not listed in the
        library(typo-error), fixed.

2001-09-17 Monday 08:53  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * AUTHORS (1.4), ChangeLog (1.50), include/thai/thwinp.h (1.4): Add
        K.Poonlap to AUTHORS. Rename thwciscompose() to thwcisaccept().

2001-09-16 Sunday 21:59  poonlap

        * man/: template.3 (1.1), man3/thctype.3 (1.1), man3/wtt.3 (1.1):
        Create first man pages for thctype.3, wtt.3 Also template.3

2001-09-14 Friday 21:36  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.48), configure.in (1.16), include/thai/thwctype.h
        (1.3), src/Makefile.am (1.11), src/thwctype/.cvsignore (1.1),
        src/thwctype/Makefile.am (1.1), ChangeLog (1.49),
        src/thwctype/thwctype.c (1.1): Add a quick implementation of
        thwctype.

2001-09-14 Friday 21:07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/: test_thbrk.c (1.5), test_thcell.c (1.5): Fix warning.

2001-09-14 Friday 21:05  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.47), src/thwchar/Makefile.am (1.3),
        src/thwchar/hashtbl.c (1.2), src/thwchar/hashtbl.h (1.2),
        src/thwchar/thwchar.c (1.7): Remove hashing. Use simple linear
        search, to get rid of memory leak.

2001-09-14 Friday 20:48  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.46), include/thai/thwchar.h (1.8),
        src/thwchar/thwchar.c (1.6): Use lazy creation for hash tables.

2001-09-14 Friday 00:54  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.45), include/thai/thwchar.h (1.7),
        src/thwchar/Makefile.am (1.2), src/thwchar/hashtbl.c (1.1),
        src/thwchar/hashtbl.h (1.1), src/thwchar/thwchar.c (1.5): Implement
        uni2winthai(), uni2macthai() with hash table added in hashtbl.[ch].

2001-08-22 Wednesday 11:41  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.44), include/thai/wtt.h (1.2), src/thcell/thcell.c
        (1.6), src/thctype/wtt.c (1.2), src/thinp/thinp.c (1.8),
        src/thrend/thrend.c (1.10), src/thstr/thstr.c (1.3),
        src/thwchar/thwchar.c (1.4): Add comments. Check naming convention.
        Refine coding style.

2001-08-14 Tuesday 13:18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.43), NEWS (1.5) (utags: r0_1_1): Release Version
        0.1.1.

2001-08-14 Tuesday 13:16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.42): Prepare to release Version 0.1.1.

2001-08-14 Tuesday 13:14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.ac (1.3): Remove configure.ac.

2001-08-14 Tuesday 13:11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in (1.15), include/thai/thctype.h (1.8), src/dummy.c
        (1.2), src/thbrk/dict2state.c (1.3), src/thcoll/cweight.c (1.3),
        src/thcoll/cweight.h (1.3), src/thinp/thinp.c (1.7),
        src/thstr/thstr.c (1.2) (utags: r0_1_1): Require autoconf 2.50. Add
        --enable-ansi and --enable-debug flags.  Turn on all warnings. Fix
        warnings.

2001-08-13 Monday 13:07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.41), NEWS (1.4), README (1.6, r0_1_1), TODO (1.2,
        r0_1_1), configure.ac (1.2), configure.in (1.14): Version 0.1.1

2001-08-10 Friday 18:09  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.40), src/thrend/thrend.c (1.9, r0_1_1): Merge
        special case of NIKHAHIT with tone/ad in general.

2001-08-10 Friday 18:07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.39), include/thai/thrend.h (1.8, r0_1_1),
        src/thrend/thrend.c (1.8), tests/Makefile.am (1.10, r0_1_1),
        tests/test_thrend.c (1.1, r0_1_1): Add test suite for thrend. Fix
        bugs in thrend: th_chlevel() typo; treat NIKHAHIT and MAITAIKHU
        with shift_left_tone_ad() in th_render_cell(); also shift top-level
        character left when collapsed with NIKHAHIT split from SARA_AM.

2001-08-10 Friday 15:25  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.38), include/thai/thcell.h (1.5, r0_1_1),
        src/thcell/thcell.c (1.5, r0_1_1): Allow null pointer to struct
        thcell_t to be passed in th_next_cell() and th_prev_cell(), where
        no cell data will be written back.

2001-08-09 Thursday 20:33  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.37), tests/test_thcell.c (1.4, r0_1_1),
        tests/test_thstr.c (1.3, r0_1_1): Add header comments.

2001-08-09 Thursday 20:27  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.35), tests/Makefile.am (1.9), ChangeLog (1.36),
        tests/test_thinp.c (1.1, r0_1_1): Add thinp test suite.

2001-08-09 Thursday 18:52  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.34), include/thai/thcell.h (1.4),
        src/thcell/thcell.c (1.4), src/thrend/thrend.c (1.7),
        tests/test_thcell.c (1.3): Change return types and arguments of
        thcell functions to reduce information redundancy.

2001-08-09 Thursday 18:13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.33), tests/test_thcell.c (1.2): Add
        test_th_make_cells().

2001-08-09 Thursday 17:55  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.32), tests/Makefile.am (1.8), tests/test_thcell.c
        (1.1): Add thcell test suite.

2001-08-09 Thursday 00:57  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.31), include/thai/thcell.h (1.3),
        include/thai/thinp.h (1.8, r0_1_1), include/thai/thrend.h (1.7),
        src/thcell/thcell.c (1.3), src/thinp/thinp.c (1.6),
        src/thrend/thrend.c (1.6): Rename struct thcell to struct thcell_t,
        for naming consistency.

2001-08-09 Thursday 00:52  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.30), include/thai/thinp.h (1.7), src/thinp/thinp.c
        (1.5): Change th_validate() to use a cell as context. Define struct
        thinpconv_t for describing input buffer conversion.

2001-08-08 Wednesday 20:58  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.29), include/thai/thcell.h (1.2),
        src/thcell/thcell.c (1.2): Add th_prev_cell().

2001-08-08 Wednesday 19:49  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.28), autogen.sh (1.4, r0_1_1), configure.ac (1.1):
        Add result checking in autogen.sh. Add configure.ac for autoconf
        2.50+.

2001-08-08 Wednesday 19:39  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.27), configure.in (1.13), include/thai/Makefile.am
        (1.5, r0_1_1), include/thai/thcell.h (1.1), include/thai/thrend.h
        (1.6), src/Makefile.am (1.10, r0_1_1), src/thcell/.cvsignore (1.1,
        r0_1_1), src/thcell/Makefile.am (1.1, r0_1_1), src/thcell/thcell.c
        (1.1), src/thrend/thrend.c (1.5): Split thcell functions into a
        separate module.

2001-08-08 Wednesday 11:45  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.26), src/thrend/thrend.c (1.4): Add guards for cells
        without base or hilo char.

2001-08-07 Tuesday 19:43  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.25), src/thinp/thinp.c (1.4): Remove uncommon
        predefined sequence correction.

2001-08-07 Tuesday 19:40  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.24), include/thai/thrend.h (1.5), include/thai/tis.h
        (1.2, r0_1_1), src/thrend/thrend.c (1.3): Fix NULL redefinition in
        tis.h. Change rendering function API to return total glyphs.
        Implement Win/Mac shaping. Implement string rendering functions.

2001-08-07 Tuesday 17:29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.23), include/thai/thrend.h (1.4),
        src/thrend/thrend.c (1.2): Treat SARA_AM cases. Add is_decomp_am
        argument to determine its appearance.  Redefine WTT "cell" for
        decomposed SARA_AM case. Add code for plain TIS rendering with
        SARA_AM concerned.

2001-08-07 Tuesday 16:12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.22), include/thai/thctype.h (1.7),
        src/thctype/thctype.c (1.7, r0_1_1), tests/test_thctype.c (1.2,
        r0_1_1): Add consonant shapes classification in thctype, for the
        use of elegant renderers.

2001-08-06 Monday 21:08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.21), configure.in (1.12), include/thai/thrend.h
        (1.3), src/Makefile.am (1.9), src/thinp/thinp.c (1.3),
        src/thrend/.cvsignore (1.1, r0_1_1), src/thrend/Makefile.am (1.1,
        r0_1_1), src/thrend/thrend.c (1.1): Add partial implementation for
        thrend (cell clustering). Change cell definition (WTT hilo byte
        encoding is too complicated). Use menomic TIS character names in
        thinp.c.

2001-08-05 Sunday 19:42  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.20), include/thai/thinp.h (1.6), src/thinp/thinp.c
        (1.2): Change th_validate() to take more context. Define conversion
        mechanism more deliberately. Implement th_validate().

2001-08-04 Saturday 23:04  Pattara Kiatisevi <ott@linux.thai.net>

        * ChangeLog (1.19, r0_1_0): -before release 0.1.0

2001-08-04 Saturday 22:46  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thailib.h (1.5, r0_1_1, r0_1_0): Resolve conflict.

2001-08-04 Saturday 22:32  Pattara Kiatisevi <ott@linux.thai.net>

        * include/thai/thailib.h (1.4): -sunCC prefers ((thchar_t) ~0) than
        ~((thchar_t) 0) (from P'Thep)

2001-08-04 Saturday 22:26  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thwbrk/thwbrk.c (1.5), tests/test_thbrk.c (1.4) (utags:
        r0_1_1, r0_1_0): -casting

2001-08-04 Saturday 22:11  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/test_thwbrk.c (1.3, r0_1_1, r0_1_0): -casting

2001-08-04 Saturday 22:08  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/test_thwchar.c (1.3, r0_1_1, r0_1_0): -change comments to
        C-style

2001-08-04 Saturday 21:59  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/thbrk.c (1.8, r0_1_1, r0_1_0): -fix missing casting
        between char * and unsigned char *

2001-08-04 Saturday 21:58  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thwchar.h (1.6, r0_1_1, r0_1_0): Remove duplicated
        macro THCHAR_ERR (already defined in thailib.h)

2001-08-04 Saturday 21:45  Pattara Kiatisevi <ott@linux.thai.net>

        * src/: thbrk/thbrk.c (1.7), thwbrk/thwbrk.c (1.4): -change
        comments to C-style :(

2001-08-04 Saturday 21:40  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/test_thbrk.c (1.3): -change comments to C-style :(

2001-08-04 Saturday 21:24  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thstr.c (1.2, r0_1_0): Fix signed/unsigned char
        warning.

2001-08-04 Saturday 20:57  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thctype/thctype.c (1.6, r0_1_0): Remove weird characters.

2001-08-04 Saturday 20:41  Pattara Kiatisevi <ott@linux.thai.net>

        * ChangeLog (1.18): -hmm, do I always need to commit this
        ChangeLog?

2001-08-04 Saturday 20:35  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/test_thwchar.c (1.2): -remove wprintf, useless

2001-08-04 Saturday 20:29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.17), NEWS (1.3, r0_1_0): More detailed info in NEWS.

2001-08-04 Saturday 20:16  Pattara Kiatisevi <ott@linux.thai.net>

        * NEWS (1.2), README (1.5, r0_1_0): -move release information to
        NEWS

2001-08-04 Saturday 20:11  Pattara Kiatisevi <ott@linux.thai.net>

        * README (1.4): -more info in RELEASE INFORMATION

2001-08-04 Saturday 20:07  Pattara Kiatisevi <ott@linux.thai.net>

        * README (1.3), AUTHORS (1.3, r0_1_1, r0_1_0): -more descriptive

2001-08-04 Saturday 20:04  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in (1.11), include/thai/Makefile.am (1.4),
        include/thai/thinp.h (1.5), include/thai/wtt.h (1.1, r0_1_1),
        src/Makefile.am (1.8), src/thctype/Makefile.am (1.2, r0_1_1),
        src/thctype/wtt.c (1.1, r0_1_1), src/thinp/.cvsignore (1.1,
        r0_1_1), src/thinp/Makefile.am (1.1, r0_1_1), src/thinp/thinp.c
        (1.1) (utags: r0_1_0): Add WTT 2.0 tables. Partially implement
        thinp.

2001-08-04 Saturday 18:08  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * AUTHORS (1.2), ChangeLog (1.16), README (1.2), TODO (1.1,
        r0_1_0), configure.in (1.10): Release first version 0.1.0

2001-08-03 Friday 18:20  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.15), src/thbrk/Makefile.am (1.7, r0_1_1, r0_1_0),
        src/thbrk/cttex.c (1.3, r0_1_1, r0_1_0), src/thbrk/thbrk.c (1.6),
        tests/Makefile.am (1.7, r0_1_0): Make thbrk and cttex use thstr
        instead of fixline() and adj().  Fix a memory leak.

2001-08-03 Friday 17:51  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.14), configure.in (1.9), include/thai/Makefile.am
        (1.3), include/thai/thstr.h (1.1, r0_1_1, r0_1_0),
        include/thai/thwstr.h (1.1, r0_1_1, r0_1_0), src/Makefile.am (1.7),
        src/thctype/thctype.c (1.5), src/thstr/.cvsignore (1.1, r0_1_1,
        r0_1_0), src/thstr/Makefile.am (1.1, r0_1_1, r0_1_0),
        src/thstr/thstr.c (1.1, r0_1_0), tests/.cvsignore (1.5, r0_1_1,
        r0_1_0), tests/Makefile.am (1.6), tests/test_thstr.c (1.1): Add
        thstr, thwstr API set. Add th_normalize() implementation (extracted
        from cttex). Fix level table for top characters in thctype.

2001-08-01 Wednesday 20:13  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thwbrk/thwbrk.c (1.3): -new implementation, not convert
        cutCode to tis620 back and forth

2001-08-01 Wednesday 05:21  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/test_thbrk.c (1.2): -cosmetic on error messages

2001-08-01 Wednesday 05:20  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/thbrk.c (1.5): -fix const casting problem

2001-07-31 Tuesday 22:03  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.13), src/thwbrk/thwbrk.c (1.2), tests/test_thwbrk.c
        (1.2): Fix changes affected by the revised thwchar.

2001-07-31 Tuesday 22:01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thwchar/thwchar.c (1.3, r0_1_1, r0_1_0): Revise thwchar.

2001-07-31 Tuesday 20:51  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * tests/test_thctype.c (1.1, r0_1_0): Add test_thctype.c to
        repository.

2001-07-31 Tuesday 20:50  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.12), tests/.cvsignore (1.4): Add .cvsignore entries
        in tests/.

2001-07-31 Tuesday 20:47  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thctype.h (1.6, r0_1_0), src/thctype/thctype.c
        (1.4), tests/Makefile.am (1.5): Add test program for thctype. Fix
        many bugs in thctype.

2001-07-31 Tuesday 18:14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.11), include/thai/thctype.h (1.5),
        src/thcoll/thcoll.c (1.3, r0_1_1, r0_1_0), src/thctype/thctype.c
        (1.3): Refine thctype interface & implementation (remove win/mac
        checking, add combining char checking, fix vowel class bitmasks).
        Make thcoll use thctype.

2001-07-30 Monday 18:43  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thwbrk/.cvsignore (1.1, r0_1_1, r0_1_0): -.cvsignore

2001-07-30 Monday 18:42  Pattara Kiatisevi <ott@linux.thai.net>

        * configure.in (1.8): -add thwbrk

2001-07-30 Monday 18:41  Pattara Kiatisevi <ott@linux.thai.net>

        * tests/: Makefile.am (1.4), test_thwbrk.c (1.1), test_thwchar.c
        (1.1): -test drivers for thwbrk and thwchar

2001-07-30 Monday 18:40  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thwbrk/: Makefile.am (1.1, r0_1_1, r0_1_0), thwbrk.c (1.1):
        -thwbrk implementation

2001-07-30 Monday 18:38  Pattara Kiatisevi <ott@linux.thai.net>

        * src/: Makefile.am (1.6), thwchar/thwchar.c (1.2): -thwchar
        uni2tis620-0 implementation

2001-07-30 Monday 18:37  Pattara Kiatisevi <ott@linux.thai.net>

        * include/thai/: thbrk.h (1.4, r0_1_1, r0_1_0), thwbrk.h (1.3,
        r0_1_1, r0_1_0), thwchar.h (1.5): -add new interfaces and
        descriptions.

2001-07-27 Friday 17:43  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * configure.in (1.7), include/thai/thwchar.h (1.4), src/Makefile.am
        (1.5), src/thwchar/.cvsignore (1.1, r0_1_1, r0_1_0),
        src/thwchar/Makefile.am (1.1, r0_1_1, r0_1_0),
        src/thwchar/thwchar.c (1.1): Add half-implementation of thwchar.

2001-07-27 Friday 17:17  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.10), src/thbrk/.cvsignore (1.4, r0_1_1, r0_1_0),
        tests/.cvsignore (1.3): Update .cvsignore's in accordance with
        test_thbrk

2001-07-27 Friday 17:12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thbrk/Makefile.am (1.6), src/thbrk/test_thbrk.c (1.5),
        tests/Makefile.am (1.3), tests/test_thbrk.c (1.1): Move test_thbrk
        to tests/.

2001-07-25 Wednesday 09:11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * .cvsignore (1.3, r0_1_1, r0_1_0), ChangeLog (1.9),
        include/.cvsignore (1.2, r0_1_1, r0_1_0), include/thai/.cvsignore
        (1.2, r0_1_1, r0_1_0), src/.cvsignore (1.2, r0_1_1, r0_1_0),
        src/thbrk/.cvsignore (1.3), src/thcoll/.cvsignore (1.2, r0_1_1,
        r0_1_0), src/thctype/.cvsignore (1.2, r0_1_1, r0_1_0),
        tests/.cvsignore (1.2): List more auto-generated files to
        .cvsignore's.

2001-07-25 Wednesday 04:31  Pattara Kiatisevi <ott@linux.thai.net>

        * include/thai/thbrk.h (1.3), src/thbrk/test_thbrk.c (1.4),
        src/thbrk/thbrk.c (1.4): -modified the th_brk_line to accept
        cutCode as char* instead of int.  -modified according to the
        changed interface the test program.

2001-07-24 Tuesday 21:23  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * Makefile.am (1.3, r0_1_1, r0_1_0), configure.in (1.6),
        libthai.pc.in (1.1, r0_1_1, r0_1_0): Add pkg-config metadata.

2001-07-24 Tuesday 20:14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * autogen.sh (1.3, r0_1_0): Remove ineffective warning message
        about 'configure'.

2001-07-24 Tuesday 20:00  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/.cvsignore (1.1), include/thai/.cvsignore (1.1),
        src/.cvsignore (1.1), src/thbrk/.cvsignore (1.2),
        src/thcoll/.cvsignore (1.1), src/thctype/.cvsignore (1.1),
        tests/.cvsignore (1.1): Add .cvsignore to subdirs.

2001-07-24 Tuesday 19:51  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * COPYING (1.3, r0_1_1, r0_1_0), src/thbrk/Makefile (1.3): Change
        license to LGPL. Remove excessive Makefile.

2001-07-24 Tuesday 19:49  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * autogen.sh (1.2), configure.in (1.5), src/thbrk/Makefile (1.2):
        Remove 'configure' invoking from autogen.sh, output some message.

2001-07-24 Tuesday 19:41  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * .cvsignore (1.2), COPYING (1.2), ChangeLog (1.8), INSTALL (1.2),
        Makefile.in (1.7), aclocal.m4 (1.3), config.guess (1.2), config.sub
        (1.2), configure (1.4), install-sh (1.2), ltmain.sh (1.2), missing
        (1.2), mkinstalldirs (1.2), include/Makefile.in (1.6),
        include/thai/Makefile.in (1.6), src/Makefile.in (1.6),
        src/thbrk/Makefile.in (1.6), src/thcoll/Makefile.in (1.6),
        src/thctype/Makefile.in (1.5), tests/Makefile.in (1.6): Remove
        autotool-generated files.

2001-07-24 Tuesday 19:31  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * .cvsignore (1.1), Makefile.in (1.6), autogen.sh (1.1),
        include/Makefile.in (1.5), include/thai/Makefile.in (1.5),
        src/Makefile.in (1.5), src/thbrk/Makefile.in (1.5),
        src/thcoll/Makefile.in (1.5), src/thctype/Makefile.in (1.4),
        tests/Makefile.in (1.5): Add .cvsignore and autogen.sh

2001-07-23 Monday 04:44  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/Makefile.am (1.5): -changed to use dynamic link instead
        of static for test_thwbk

2001-07-23 Monday 04:32  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/: test_thbrk.c (1.3), thbrk.c (1.3): -fix the segfault
        in char* stuff

2001-07-23 Monday 04:30  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/.cvsignore (1.1): -testing

2001-07-19 Thursday 06:43  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/test_thbrk.c (1.2): -change to be non-interactive
        unless "-i" option is specified.  -still segfault, not yet finished

2001-07-17 Tuesday 12:23  Chanop Silpa-Anan <chanop@linux.thai.net>

        * ChangeLog (1.7): latest updated

2001-07-17 Tuesday 12:20  Chanop Silpa-Anan <chanop@linux.thai.net>

        * src/thbrk/: Makefile.am (1.4), Makefile.in (1.4): merge map.c and
        map.h into one target, save typo error

2001-07-17 Tuesday 12:00  Chanop Silpa-Anan <chanop@linux.thai.net>

        * src/thbrk/: Makefile.am (1.3), Makefile.in (1.3), map.c (1.2),
        map.h (1.2): Dynamically generate map.c and map.h in a build
        directory.  Remove map.c and map.h from the repository.

2001-07-17 Tuesday 10:54  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * Makefile.in (1.5), include/Makefile.in (1.4),
        include/thai/Makefile.in (1.4), src/Makefile.in (1.4),
        src/thbrk/Makefile.am (1.2), src/thbrk/Makefile.in (1.2),
        src/thcoll/Makefile.in (1.4), src/thctype/Makefile.in (1.3),
        tests/Makefile.in (1.4): Fix dependencies for test_thbrk, so map.c
        won't always be rebuilt.

2001-07-17 Tuesday 05:30  Pattara Kiatisevi <ott@linux.thai.net>

        * ChangeLog (1.6): -ChangeLog is now automatically generated by
        manually run ../bin/cvs2cl.pl :)

2001-07-17 Tuesday 05:27  Pattara Kiatisevi <ott@linux.thai.net>

        * ChangeLog (1.5): -add cvs2cl.pl

2001-07-16 Monday 17:54  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.4), Makefile.in (1.4), aclocal.m4 (1.2), configure
        (1.3), configure.in (1.4), include/Makefile.in (1.3),
        include/thai/Makefile.in (1.3), src/Makefile.am (1.4),
        src/Makefile.in (1.3), src/thbrk/Makefile.am (1.1),
        src/thbrk/Makefile.in (1.1), src/thbrk/Makefile.ott (1.1, r0_1_1,
        r0_1_0), src/thbrk/cttex.c (1.2), src/thbrk/dict2state.c (1.2,
        r0_1_0), src/thbrk/map.c (1.1), src/thbrk/map.h (1.1),
        src/thbrk/thbrk.c (1.2), src/thcoll/Makefile.in (1.3),
        src/thctype/Makefile.in (1.2), tests/Makefile.in (1.3): Add
        automake files for building thbrk.

2001-07-15 Sunday 23:35  Pattara Kiatisevi <ott@linux.thai.net>

        * include/thai/thbrk.h (1.2): -add th_brk_line interface

2001-07-15 Sunday 23:31  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/: Makefile (1.1), README.TXT (1.1, r0_1_1, r0_1_0),
        cttex.c (1.1), dict2state.c (1.1), tdict.txt (1.1, r0_1_1, r0_1_0),
        test_thbrk.c (1.1), thbrk.c (1.1): -first version.  -wrapper for
        P'Hui's cttex.

2001-07-09 Monday 21:54  Pattara Kiatisevi <ott@linux.thai.net>

        * src/thbrk/tdict-preparation/: Makefile (1.1), README.TXT (1.1),
        dictsort (1.1), dictsort.c (1.1), tdict.local (1.1),
        tdict.nonsorted (1.1), tdict.org (1.1), tdict.txt (1.1),
        nectec/adjv.txt (1.1), nectec/archaic.txt (1.1), nectec/conj.txt
        (1.1), nectec/exclam.txt (1.1), nectec/formal.txt (1.1),
        nectec/idiom.txt (1.1), nectec/local.txt (1.1), nectec/nibat.txt
        (1.1), nectec/nouns.txt (1.1), nectec/obsolete.txt (1.1),
        nectec/poem.txt (1.1), nectec/prefix.txt (1.1), nectec/prep.txt
        (1.1), nectec/pron.txt (1.1), nectec/raja.txt (1.1),
        nectec/riheads.txt (1.1), nectec/riheads_org.txt (1.1),
        nectec/riwords.txt (1.1), nectec/riwords_org.txt (1.1),
        nectec/slang.txt (1.1), nectec/suffix.txt (1.1), nectec/verb.txt
        (1.1) (utags: r0_1_1, r0_1_0): -tdict.txt preparation part from
        cttex with some modifications

2001-06-15 Friday 19:01  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.3), Makefile.in (1.3), include/thai/thctype.h (1.4),
        src/thctype/thctype.c (1.2): Add th_isdiac() API. Add function body
        for thctype functions.

2001-06-14 Thursday 10:29  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * ChangeLog (1.2): Add ChangeLog item.

2001-06-13 Wednesday 22:35  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * Makefile.in (1.2), configure (1.2), configure.in (1.3),
        include/Makefile.in (1.2), include/thai/Makefile.in (1.2),
        include/thai/thctype.h (1.3), src/Makefile.am (1.3),
        src/Makefile.in (1.2), src/blank.c (1.2), src/dummy.c (1.1,
        r0_1_0), src/thcoll/Makefile.in (1.2), src/thctype/Makefile.am
        (1.1), src/thctype/Makefile.in (1.1), src/thctype/thctype.c (1.1),
        tests/Makefile.in (1.2): Add thctype implementation (first draft,
        so dirty)

2001-06-12 Tuesday 20:18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * Makefile.am (1.2), configure.in (1.2), include/Makefile.am (1.2,
        r0_1_1, r0_1_0), include/thai/Makefile.am (1.2), src/Makefile.am
        (1.2), src/thcoll/Makefile.am (1.2, r0_1_1, r0_1_0),
        tests/Makefile.am (1.2): Add $Id: ChangeLog,v 1.171 2009-01-08 14:58:07 thep Exp $

2001-06-12 Tuesday 20:14  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/thcoll/cweight.c (1.2, r0_1_0), src/thcoll/cweight.h (1.2,
        r0_1_0), src/thcoll/thcoll.c (1.2), tests/test-thcoll.sh (1.2,
        r0_1_1, r0_1_0), tests/thsort.c (1.2, r0_1_1, r0_1_0): Add $Id: ChangeLog,v 1.171 2009-01-08 14:58:07 thep Exp $

2001-06-12 Tuesday 20:12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * AUTHORS (1.1), COPYING (1.1), ChangeLog (1.1), INSTALL (1.1),
        Makefile.am (1.1), Makefile.in (1.1), NEWS (1.1), README (1.1),
        aclocal.m4 (1.1), config.guess (1.1), config.sub (1.1), configure
        (1.1), configure.in (1.1), install-sh (1.1), ltmain.sh (1.1),
        missing (1.1), mkinstalldirs (1.1), include/Makefile.am (1.1),
        include/Makefile.in (1.1), include/thai/Makefile.am (1.1),
        include/thai/Makefile.in (1.1), src/Makefile.am (1.1),
        src/Makefile.in (1.1), src/blank.c (1.1), src/cweight.c (1.2),
        src/cweight.h (1.2), src/thcoll.c (1.2), src/thcoll/Makefile.am
        (1.1), src/thcoll/Makefile.in (1.1), src/thcoll/cweight.c (1.1),
        src/thcoll/cweight.h (1.1), src/thcoll/thcoll.c (1.1),
        tests/Makefile.am (1.1), tests/Makefile.in (1.1), tests/sorted.txt
        (1.1, r0_1_1, r0_1_0), tests/test-thcoll.sh (1.1): add building
        system

2001-06-11 Monday 21:16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * src/cweight.c (1.1), src/cweight.h (1.1), src/thcoll.c (1.1),
        tests/sorttest.txt (1.1, r0_1_1, r0_1_0), tests/thsort.c (1.1): add
        a draft thcoll implementation

2001-05-18 Friday 11:51  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/: thailib.h (1.3), thcoll.h (1.3, r0_1_1, r0_1_0),
        thinp.h (1.4), thwcoll.h (1.3, r0_1_1, r0_1_0), thwinp.h (1.3,
        r0_1_1, r0_1_0): size_t definition in <thai/thailib.h>, strict_t to
        thstrict_t in <thai/thinp.h>

2001-05-18 Friday 01:15  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thinp.h (1.3): Change the spec (comment) of
        th_validate()

2001-05-18 Friday 01:07  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thwchar.h (1.3): fix arg & return types of uni2*

2001-05-18 Friday 01:04  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/thbrk.h (1.1): use thbrk.h for 8-bit code, to
        prevent confusion

2001-05-18 Friday 00:58  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/: thailib.h (1.2), thcoll.h (1.2), thctype.h (1.2),
        thinp.h (1.2), thrend.h (1.2, r0_1_0), thwbrk.h (1.2), thwchar.h
        (1.2), thwcoll.h (1.2), thwctype.h (1.2, r0_1_1, r0_1_0), thwinp.h
        (1.2), thwrend.h (1.2, r0_1_1, r0_1_0): Add comments. Fix many
        declarations. Add thglyph_t.

2001-05-17 Thursday 23:12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/: thailib.h (1.1.1.1), thcoll.h (1.1.1.1), thctype.h
        (1.1.1.1), thinp.h (1.1.1.1), thrend.h (1.1.1.1), thwbrk.h
        (1.1.1.1), thwchar.h (1.1.1.1), thwcoll.h (1.1.1.1), thwctype.h
        (1.1.1.1), thwinp.h (1.1.1.1), thwrend.h (1.1.1.1), tis.h (1.1.1.1,
        r0_1_0) (utags: libthai_0_1): first draft API

2001-05-17 Thursday 23:12  Theppitak Karoonboonyanan  <thep@linux.thai.net>

        * include/thai/: thailib.h (1.1), thcoll.h (1.1), thctype.h (1.1),
        thinp.h (1.1), thrend.h (1.1), thwbrk.h (1.1), thwchar.h (1.1),
        thwcoll.h (1.1), thwctype.h (1.1), thwinp.h (1.1), thwrend.h (1.1),
        tis.h (1.1): Initial revision

Generated by dwww version 1.15 on Mon Jun 24 15:20:59 CEST 2024.