On Mon, Mar 08, 2004 at 08:29:27PM +0100, Marcus Lundblad wrote: > > > On Mon, 8 Mar 2004, Dan Espen wrote: > > > Marcus Lundblad <[EMAIL PROTECTED]> writes: > > > > Markus can you check that all the new (vs 2.5.7) text conversion > > > > stuff are not used too often? > > > > > > > > > > I removed some redundant calls. > > > Actually for example when drawing underlines, the width (in pixels) of one > > > character is computed. In this case, if the character consists of one byte > > > (ISO-8859-x) I make the assumption that the width is equal to the "raw" > > > character corresponding to that byte. This will work exept for ISO-8859-6 > > > (8-bit Arabic) which we don't support anyway (this would need joining > > > characters using UTF-8 internally). > > > I also included a check in the drawing routine so that character positions > > > is only computed when combining characters are actually present in the > > > string (redundant otherwise). > > > > > > Could somebody try this out in Solaris 8? > > > > It's definitely faster. > > The menus come up blank and the text appears 1/4 second later. > > On larger menus, I can see the text appear in blocks. > > > > How about using UTF-8 locale on Solaris 8? > Is that implementation smart enough to just return imediatly when > converting UTF-8 to UTF-8 (like in glibc, the pointer is just return back, > the code in Flocale.c checks this)? >
I do not think that the Solaris 8 libc supports an UTF-8 locale. > I don't see much more to do (the combining code uses 16-bit charcters > internally, so converting to UTF-8 and then to 16-bit is needed). > One alternative as a last emergency could be to write special code as > fallback for at least ISO-8859-x to/from UTF-8, but this seems close to > reimplementing Iconv. > Hum, for which charset we need to "combine" characters? Do we need to combine for iso8859 1 or 15 charset for example? If yes can you give a concrete example. With bidi conversion are performed only for UTF-8, ISIRI-3342, ISO8859-6, ISO8859-9, CP1255 or CP1256. I suggest we do something like that for combining. > Actually I find it amazing that implementation can be so slow. > On my system, PII 400 MHz, I don't notice any abnormal delay even using > the version before my last fix (though I use UTF-8 locale, so maybe that's > the reason). > The problem is not the CPU. It seems that on Solaris 8 iconv is dramatically slow. Regards, Olivier -- Visit the official FVWM web page at <URL:http://www.fvwm.org/>. To unsubscribe from the list, send "unsubscribe fvwm-workers" in the body of a message to [EMAIL PROTECTED] To report problems, send mail to [EMAIL PROTECTED]