Date: Wed, 10 Feb 1999 16:06:00 +0100 From: "D. Rock" <rock@cs.uni-sb.de> To: "Andrey A. Chernov" <ache@nagual.pp.ru> Cc: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de>, "D. Rock" <rock@wurzelausix.CS.Uni-SB.DE>, current@FreeBSD.ORG Subject: Re: locale errors Message-ID: <36C1A058.61BD5E8B@cs.uni-sb.de> References: <199902040250.DAA01966@vodix.aremorika> <19990204060349.A40565@nagual.pp.ru> <19990204073812.49101@uriah.heep.sax.de> <19990204103038.A19952@nagual.pp.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
I think I have found a solution. The problem with the current definition is, that "ss" is folded into one character, while "ß" should be expanded to "ss" and sorted accordingly. I read the manual pages of colldef and found a solution, which sorted my test patterns right. ndex: data/de_DE.ISO_8859-1.src =================================================================== RCS file: /data/cvs/src/usr.bin/colldef/data/de_DE.ISO_8859-1.src,v retrieving revision 1.4 diff -c -r1.4 de_DE.ISO_8859-1.src *** de_DE.ISO_8859-1.src 1997/03/10 21:59:53 1.4 --- de_DE.ISO_8859-1.src 1999/02/10 14:52:52 *************** *** 3,8 **** --- 3,9 ---- # $Id: de_DE.ISO_8859-1.src,v 1.4 1997/03/10 21:59:53 ache Exp $ # charmap map.ISO_8859-1 + substitute "\xdf" with "ss" order \ # controls <NU>;...;<US>;<PA>;...;<AC>;\ *************** *** 29,35 **** b;(c,<c,>);d;(e,<e'>,<e!>,<e/>>,<e:>);\ f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\ j;...;m;(n,<n?>);(o,<o'>,<o!>,<o/>>,<o:>,<o?>,<o//>);\ ! p;...;r;s;(<ss>,ss);t;(u,<u'>,<u!>,<u/>>,<u:>);\ v;w;x;(y,<y'>,<y:>);z;\ <d->;<th>;\ # --- 30,36 ---- b;(c,<c,>);d;(e,<e'>,<e!>,<e/>>,<e:>);\ f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\ j;...;m;(n,<n?>);(o,<o'>,<o!>,<o/>>,<o:>,<o?>,<o//>);\ ! p;...;r;s;<ss>;t;(u,<u'>,<u!>,<u/>>,<u:>);\ v;w;x;(y,<y'>,<y:>);z;\ <d->;<th>;\ # This patch now sorts successfully my test words: ausarbeiten aussagen außer aussuchen austragen auszahlen Any negative side effects by this patch? [Why does <ss> have to be somewhere in the order statement although it has been substituted by some other characters? If I remove the <ss> in the order statement, colldef won't compile the file. The position of <ss> doesn't even matter...] BTW It is ugly you cannot use symbols on the LHS of substitute. Daniel "Andrey A. Chernov" schrieb: > > On Thu, Feb 04, 1999 at 07:38:12AM +0100, J Wunsch wrote: > > Well, not completely. :) For testing, i've restored the file from > > before my change, and it missorts similarly. I'm probably too stupid > > to understand all of this collate stuff. So far, i haven't been able > > to come up with any locale definition that does the right thing for > > every input. > > I mean no particular commit but whole idea how to sort doubled letters - > it comes from you, I can't invent this. Collating scheme is very simple - > we have two sorting orders - primary and secondary (f.e. Posix have four > levels for Unicode). If two strings are the same by primary order, they > compare using secondary one. That's all. I will apreciate your any > decision regarding to DE locale, fixing, backing out etc. since I even > can't display characters you use in your example, nor have strong desire > to dig in DE language area starting from zero background. > > -- > Andrey A. Chernov > ache@null.net > MTH/SH/HE S-- W-- N+ PEC>+ D A a++ C G>+ QH+(++) 666+>++ Y > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-current" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?36C1A058.61BD5E8B>