Commit Graph

85 Commits

Author SHA1 Message Date
Matthias Clasen
f9d9f9c056 Update to Unicode 8.0
Regenerate data tables from the Unicode Character Database, add
new scripts, and update tests to include some of the new data.
2015-10-04 10:24:06 -04:00
Matthias Clasen
97a25d1203 Optimize g_unichar_iswide
Apply the same optimization that was done for g_unichar_get_script
long ago: Use a quick check for the low end, and then remember the
midpoint of the last bsearch, since we're likely to be called for
characters that are close to each other.

This change made g_unichar_iswide disappear from profiles of the
gtk3-demo listbox example.
2015-09-12 11:13:44 -04:00
Christian Persch
d217429729 unicode: Update to unicode 7.0.0
See bug https://bugzilla.gnome.org/show_bug.cgi?id=731929.
2014-06-28 12:49:38 -04:00
Christian Persch
33c8a89490 unicode: Simplify width table generation
Move width table generation into the gen-unicode-tables.pl script. This makes
updating the tables automatic without the previously required manual editing
required to insert the tables in the right place of the source code.
2014-06-28 12:49:07 -04:00
David King
3cfa44da5a docs: Fix typo in g_unichar_iswide_cjk() comment 2014-04-04 10:43:29 +01:00
William Jon McCann
20f4d1820b docs: use "Returns:" consistently
Instead of "Return value:".
2014-02-19 19:41:52 -05:00
Matthias Clasen
a35d8a4c77 Docs: use quotes instead of firstterm 2014-02-06 08:07:16 -05:00
Matthias Clasen
cb588d4532 Convert external links to markdown syntax 2014-02-05 21:23:28 -05:00
Daniel Mustieles
078dbda148 Updated FSF's address 2014-01-31 14:31:55 +01:00
Christian Persch
9524c620bb unicode: Update to unicode 6.2.0 beta 2012-10-03 13:58:19 +02:00
Lionel Landwerlin
ad4f780cb4 glib: fix locale detection on android
g_utf8_strup() tries to call setlocale() before starting to compute
the length of its first argument. Calling setlocale() can return NULL
(as specified in the man page), and obviously that happens on android.

https://bugzilla.gnome.org/show_bug.cgi?id=680704
2012-07-27 19:41:05 +02:00
Christian Persch
fb574834c1 unicode: Add new scripts from Unicode 6.1.0 2012-02-26 21:24:07 -05:00
Philip Withnall
386bb0faad unicode: Fix a few issues with G_UNICHAR_MAX_DECOMPOSITION_LENGTH
Raised by Matthias in bgo#665685 but which I didn't spot until after pushing
commit 3ac7c35656.

Renames G_UNICHAR_MAX_DECOMPOSITION_LEN to G_UNICHAR_MAX_DECOMPOSITION_LENGTH
and fixes a few documentation issues.

See: bgo#665685
2011-12-06 19:41:31 +00:00
Philip Withnall
3ac7c35656 Bug 665685 — Add a #define for the max length of a Unicode decomposition
Add G_UNICHAR_MAX_DECOMPOSITION_LEN for the maximum length of the
decomposition of a single Unicode character.

Closes: bgo#665685
2011-12-06 19:09:01 +00:00
Behdad Esfahbod
91fb373d55 Minor 2011-12-06 13:19:27 -05:00
Matthias Clasen
0fd14b1a56 Fix a case conversion bug
For titlecase chars without uppercase variant, we were returning
0, contrary to the docs.
2011-11-21 00:28:41 -05:00
Ryan Lortie
3b25e975b3 gtk-doc fixups for glib/ 2011-09-05 11:30:58 -04:00
Behdad Esfahbod
e3219c8425 Fixup max decomposition len guarantee
Unicode Technical Committee agreed to limit decomposition length to
18 in both cases.  Reflect that.
2011-08-17 12:14:07 +02:00
Behdad Esfahbod
7539483169 Don't use deprecated G_UNICODE_COMBINING_MARK 2011-07-22 10:33:47 -04:00
Behdad Esfahbod
9bcb3d7457 Add g_unicode_script_from_iso15924()
And adjust g_unicode_script_to_iso1592().
2011-07-20 22:12:03 -04:00
Behdad Esfahbod
7e03b28870 Bug 648271 - Add g_unicode_script_to_iso15924()
Add g_unicode_script_to_iso15924() and tests.
2011-07-20 19:13:19 -04:00
Vincent Untz
4e213f385b Stop using deprecated g_unicode_canonical_decomposition()
https://bugzilla.gnome.org/show_bug.cgi?id=654948
2011-07-20 19:42:06 +02:00
Behdad Esfahbod
acda716d2d Bug 648966 - Update g_unichar_iswide and g_unichar_iswide_cjk
Update to Unicode 6.0.  Also attach Python script that generates
the tables.
2011-04-29 18:03:24 -04:00
Tor Lillqvist
8a8cdd1d32 Add some more individual own header includes where required 2010-09-12 14:05:49 +03:00
Matthias Clasen
04077ff5c5 More include cleanups 2010-09-03 23:03:14 -04:00
Ryan Lortie
2e53e50244 glib/: fully remove galias hacks 2010-07-07 19:34:35 -04:00
Behdad Esfahbod
2152bd091e Improve g_unichar_iswide_cjk() docs.
2008-12-12  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c: Improve g_unichar_iswide_cjk() docs.


svn path=/trunk/; revision=7741
2008-12-12 08:26:00 +00:00
Behdad Esfahbod
e9a316866d Bug 541507 – Ambiguous description of assigned characters in the Glib
2008-07-04  Behdad Esfahbod  <behdad@gnome.org>

        Bug 541507 – Ambiguous description of assigned characters in the Glib
        Unicode Manipulation reference

        * glib/guniprop.c
        (g_unichar_isgraph): Return true for PrivateUse too.
        (g_unichar_isprint): Return true for PrivateUse too.
        (g_unichar_isdefined): Return false for Surrogate.


svn path=/trunk/; revision=7161
2008-07-04 18:05:13 +00:00
Behdad Esfahbod
123dfdc5c2 Bug 459905 – Bug in wcwidth data Bug 534085 – g_unichar_iswide_cjk()
2008-05-20  Behdad Esfahbod  <behdad@gnome.org>

        Bug 459905 – Bug in wcwidth data
        Bug 534085 – g_unichar_iswide_cjk() has a totally wrong table
        * glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
        Regenrate wide and wide_cjk tables from Unicode 5.1.0 data directly.
        Not using Markus Kuhn's tables anymore.


svn path=/trunk/; revision=6920
2008-05-20 19:42:07 +00:00
Behdad Esfahbod
9d6ace02aa Document that GUnicodeScript is interchangeable with PangoScript.
2007-08-20  Behdad Esfahbod  <behdad@gnome.org>

        * glib/tmpl/unicode.sgml: Document that GUnicodeScript is
        interchangeable with PangoScript.

2007-08-20  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c: Document that g_unichar_get_script() is
        equivalent to pango_script_for_unichar().


svn path=/trunk/; revision=5713
2007-08-21 02:51:11 +00:00
Behdad Esfahbod
613b489b6b Make g_unichar_combining_class() public. (#453998)
2007-07-19  Behdad Esfahbod  <behdad@gnome.org>

        * glib/glib.symbols:
        * glib/gunicode.h:
        * glib/gunicodeprivate.h:
        * glib/gunidecomp.c (g_unichar_combining_class):
        * glib/guniprop.c (has_more_above):
        Make g_unichar_combining_class() public. (#453998)


svn path=/trunk/; revision=5644
2007-07-19 13:46:05 +00:00
Behdad Esfahbod
a2f7c5d631 Update to Markus Kuhn's updated wcwidth for Unicode 5.0.
2007-05-25  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
        Update to Markus Kuhn's updated wcwidth for Unicode 5.0.


svn path=/trunk/; revision=5515
2007-05-25 17:15:28 +00:00
Behdad Esfahbod
3ed6b66e8f svn path=/trunk/; revision=5482
2007-05-03  Behdad Esfahbod  <behdad@gnome.org>

        * configure.in:
        * glib/glib.symbols:
        * glib/gthread.h:
        * glib/gunicode.h:
        * glib/guniprop.c (g_unichar_ismark):


svn path=/trunk/; revision=5482
2007-05-03 23:42:05 +00:00
Matthias Clasen
7296a34571 Fix corner-cases of upper/lowercase conversion. (#418217, Denis Jacquerye)
2007-03-22  Matthias Clasen  <mclasen@redhat.com> 

        * glib/guniprop.c: Fix corner-cases of upper/lowercase conversion.
        (#418217, Denis Jacquerye)



svn path=/trunk/; revision=5433
2007-03-23 00:17:10 +00:00
Behdad Esfahbod
d2a9b31e61 Take zerowidth and double-width chars into consideration when computing
2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

        * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
        (calculate_max_length), (print_entry), (print_help): Take zerowidth
        and double-width chars into consideration when computing width of a
        string.  Also fix another bug in width computation.

        * glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
        working correctly.


svn path=/trunk/; revision=5204
2007-01-03 23:05:36 +00:00
Behdad Esfahbod
a0c60a62d6 Add g_unichar_iszerowidth(). (#347645)
2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

        * glib/glib.symbols:
        * glib/gunicode.h:
        * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)


svn path=/trunk/; revision=5202
2007-01-03 20:48:24 +00:00
Matthias Clasen
eaec9bb86e Avoid a compiler warning.
2006-12-15  Matthias Clasen  <mclasen@redhat.com>

        * glib/guniprop.c (interval_compare): Avoid a compiler
        warning.
2006-12-15 22:13:53 +00:00
Matthias Clasen
68e78574db Add Unicode script support 2006-10-09 04:23:58 +00:00
Matthias Clasen
994d642cde If a character can't be converted, don't replace it with a NUL byte, but
2006-08-05  Matthias Clasen  <mclasen@redhat.com>

	* glib/guniprop.c (g_unichar_toupper, g_unichar_tolower)
	(real_toupper, real_tolower): If a character can't be converted,
	don't replace it with a NUL byte, but leave it unchanged.
	(#348491, Nikolai Weibull)

	* tests/unicode-caseconv.c: Adapt to this change.

	* tests/unicode-caseconv.c (main): Add a comment to point out
	a quirk in the test data that we are working around here.
2006-08-05 21:53:49 +00:00
Behdad Esfahbod
fafabbb490 Make it only accept those characters that we accept i
2006-07-31  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c (g_unichar_isxdigit): Make it only accept those
        characters that we accept i g_unichar_xdigit_value(), i.e. don't
        accept non-decimal digits. (#347842, Nikolai Weibull)
2006-07-31 05:10:28 +00:00
Matthias Clasen
c639cfe436 Small optimization. (#348011, Nicolai Weibull)
2006-07-20  Matthias Clasen  <mclasen@redhat.com>

	* glib/guniprop.c (real_toupper, real_tolower): Small optimization.
	(#348011, Nicolai Weibull)
2006-07-20 19:17:50 +00:00
Matthias Clasen
4b17ee97a5 2.11.0 2006-05-03 02:05:01 +00:00
Behdad Esfahbod
d8ff28de76 #include <stdlib.h>
2006-04-28  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c: #include <stdlib.h>
2006-04-28 20:38:45 +00:00
Matthias Clasen
1e50095189 Small fixes 2006-04-27 23:31:36 +00:00
Behdad Esfahbod
8f75a97285 docs/reference/glib/glib-sections.txt, Implement g_unichar_iswide_cjk().
2006-04-27  Behdad Esfahbod  <behdad@gnome.org>

        * docs/reference/glib/glib-sections.txt,
        * glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
        (#105626)
2006-04-27 21:14:47 +00:00
Matthias Clasen
dad87b1a75 Remove unused variables. (#321984, Andrew Paprocki)
2005-11-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/guniprop.c (g_unichar_get_mirror_char): Remove unused
        variables. (#321984, Andrew Paprocki)
2005-11-21 00:47:54 +00:00
Behdad Esfahbod
8bd94d0eb8 Use bit hacks instead when checking a general category value against
2005-11-09  Behdad Esfahbod  <behdad@gnome.org>

        * glib/guniprop.c: Use bit hacks instead when checking a general
        category value against multiple values.

        * glib/gutf8.c: Change ISO10646 to Unicode in docs.
2005-11-10 01:15:11 +00:00
Matthias Clasen
e9852a17be Apply a patch from Behdad Esfahbod to use a faster lookup table for
2005-11-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/Makefile.am: Apply a patch from Behdad Esfahbod to
	use a faster lookup table for g_unichar_get_mirror_char().
	* glib/gmirroringtable.h: The new table.
	* glib/gunichartables.h: Remove bidi_mirroring_table.
	* glib/gen-unicode-tables.pl: Don't generate the mirroring
	table.
	* glib/glib-mirroring-tab/*: Sources for the program
	which generated gmirroringtable.h.

	* glib/glist.c: Avoid some code duplication.
2005-11-04 22:27:04 +00:00
Matthias Clasen
608a31b98e Make PLT-reduction work with gcc4, and don't include everything in
2005-03-13  Matthias Clasen  <mclasen@redhat.com>

	Make PLT-reduction work with gcc4, and don't include
	everything in galias.h:

	* glib/glib.symbols: Group symbols by header and source file.
	* glib/makegalias.pl: Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling makegalias.pl -def
	* glib/Makefile.am (galiasdef.c): Add a rule to generate this
	file.
	* glib/*.c: Include galias.h after the other GLib headers,
	include galiasdef.c at the bottom.
2005-03-14 04:26:57 +00:00
Tor Lillqvist
b7de9fc3b6 Use g_win32_getlocale() instead of setlocale() on Windows. setlocale()
2005-01-04  Tor Lillqvist  <tml@iki.fi>

	* glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
	instead of setlocale() on Windows. setlocale() returns strings
	like "Turkish_Turkey".
2005-01-04 21:21:07 +00:00