https://bugzilla.wikimedia.org/show_bug.cgi?id=164

--- Comment #188 from Philippe Verdy <[email protected]> 2010-07-24 07:00:47 
UTC ---
(In reply to comment #183)
> Okay, look, if you make posts this long I'm not going to be able to read 
> them. 
> You have to state your points briefly and clearly, or else I'm just not going
> to have time to read through carefully and figure out exactly what you're
> trying to say.  Walls of text are really not helpful.
> 
> Furthermore, you're focusing too narrowly on implementation details, like the
> exact interface a function should implement.

An "interface" function is DEFINITELY NOT an "implementation" detail. My
comment #180 _correctly_ describes and summarizes what is really wanted.

It's not focusing on how it will be implemented (using ICU or not, how to
integrate it in PHP if it's used, otherwise how to represent the DUCET and how
to represent the language tailorings...), and it explains why the development
can be planned in several clearly independant steps that can be tested
separately.

It correctly explains the dependancies and why any change in the SQL schema can
be and should be delayed. In fact I consider the step (1) in my plan to have a
high priority on all the rest, and it does not imply any immediate change in
the schema to support it.

There will be some time needed only to assert that the implemented collations
are effectively correct for various languages: this will be verifiable by users
looking at list of terms in some wiki page, using a "sortable wikitable" whose
rows are using the new {{SORTKEY:text|locale|level}} parser function.

If this is validated by users, then only two independant development phases can
be started (in parallel):

- to develop the new schema for stored sortkeys, based only on the internal PHP
functions implementing {{SORTKEY:text|locale|level}}. The schema should NOT be
deployed before the collations have been tested extensively by users and their
internal data structures reflect the wanted collations order and tailorings.

- to develop the {{COLLATIONMAP:text|locale|level|clusters}} parser function
(for later inclusion in the generation of the correct "column headings" in the
lists displayed by category pages, because for now these headings are almost
useless for anything else than English, or in heavily populated categories).

The second function will be separately integrable in the display of category
pages (before or after the schema has been updated for stored sort keys), but
can be tested separately as well. And anyway, it will already be a very useful
general clear-text function for use in wiki templates that are trying to equate
"equivalent" strings (for example in a {{#switch:}}, even better than
{{LC:text}}) and will be very convenient for some languages like Arabic, Hebrew
and Russian that have optional diacritics in their orthographies (such as
cantillation marks, dots for vowels, and tonic accents) or that may contain
compatibility ligatures or display forms (e.g. narrow/wide kanas and square
clusters of kanas in Japanese, "compatibility jamos" in Korean).

The name of this second function could be abbreviated as {{CMAP:}} (it does not
matter, but it should be implemented based on its functional description by
Unicode in one of its UAX) or could be localized as well like other "magic"
wiki keywords. And it probably should use {{CONTENTLANGUAGE}} as the default
value for the second parameter "locale" (because {{int:lang}} may cause
rendering problems in some pages that do not want to depend on the user's
prefered language). And by default the "level" parameter will be 1 (could be up
to 3, any higher value will return the same text without performing any mapping
because higher collation values have to contain all the collation differences),
and the default "clusters" will be unlimited.

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to