- From: Bill Haneman <bill haneman sun com>
- To: release-team gnome org, gnome-i18n gnome org
- Cc: Damien Donlon <Damien Donlon sun com>,David Bolter <david bolter utoronto ca>
- Subject: GOK internationalization
- Date: Mon, 30 Jun 2003 16:29:07 +0100
As we near UI Freeze for gnome-2.4, we are triaging remaining bugs for
GOK, the Gnome Onscreen Keyboard suite. As you may or may not know, GOK
has some unique internationalization aspects. Bug 90500 addresses one
aspect of the issues:
GOK's internal strings are already translated reasonably well - at least
with regard to messages and the Properties dialog, etc. However GOK
relies on XML files for its "access methods" and its static onscreen
keyboards (the dynamic onscreen keyboards are built at runtime and
should be appropriately internationalized already).
We just added the currently-used access method files to POTFILES.in
(*.xam targets created from *.xml.in files). However the access method
XML syntax relies on user-visible string attributes (rather than element
CDATA); we are considering whether we have time to fix this for 2.4 so
that all of the user-visible strings in the *.xam files are
translatable. Release team, is this change (to private API) something
we can make before 2.4, in view of the (positive) internationalization
Also, and more interestingly, GOK's static keyboards are read from XML
files. These are a combination of generic keyboards such as
"launcher.kbd", and locale-specific keyboard such as "alpha.kbd" and
"Keyboard.kbd". The locale-specific keyboards cannot localized using
the usual intltool techniques since their layout as well as their labels
will vary from locale to locale (more on this later). However the
generic keyboards are, theoretically, localizable using the standard
intltool-merge rules for XML.
However, many of these static XML files are intended to be at least
occasionally user-editable. We are not sure that the resulting
proliferation of elements in the files is the best thing for the user -
though we can change our "keyboard editor" to make this transparent to
the user, users who wish to edit the keyboards directly in a text editor
might find this daunting. Also we are not sure, in the absence of
benchmarks, what the performance impact of the larger .kbd files might be.
In the case of locale-specific keyboards, we expect that the best
approach for GOK, which stores these keyboards in a gok-specific data
directory (i.e. $prefix/share/gok/*.kbd), will be to create
subdirectories for each locale ($prefix/share/gok/keyboards/C
$prefix/share/gok/keyboards/fr_CA etc.). In view of that fact, we are
considering the alternative for our static keyboards, of creating
separate XML files per-locale rather than merging all the localized
elements into one XML file. We think that the latter approach would be
better for the user, but are not sure who would be able or willing to do
the necessary intltool hack to implement this alternative merge technique.
We are "firmly on the fence" about this - we think separate XML files
would be better, but are not sure we should punt GOK
internationalization until 2.6 because of it. So we are asking both the
release team and gnome-i18n for feedback.
* if R-T thinks we're too late to tweak GOK's internal API to facilitate
internationalization for 2.4
(i.e. changes to the .xam format and a small change to the internal
.kbd import algorithm to take
the current locale into account), then we will punt.
* on the other hand, if R-T thinks localization of GOK is desirable for
2.4, we would consider using
the "classic" XML intltool-merge technique for the generic keyboards.
* if someone in gnome-i18n is willing to tweak intltool for create split
xml files instead of merged ones,
we'd like to wait for this change if it's likely to happen in time for
our 2.4 release.
* In either case, we solicit suggestions from gnome-i18n as to how to
make it easier for
translators to help localize our "locale-specific" keyboards - for
which is a static physical compose keyboard based on the physical
layout (we also have the
ability to create this on-the-fly from XKB so this is an optional
feature, GOK can display
non-latin keyboards without it). Similarly we have "alpha.kbd" which
is an alphabetically-arranged
keyboard, and we will want to provide for each locale a "weighted"
keyboard which has the most
frequently used characters at the upper-left and the least used
characters at the lower-right.
How can we alert translators to the need to translate these
keyboards, and make it easier for them?
Thanks very much for reading this far and for your suggestions regarding
how we should proceed both for 2.4 and future.
] [Thread Prev