I've thought on and off that it would be nice for the graphical version of aptitude to have decent hyphenation. Word-wrapping descriptions looks OK, but when the text area is thinner than the entire screen, it can look a little ragged on the right-hand side. For instance, take this rendering of the description of the toy program bb:
Not too bad, but if I render it in LaTeX, here's how it comes out:
Of course, for very thin text columns (and the above is arguably pushing it), hyphenation and text justification aren't what you want. But it would be nice to be able to at least see what it looked like.
Figuring that GTK+ might have some support for this, I delved into Google. I found this:
Line breaking adds additional layers of complexity. For one, all potential line breaks must be identified, including discretionary hyphens for Latin scripts, and word boundaries in (???). Secondly, inserting hyphens may require reshaping. Third is the line breaking algorithm itself, which may be nontrivial.
-- Pango 0.1 proposal, Raph Levien, 1999
Future plans for Pango include support for high quality printing, better hyphenation support, full justification, and the ability to handle vertical text such as Chinese and Japanese.
-- Pango: Text handling for the World, LWN (Forrest Cook) 2001
and also this:
I've been working on code to do hyphenation, hopefully to add to Pango. My new code is faster than libhnj and groff and uses less memory.
-- Hyphenation Design (Was Re: Possible Pango 1.4 ideas), Damon Chaplin, post to
But no sign that any work has been done on hyphenation recently.
The one intriguing thing I noticed, although it's not GTK+ at all, was
the libhyphen0 library, which might be useful.
Unfortunately, it's a bit more complicated than just flipping a switch
in GTK+: the library is
documentation-free, so to figure out
how to use it I'll need to read through its source code and deduce the
expected interface from that. Meh. Probably something to stick way
at the bottom of the priority list.