John Levon <[EMAIL PROTECTED]> writes: | > languages if volunteers come and help out. Don't worry about composed | > Unicode glyphs for now - it's a corner case that can be handled once | > someone feels the heat (which will probably when hell freezes over AFAICT). | | This seems a horribly euro-centric point of view. (Says the guy who can | only speak one language...)
I agree with that, but I also agree with Asger, that this won't be much worse than what we have right now. And we do open up for further refinements from such a change. I just did some tests (using libidn and the nice stringprep utility functions therein). Just by changeing Paragraph::value_type to uint32_t and adding stringprep_ucs4_to_utf8 on output, and some strigprep_locale_to_utf8 -> stringprep_utf8_to_ucs4 on input, I almost have it working. Some strange drawing... some strange characters... but I do get a utf8 lyx file. (man stringprep(3) etc) Finishing this step and removing all code now rendered cruft, might also give us a better position to move forward with combining characters, ligatures, bidi etc. (cruft: intl stuff... translateAndInsert... stuff like that) I fear that XForms might need an upgrade to use either XwcLookup or XmbLookup to give us what we require in the keyhandler (we might we able to do it the event handler as well, unless xforms already ate some of our multibyte chars). Or some IM thingie (More work for you while in retirement Angus). With QT it should be super easy... Also to make some of this nicer I think we need my "any-patch", I'll dig that out of the closet (right when 1.4.0 is released...) (we pass a keysym from the frontend... this is turned into a std::string and sent to dispatch()... we loose info on the way...) So in conclusion: As a first step towards proper unicode support a change from the localespecific 8-bit representation we have used until now move to a basic uint32_t UCS-4 simple codepoint solution instead. We may then temporarily loose hebrew,arabic but as unicode support progresses those should come back nicely. -- Lgb