Pango Status Report #5 4 Apr 2000 ====================================== General news: My project of switching GTK+ over to use Pango is finally beginning to show some results. Some first screenshots are at: http://www.pango.org/gallery.shtml More below about how the adventurous can get their hands on this code. Karl Koehler made a large number of improvements to his Arabic shaper, including expanding the available ligatures, supporting more font encodings, and adding Farsi support. (Which apparently needs testing.) Recent progress: For the last couple of weeks, I've been concentrating on GTK+ and making the changes in Pango that have seemed necessary to support the GTK+ work. Examples include: - Support for underline and background color attributes when rendering layouts. (Used for accelerators and selections respectively.) - Ability to retrieve logical attributes (word break positions, etc.) for an entire layout. (Used for cursor positioning) - Ability to get logical ascent/descent for an entire PangoFont, not just for strings. (Used to pick sizes for GtkEntry widgets.) Many bug fixes have also been made. Releases: Pango-0.9 is on available from www.pango.org. RPM's of pango, libunicode and libfribidi are also there. I've also put up snapshots of GTK+ with Pango support at the same place. These are very much unstable and unsupported; but if any brave souls want to try them out and give suggestions (or fixes) for the editing behavior, I'd appreciate it. Instructions for building these tarballs without messing up your existing setup are included on the download page. TODO highlights: The projects I intend to tackle next are: - Finish up adding pango-support to the current GTK+ widgets. - Work on Pangoizing Havoc's port of the Tk text widget. - Write the necessary Pango functions to get proper arrow-key behavior in GtkEntry. Some interesting projects that other people might want to consider: - Write a libart based font-system and renderer to go along with the X based one. It would be good to have an idea about how well the interfaces work with something other than X before we get too far along. (Alternatively, write a FreeType-based font-system and renderer to go along with the X-based one.) - Write a shaping engine for whatever language you are interested in. - Come up with a XKB-based keyboard map for Arabic, so people can test out the GTK+ editing support with Arabic. (If you are interested this but don't know how to procede with this, let me know and I can give some hints.) Misc stuff: [ Absent this week so I can get this off tonight. Send me notes about interesting internationalization developments. ] Owen Taylor