discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Multi-lingual cut & paste support (was Re: One for our asian languag


From: Kazunobu Kuriyama
Subject: Re: Multi-lingual cut & paste support (was Re: One for our asian language experts...)
Date: Tue, 05 Aug 2003 17:40:06 +0900
User-agent: Mozilla/5.0 (X11; U; Linux i686; ja-JP; rv:1.4) Gecko/20030624 Netscape/7.1

Hi, Fred and all,

Fred Kiefer wrote:

Kazunobu Kuriyama wrote:

Attached is the patch that enables multi-lingual cut & paste with gpbs.


This patch is rather nice and improves behavior in many cases. But it also makes it worse in the interaction with an old X application that only supports STRING or COMPOUND_TEXT. What we should do in the long run is to ask for all different types we are able to support for text and also provide all the different types ourself. Than the best matching type could be used.

I don't think at all it makes worse because even the older versions of gpbs have not supported COMPOUND_TEXT; I'm afraid you cannot compare the modified gpbs with the older ones in terms of it. Nonetheless, I think you are suggesting a good point
we should discuss.

I think the suggested way is just part of the discipline which X11-based libraries should keep. Nonetheless, I'd like you and all folks to listen to my reasons again, although they are similar to those in the email you quote. You might find that the implication of your suggestion is much more than you had expected. The implication is likely to drive us (me, at least) to a more complicated situation (or the hell). Therefore, I'd like to make up my mind whether or not I modify the code further
after receiving your reply on mine to this issue.

As I mentioned in the email you quote, the new implementation is exploited only if the underlying window system is XFree86 4.0.2 or higher. Otherwise, the implementation falls back to the original one. So one of the cases we should take into consideration is this: the Copy & Paste interaction between the current GNUstep and X toolkits/clients which were developed under the older X11's, i.e., those not using the X11's utf8 extension (directly or indirectly through the relevent libraries to which they are linked).

As a user of such an old X11 toolkit/client, there may be two choices:
(1) Ask GNUstep to correct the gpbs's behavior.
(2) Ask the X11 toolkit's or client's developer to update its code so that it can
   make use of the utf8 extension.
I think the latter is much better because it is likely to bring "genuine progress" not only to our community but also to the outside of the GNUstep world. Technically, making use of the API is much easier than creating a new, complicated version of
gpbs.

In the same mail, I also talked about a possible problem caused by the locale an application uses (under the condition that unicode is not used). Because there are various possible cases in which GNUstep applications interact with non-GNUstep ones, I don't think we can specify a unique GNUstep's behavior which makes all users satisfy with it. More specifically, suppose you have Ink running under LANG=de_DE, and xedit under LANG=ru_SU (SU is still used?), and GNUSTEP_STRING_ENCODING is set to NSJapaneseEUCStringEncoding. Now you are trying to do copy and paste between the Ink and the xedit of which contents has Russian words with their Japanese translation. Then can we specify "the right behavior" which GNUstep should have? In other words, can we uniquely specify the encoding the user wants to use primarily? Off course, we could impose it on every user; however, I'm afraid some people won't be satisfied with
it and someday we'll have an email entitled "gpbs is broken..."

I suspect, therefore, we cannot offer any "silver bullet" against the problem above in a manner which makes everybody happy even if we make some effort by which GNUstep supports COMPOUND_TEXT. After all, the problem is rooted in the locale mechanisms of both unices (the standard C library) and X11, plus the mess lying between them; if there were no problem over there, the X11 people would never devise the utf8 extension.

Taking all above into consideration, I made the patch and explained in the email why
I didn't write code in such a way that it supports COMPOUND_TEXT.

IMHO, the X11's utf8 extension really makes our lives much easier. :-) Also, I guess COMPOUND TEXT will be gone away in relatively near future because genuine i18n
applications are hardly written with it.

Cheers,
- Kazu

P.S.
Having said so, if you have other reasons stronger than mine, or if there's someone who really gets into trouble with the recent extension to gpbs, feel free to let me know via the mailing list. I'll see to it as possible as I can. Otherwise, I'll humbly reply to you, "Update your X and recompile GNUstep with it. Ask the X toolkit's or client's developer to update the code to support utf8. To be sure, it sounds annoying; however, in the long run, you will get much benefit from it, which can be shared with people in
the open source community. (At least, it saves my time anyway! :-)"





reply via email to

[Prev in Thread] Current Thread [Next in Thread]