From b008d4c85619a753e441d7f473ba8af0db400bd6 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 7 Jan 2012 11:04:14 -0500 Subject: [PATCH] Fix collation in Hungarian locale --- NEWS | 2 +- localedata/ChangeLog | 6 ++ localedata/locales/hu_HU | 192 ++++++++++++++++++++++----------------- 3 files changed, 117 insertions(+), 83 deletions(-) diff --git a/NEWS b/NEWS index 4d070208f7..e8030cce0d 100644 --- a/NEWS +++ b/NEWS @@ -9,7 +9,7 @@ Version 2.16 * The following bugs are resolved with this release: - 13526, 13527, 13528, 13529, 13531, 13532, 13533 + 13526, 13527, 13528, 13529, 13531, 13532, 13533, 13547 * ISO C11 support: diff --git a/localedata/ChangeLog b/localedata/ChangeLog index bb9c3886e2..658b8e0ed3 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,9 @@ +2012-01-07 Ulrich Drepper + + [BZ #13547] + * locales/hu_HU: Fix collation rules. + Patch by Egmont Koblinger . + 2011-12-23 Ulrich Drepper [BZ #12840] diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU index 8fce6e40a7..691ccad903 100644 --- a/localedata/locales/hu_HU +++ b/localedata/locales/hu_HU @@ -15,11 +15,11 @@ escape_char / % - made all days abbreviations same lenght by appending spaces % Email: srtxg@chanae.alphanet.ch % -% Further changes by Egmont Koblinger, 2002/Jan/06 +% Further changes by Egmont Koblinger, 2002/Jan/06, 2012/Jan/03 % - fixed tons of remaining bugs in alphabetical order % - turned month names and similar stuff to lowercase % - other small bugfixes -% Email: egmont@suselinux.hu +% Email: egmont@gmail.com % % Language: hu % Territory: HU @@ -66,10 +66,21 @@ copy "iso14651_t1" %% %% a' e' i' o' u' are sorted as if they were unaccented %% o" and u" are sorted as if they were o: and u: +%% +%% When a compound letter is pronounced long, only the first +%% letter is duplicated in writing, e.g. cs+cs becomes ccs, +%% dzs+dzs becomes ddzs, and so on. +%% However, c+cs is also spelled as ccs, you need to speak +%% the language to tell which one is the case. +%% Tokenize ccs as , and sort the tokens as +%% a b c c_or_cs cs d... This effectively assumes cs+cs +%% which is more frequent than c+cs, but guarantees that the +%% strings ccs and cscs don't collate as equal. collating-symbol collating-symbol +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -84,6 +95,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -98,6 +110,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -124,6 +137,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -138,6 +152,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -152,6 +167,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -166,6 +182,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -180,6 +197,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -194,6 +212,7 @@ collating-element from "" collating-element from "" collating-element from "" +collating-symbol collating-symbol collating-element from "" collating-element from "" @@ -234,25 +253,34 @@ reorder-after reorder-after + reorder-after + + reorder-after + reorder-after + reorder-after + reorder-after reorder-after + reorder-after + reorder-after reorder-after + reorder-after @@ -270,149 +298,149 @@ reorder-after reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-after ;;;IGNORE ;;;IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE - "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE + "";"";"";IGNORE reorder-end