[lsb-discuss] LSB 3.2 discussion of X libraries / interfaces

Robert Schweikert Robert.Schweikert at abaqus.com
Wed Jun 28 12:01:38 PDT 2006


I'd like to focus on the multibyte character symbols.

> The other request I was pursing was to add a set of
> Xlib multibyte character interfaces:
> Xutf8DrawString
> Xutf8TextExtents
> Xutf8TextEscapement
> I had originally responded that we had some Xutf8 interfaces,
> but not all, in the current spec and maybe we should look at 
> the rest, but got fairly strong pushback that this was the 
> wrong way to go (and that possibly, the existing Xutf8 interfaces
> were included in error). Here's one comment:
> ===
> The problem is the UTF-8 interfaces all require huge translation tables
> to get from UTF-8 to whatever font encoding is present on the system.
> Having the low level protocol library responsible for transcoding text
> is a *bad idea* on so many levels.
> Applications interested in UTF-8 text APIs should be using Xft, cairo,
> Gtk+ or Qt, all of which provide this encoding without requiring
> Xlib-level iconv-ish support.
> ===

If the Xutf8* functions are not supposed to be included in the LSB based
on the strong push back that's fine with me. However, in this case a
replacement interface needs to be available. In this case Xft has what
appear to be equivalent functions based on the name for only 2 of the 3

Xutf8DrawString            -->  XftDrawStringUtf8
Xutf8TextExtents           -->  XftTextExtentsUtf8
Xutf8TextEscapement        -->  ????

> Of course, for an app which is not presently using Gtk+/Qt to
> have to switch to doing so to get UTF-8 capability is a bit
> heavyweight, and since cairo isn't in the LSB yet and isn't on
> the list for this release, I've added Xft to the list of libraries
> we should be considering.

Thanks for adding Xft to the list, however with the missing interface
(see above) Xft is not sufficient. In addition Xft depends on


plus X11 and Xext but these are already part of the LSB.

There also appear to be alternative interfaces which are lareday part of
the LSB Xmb* but I think these didn't work for us when using UTF-8
encoding (researching this part).

I guess the bottom line is that a complete multibyte character interface
is part of the LSB.


> Also a disclaimer:  I'm filling this stuff in so it gets
> researched and recorded, but we don't have a resource 
> committed (yet) to the steps to get these things in, nor
> in fact a decision that they're going into LSB 3.2. The
> discussion here will help drive that choice.
> -- mats
> _______________________________________________
> lsb-discuss mailing list
> lsb-discuss at lists.freestandards.org
> http://lists.freestandards.org/mailman/listinfo/lsb-discuss
Robert Schweikert                   MAY THE SOURCE BE WITH YOU
(Robert.Schweikert at abaqus.com)                 LINUX
Phone : 401-276-7190
FAX : 401-276-4408

More information about the lsb-discuss mailing list