[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Groff] A followup on the Makefile cleanup

From: Steffen Nurpmeso
Subject: [Groff] A followup on the Makefile cleanup
Date: Mon, 28 Apr 2014 13:41:57 +0200
User-agent: s-nail v14.6.4-16-gdcac81f


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)

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.


- 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.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]