The code <U1000000D> was used where <U10000DC> was obviously intended.
It is possible that <Udiaeresis> should be used instead, if that will
not break anyone’s setup.
From bugzilla bug 10943¹:
There are several Catalan locale codes which presently can
be used in X11 systems; especially after they were accepted
in belocs-locale-data².
In the following patches, I³ add ca_AD, ca_FR and ca_IT Catalan
locale codes. For instance, without this, using ca_AD (actually
a quite used locale⁴) some applications (eg. Emacs or Skype)
cannot display Catalan diacritic marks as you type them.
1] https://bugs.freedesktop.org/show_bug.cgi?id=10943
2] http://lists.debian.org/debian-devel-changes/2005/07/msg01429.html
3] Toni Hermoso Pulido <toniher@softcatala.org>
4] https://launchpad.net/~ubuntu.cat/+members
The description from bugzilla bug 7417¹ is:
We've been shipping this patch for some time in Debian now. The
problem description from the patch header is reproduced below. You
may want to note the licensing issue mentioned below, but we've been
shipping it because the method by which this particular patch was
generated and updated was also given below.
This patch by Denis Barbier.
The X11 protocol states that Unicode keysyms are in the range
0x01000100 - 0x0110FFFF. If the result of composing characters is a
Unicode codepoint, X returns the corresponding Unicode keysym, which
is its Unicode codepoint augmented by 0x01000000. Latin-1
characters must not appear with their Unicode codepoints in compose
files, otherwise the returned composed character lies in the range
0x01000000 - 0x010000FF which is not valid.
There are two solutions: either fix composing routines to return
0xZZ instead of 0x010000ZZ (where Z is an hexadecimal digit), or
replace U00ZZ by their corresponding keysyms in compose files. The
latter is more logical and less error prone, so compose files will
be patched. Many applications accept these invalid Unicode keysyms,
but few of them don't, most notably xemacs. Only UTF-8 locales are
affected.
This has been fixed very recently in XFree86 CVS (but not xorg), but
for licensing reasons, this patch is not grabbed. Instead automatic
conversion is performed by:
sed -e '/XK_LATIN1/,/XK_LATIN1/!d' /usr/include/X11/keysymdef.h \
| grep -v deprecated | grep 0x0 \
| sed -e 's/0x0/U0/' -e 's/XK_//' \
| awk '{ printf "s/\\b%s\\b/%s/ig\n", $3, $2; }' > sedfile
for f in nls/*.UTF-8/Compose.pre
do
sed -f sedfile $f > $f.tmp && mv $f.tmp $f
done
[I edited the quoted script to update it for the current location of
the installed keysymdef.h and the current layout of the libX11
repo. -JimC]
I applied the script, not the patch attached to the bugreport.
1] https://bugs.freedesktop.org/show_bug.cgi?id=7417
Cf:
https://bugs.freedesktop.org/show_bug.cgi?id=10851https://bugs.freedesktop.org/show_bug.cgi?id=10824http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=386385
The greek keyboard definition was changed to replace dead_horn and
dead_ogonek with U0313 COMBINING COMMA ABOVE (aka Psili) and U0314
COMBINING REVERSED COMMA ABOVE (aka Dasia).
This patch modifies the Greek Compose.pre to match.
It is generated by the script Jan Willem Stumpel <jstumpel@planet.nl>
posted to 386385@bugs.debian.org:
#!/usr/bin/perl
while (<>) {
print $_;
if (/dead_horn/) {
s/dead_horn/U0313/;
print $_;
}
elsif (/dead_ogonek/) {
s/dead_ogonek/U0314/;
print $_;
}
}
Remove long compositions that override (or get overriden by) later shorter
compositions, e.g. a four-key compose sequence that gets overriden by a
later three-key compose sequence.
Bug #5575: 'Yugoslavia' has changed to Serbia & Montenegro, along with a
corresponding locale change. Update compose.dir.pre, locale.alias.pre,
and locale.dir.pre. (Milos Komarcevic)
Clean up conditionals for XKB, XCMS, XLOCALEDIR
Create new lib directory for locale modules in ${X11_LIBDIR}/locale/lib. Add this to the default XLOCALEDIR search path.
Create separate X11_LOCALEDATADIR variable pointing at ${datadir}/X11/locale for installing locale data.
Split out xcms, xkb, xlibi18n sources from main xlib bits so they can be conditionally included more easily. Lots of source files have been moved with this step; the result seems like it might be easier to maintain.
Display message at end of configure script with selected options.
Fix manual building with cpp to add -traditional in cpprules.in. This isn't conditionalized at all, so it will break on systems not using GNU cpp.
Mon May 16 17:48:03 2005 Søren Sandmann <sandmann@redhat.com>
Check for kbproto if using XKB.
Require xextproto rather than xextensions
Remove the entries from the xlibs tree, as they are not relevant here.
- For Xcomposite and Xdamage, don't link the build system out of the xc tree
- Link the public X11 headers into their own directory
- Add links to XKeysymDB and XErrorDB
- Add links to all the Xlib man pages
- Add links to the lcUniConv subdirectory
- Conditionally include config.h in Xlib source
//bugs.freedesktop.org/show_bug.cgi?id=2400) attachment #1762 (https://bugs.freedesktop.org/attachment.cgi?id=1762): Fix build bustage caused by broken patch for brazillian locale support (see Bugzilla #1896). Patch by Kevin E. Martin <kem@freedesktop.org>.
xc/nls/locale.alias
xc/nls/locale.dir
//freedesktop.org/bugzilla/show_bug.cgi?id=1544): Adding support for the si_LK (si, sinhala, si_LK, si_LK.UTF-8) locale. Patch by Anuradha Ratnaweera <gnu.slash.linux@gmail.com>.
xc/nls/locale.alias
xc/nls/locale.dir
Adding some of the major indic locales (bn_IN.UTF-8, bn_IN.utf8, gu_IN.UTF-8, gu_IN.utf8, pa_IN.UTF-8, pa_IN.utf8) to X. Patch by Leon Ho <llch@redhat.com>.
Compress all font encodings (Stefan Dirsch).
Fixed warnings.
Turn on forwarding XNSpotLocation event to XIM server in OffTheSpot and Root mode (bugzilla #1580, James Su).
Added another compose key combination for the Euro symbol (Stefan Dirsch).
Added support for UTF-8 in ja_JP, ko_KR and zh_TW locales (Mike Fabian).
Changed default encoding for ru from KOI8-R to ISO8859-5 (Mike Fabian). This is the encoding that is also used by glibc. We may break other libcs - lets see who complains.
Added explanation for DESTDIR to install to a different directory than /.
Added some early bailouts to atiprobe if PCI structure pointer is NULL to prevent sig11.
XV support doesn't depend on 2D acceleration any more. This patch removes this limitation from the NSC driver. This is a patch that I have committed to XFree86 a while ago but never ported over to X.Org. Matthieu Herrb contributed some build fixes.
Fixing SetDPMSTimers() so that DPMS*Time == 0 disables the appropriate timer. This takes advantage of the fact that TimerSet() with a timeout argument 0 behaves like TimerCanel().
Use /dev/xconsole (named pipe) or devpts for system logger (Werner Fink).
Create missing links for backward compatibility to XFree86 (Stefan Dirsch).
Changed comment to mention xorg.
Changed cursor for the 'kill' action from XC_draped_box to XC_Pirate. If you don't like it we can change it back (original author unkown).
Added 'pic' to the man page rendering command pipeline (Werner Fink).
Added missing return value (Stefan Dirsch, Roland Mainz)