(no subject)


Subject: (no subject)
From: Vlad Harchev (hvv@hippo.ru)
Date: Wed Nov 15 2000 - 10:57:27 CST


 Here is a patch that fixes smartquotes problem and contains a workaround for
crashes when iconv(cd,0,0,0,0) is called.

 As for smartquotes problem: analysis is very funny. (Following text applies
to ISO-8859-1 encoding, not any cyrillic one).
 First, there are two sets of unicode symbols that are both "nice quotes":
(listed only left ones)

0xab:LEFT-POINTING DOUBLE ANGLE QUOTATION MARK (aka "LEFT POINTING GUILLEMET")
0x201c:LEFT DOUBLE QUOTATION MARK (aka "DOUBLE TURNED COMMA QUOTATION MARK")
 Counterparts are 0xbb and 0x201d

 From the names, it's obvious that the symbol in fonts shipped with AW ('<<')
is better characterised as "LEFT-POINTING DOUBLE ANGLE QUOTATION MARK"
rather than "DOUBLE TURNED COMMA QUOTATION MARK").
 
 While 0xab (0xbb) are present directly in charsets ISO8859-1 and cp1252
(windows encoding for latin1), 0x201c (0x201d) is not there, exactly:

1) libiconv's iconv maps 0x201c to '"'
2) glibc's iconv can't map 0x201c to anything.

 State after that patch:
 In first case (linking with libiconv) remapping to "nice" glyphs works
only when printing, the plain quotes are shown on the screen.
 In second case, modifying remapGlyphsDefault (included in patch) makes "nice"
quotes to appear on screen and in printed version.

 I think that we should try to use 0xab and 0xbb instead of 0x201c/0x201d as
smartquotes. Does anyone knows why it wasn't chosen from first time? If there
was no reasonable reason for such choice, it may be wise idea to (try to)
switch to 0xab/0xbb as smartquotes.

 What do you think about all this?

 Best regards,
  -Vlad




This archive was generated by hypermail 2b25 : Wed Nov 15 2000 - 11:24:55 CST