Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Combining characters and MacOSX
- X-seq: zsh-workers 24842
- From: "Jun T." <takimoto-j@xxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: Combining characters and MacOSX
- Date: Sat, 19 Apr 2008 00:52:19 +0900
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
Since all the filenames are decomposed in MacOSX, I guess
many Mac users (including me) have been waiting for the
combining character support eagerly.
But the recent "combining character patch" does not work
on MacOSX, just because wcwidth() on MacOSX is broken.
For example,
wchar_t w = 0x0301; /* COMBINING ACUTE ACCENT */
printf("%d %d\n", wcwidth(w), iswpunct(w) );
this will print "0 1" on Linux but "1 0" on MacOSX. I think
this is a serious bug of MacOSX, but I don't know whether Apple
will fix this or not; maybe they won't at least in a near future.
Is it possible to include a working version of wcwidth()
in the zsh source tree and use it if the system's wcwidth()
is broken?
For example, a version written by Markus Kuhn can be found in:
http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
Gnulib also has wcwidth(), but I guess the above one is much
easier to include into the zsh source.
As I wrote in another post, use of iswpunct() can be avoided
if the combining character is defined solely by wcwidth(wc)==0.
Jun
Messages sorted by:
Reverse Date,
Date,
Thread,
Author