lib/uniname/uniname.c


Log

Author Commit Date CI Message
Daiki Ueno 784023c9 2015-02-16T15:44:14 uniname/uniname: support character alias * lib/uniname/gen-uninames.lisp (main): New argument ALIASFILE. Generate one-way mapping from aliases to codepoints in the generated tables. Special case variation selectors to reduce table size. * lib/uniname/uniname.c (unicode_character_name): Special case variation selectors. (unicode_name_character): Special case variation selectors and their aliases. * lib/uniname/uninames.h: Regenerate. * tests/uniname/NameAliases.txt: New file, taken from UCD 7.0.0. * modules/uniname/uniname-tests (Files): Add tests/uniname/NameAliases.txt. * tests/uniname/test-uninames.c: Mark as static. (ALIASLEN): Define. (struct unicode_alias): New struct. (unicode_aliases): New variable. (fill_aliases): New function. (test_alias_lookup): New test function. (main): Run the 'test_alias_lookup' test if the second argument is given. * tests/uniname/test-uninames.sh: Supply NameAliases.txt as the second argument.
Daiki Ueno 257752a1 2015-01-06T18:53:40 uniname/uniname: update to Unicode 7.0.0 To accommodate new characters added since Unicode 5.1.0, this changes the internal representation of codepoint ranges. Previously, we grouped codepoint ranges by manually assigned 4-bit tag, which only allowed 16 groups. This removes the limitation by switching to binary search on a table. For the detail rationale and the benchmark results, see: https://lists.gnu.org/archive/html/bug-libunistring/2014-06/msg00001.html * lib/uniname/gen-uninames.lisp (unicode-char): Rename CODE member to INDEX, as it no longer represents a codepoint. (range): New struct. (main): Switch to intervals list from a bit-pattern based classification. * lib/uniname/uninames.h: Regenerate. * tests/uniname/UnicodeDataNames.txt: Update to Unicode 7.0.0. * modules/uniname/base (configure.ac): Bump minimum version to 0.9.5. * modules/uniname/uniname (configure.ac): Bump minimum version to 0.9.5.
Paul Eggert b9bfe784 2015-01-01T01:38:23 version-etc: new year * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
Eric Blake 1276a2c5 2014-01-01T00:04:40 maint: update copyright I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake 9fc81090 2013-01-01T00:50:58 maint: update all copyright year number ranges Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
Jim Meyering 1602f0af 2012-01-01T10:04:58 maint: update all copyright year number ranges Run "make update-copyright".
Jim Meyering d60f3b0c 2011-01-01T20:17:23 maint: update almost all copyright ranges to include 2011 Run the new "make update-copyright" rule.
Bruno Haible aeb898d8 2010-03-25T07:48:14 Minor formatting changes.
Jim Meyering b2e2010c 2010-01-01T10:31:12 update nearly all FSF copyright year lists to include 2010 Use the same procedure as for 2009, outlined in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
Bruno Haible 441aa304 2009-12-10T20:28:30 Use spaces for indentation, not tabs.
Bruno Haible 5650ac99 2009-02-08T16:10:11 Update to Unicode 5.1.0.
Bruno Haible ac5cf798 2007-10-07T17:23:24 Change copyright notice from LGPLv2.0+ to LGPLv3+.
Bruno Haible 0b34902e 2007-07-08T11:59:51 Update to Unicode 5.0.
Bruno Haible 9d4b4746 2007-07-07T13:23:02 Comments.
Bruno Haible 919363c0 2007-07-07T12:49:35 New modules uniname/base and uniname/uniname.