Hello, i would have a followup which removes the GNULib dependency off groff. I've sent it to Werner a month ago but i think that is not his direction, yet i want to at least mention it on the list.
The problem: i think currently groff makes false use of wcwidth(3): if it finds the `unicode' property in a `DESC' file it uses wcwidth(3) to determine the visual width, not taking into account the current locale, but which wcwidth(3) depends upon. Also groff uses UCS4 / UTF-32 code points, but (unfortunately) neither ISO C nor POSIX specify the character set that wchar_t uses, and in fact at least the Citrus project (*BSD and deriviatives) uses some homebrew bit pattern for several (asian) locales. Whereas GNULib also offers wcwidth-replacement functions which are defined to use UCS4 / UTF-32 code points, one of my personal projects is a Unicode aware library, and, short, i've sent Werner a patch that implements a `unicode_is_fullwidth()' functionality, which is what the current code requires to have. The neat side effect of that is that the entire GNULib can be unhooked and removed from groff(1). Note that this also finalizes the Makefile cleanup in that `clean' and `distclean' targets leave no more garbage behind (i never made it to get the GNULib part right, so i finally gave up on this). And of course configuration and compilation are faster. Remarks: - as the above conditions imply, it doesn't seem to actually matter, but unicode_is_fullwidth() could blindly return any value (it is, however, correct). - be warned that if there will be no maintainer for groff until 2017, once my Unicode library (in which i have the most keen interest) has grown a bit and the MUA that Stuart Henderson (OpenBSD) "has given me the maintership of" is in an acceptable state, i will ask kindly whether the opportunity to overtake maintainership of this grown and important program would be given to me. But for one i had to start from zero, then, and second, i surely would go for my, then usable, Unicode library to add Unicode support to groff, instead of using GNULib, and third, it would have to be a Public Domain contract. It's just that i think i had to give a note on maintainership. --steffen