On Sat, Dec 17, 2005 at 11:57:20PM +0100, Juliusz Chroboczek wrote: > > no_escape po c | c `elem` poNoEscX po = True > > no_escape _ '\t' = True -- tabs will likely be converted to spaces > > no_escape _ '\n' = True > > -no_escape po c = if (poIsprint po) then isPrint c > > +no_escape po c = if (poIsprint po) then c_isprint c > > else isPrintableAscii c > > || c >= '\x80' && po8bit po > > I think what you're seeing is that this doesn't work in multi-bytes > locales, such as UTF-8.
That's not _the_ problem. There's no attempt to (completely) solve the problem with utf-8 so far. The problem is with the C locale. Then Haskell's isPrint should works just fine, and it does ... except for three users having reported problems, all when upgrading to GHC 6.4. But when I recently upgraded to GHC 6.4 it worked, of course... ;-/ So there must be something else in combination with GHC 6.4. Mark Stosberg had the problem on FreeBSD 4.10 with perl 5.8.0. I didn't get it on Linux 2.6 with perl 5.8.7. I can't find the other mails now. The precise problem is (as far as I understands it): perl sets LC_ALL to C, perl invokes darcs, in darcs isPrint erroneously returns true for chars in the range \x80 (or maybe \xa0) to \xff. It could be GHC, perl or even libc that wrongs. -- Tommy Pettersson <[EMAIL PROTECTED]> _______________________________________________ darcs-devel mailing list [email protected] http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel
