This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, here are several patches against locale/programs/ld-collate.c to fix bugs or propose enhancements to localedef. They have to be applied sequentially; I will provide modified patches if only some of them are applied. All these patches apply against ld-collate.c and thus are about LC_COLLATE section of locale data files. They have been tested as best as I could for several weeks now, and should not produce any regression. * patch-1-keywords_ordering.diff [BZ #690] Localedef is currently very strict on its keyword ordering. As a result, one can not add new scripts (am_ET uses an ugly hack so that state != 2 after 'copy'), collating-element and collating-symbol are accepted after 'copy' but not symbol-equivalence, etc. which sometimes prevent tailoring of iso14651_t1. This patch is also needed for the following one: * patch-2-toggles.diff [BZ #686] Toggle switches are defined in locale/programs/locfile-kw.h but not implemented. Here is a patch to let localedef handle 'define', 'undef', 'ifdef', 'else' and 'endif' keywords. This is very useful e.g. for locales which sort uppercase before lowercase letters, or do not want backward direction in level 2. Iso14651_t1 can then be customized like ifdef LATIN_FORWARD order_start <LATIN>;forward;forward;forward;forward,position else order_start <LATIN>;forward;backward;forward;forward,position endif so that these locales can define specific keywords and then 'copy "iso14651_t1"' instead of copying its contents. * patch-3-fix_rules.diff [BZ #645] Localedef does not respect rules definition (after order_start keyword), as is explained in depth in #645. This breaks French collation, but also potentially any locale which has a rule different from forward;forward;forward;forward. * patch-4-fix_complex_collation.diff [BZ #368] With many collation elements, localedef enters an endless loop because it tries to add an element to a full table and never fails. The table size was artificially limited to 257 elements, but this limitation can be removed. This fix is needed for the Dzongkha language. 2005-02-24 Denis Barbier <barbier@debian.org> [BZ #690] * locale/programs/ld-collate.c (collate_read): Relax checks on keywords ordering. [BZ #686] * locale/programs/ld-collate.c (collate_read): Implement keywords for toggles which were already defined in locfile-kw.h. [BZ #645] * locale/programs/ld-collate.c (collate_finish): Fix handling of section rules. * locale/programs/ld-collate.c (collate_read): Likewise. [BZ #368] * locale/programs/ld-collate.c (collate_output): elem_size does not need to be truncated at 257. Denis
Attachment:
patch-1-keywords_ordering.diff
Description: Text document
Attachment:
patch-2-toggles.diff
Description: Text document
Attachment:
patch-3-fix_rules.diff
Description: Text document
Attachment:
patch-4-fix_complex_collation.diff
Description: Text document
Attachment:
signature.asc
Description: Digital signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |