Stephen Dennis
14541d5335
Backport Unicode fixes: pairs DFA, collation NFC tiebreaker, tool updates
...
Port three fixes from libutf/master:
1. Fix pairs DFA generator: always resolve undefined transitions
before optimization. The old code only called SetUndefinedStates
when -d was passed, causing NFC over-composition and DUCET
contraction false-matches.
2. Regenerate NFC compose tables (129→1010 states) and DUCET
contraction tables (27→294 states) with the corrected generator.
3. NFC tiebreaker in collation: normalize to NFC before binary
comparison so canonically equivalent strings compare equal per UCA.
Also updates all four table generator tools (classify, integers,
strings, pairs) to support -o/-i flags for output file control,
and adds LIBMUX_API compat define to Makefile.in preamble.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 18:44:40 -06:00
Stephen Dennis
dbd7cb4267
Use nullptr instead of NULL.
2025-03-30 09:10:10 -06:00
Stephen Dennis
8b1c5cdd9e
Remove SVN version stamp.
2020-08-08 17:39:08 -06:00
brazilofmux
6aa4d2e0fd
Fix Ubuntu compiler warnings.
2010-11-28 18:19:54 -08:00
brazilofmux
25ea4afafc
Use run-length encoded Unicode tables.
2009-02-01 13:40:38 -08:00
brazilofmux
11f4912245
Remove ReportStatus().
2009-01-31 16:41:12 -08:00
brazilofmux
f52657b803
Generate separate copy/paste for stringutil.cpp and stringutil.h to make it less manual.
2008-04-12 22:20:42 -07:00
brazilofmux
8ede1865a0
Fix compiler warnings.
2007-12-21 15:00:45 -08:00
brazilofmux
34932af89f
-- Build tr_tolower.txt and tr_toupper.txt from UnicodeMaster.
...
-- Support wider range of upper and lower case code points.
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1652 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-09 15:17:54 -07:00
brazilofmux
b79ce52ec3
-- Describe purpose, requirements, and result of classify.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1647 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-09 15:16:46 -07:00
brazilofmux
c51ff824bb
-- Change ReadCodePoint for classify.cpp to look only for first field.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1621 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-09 15:07:56 -07:00
brazilofmux
e577fdd87c
-- Define mux_iscolor() for determining whether a code point represents a color directive.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1362 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-08 07:21:53 -07:00
brazilofmux
b1475164df
-- Some duplicate rows remain in the printable table. Looking for more duplicates reduces
...
the size from 17148 to 14858 bytes.
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1335 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 22:20:49 -07:00
brazilofmux
80c069fe87
-- Add check that codes are in sorted order.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1185 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 21:16:38 -07:00
brazilofmux
1c958ba342
-- Format itt more nicely.
...
-- Add const to tables.
-- Update VerifyTables().
-- Add Printable.txt which containts the previous set of byte-sized printable characters.
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1179 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 21:12:24 -07:00
brazilofmux
c17d08dddf
Move ReadCodePoint() and DecodeCodePoint() to smutil.cpp.
...
Allow for more than two accepting states.
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1166 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 18:00:22 -07:00
brazilofmux
0f661e0baa
-- Make StateMachine class and pull most of the SM logic into it for use by classify and transform.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1163 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 17:59:19 -07:00
brazilofmux
271152a797
-- Freshen VerifyTables().
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1153 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 17:54:43 -07:00
brazilofmux
e3e754098b
-- Add table generator for recognizing UTF-8 character classes.
...
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1152 d1b986fa-651c-0410-a323-35a8662cf44d
2007-05-07 17:54:22 -07:00