|
From: | Takao Fujiwara - Tokyo S/W Center |
Subject: | Re: [Lynx-dev] lynx iconv for Solaris |
Date: | Fri, 26 Dec 2008 03:45:13 +0900 |
User-agent: | Thunderbird 2.0.0.12 (X11/20080326) |
Thomas Dickey-san wrote (12/25/08 11:11 PM):
On Thu, 25 Dec 2008, Thomas Dickey wrote:@@ -952,6 +952,20 @@ int UCTransUniCharStr(char *outbuf,HTSprintf0(&tocode, "%s//TRANSLIT", LYCharSet_UC[charset_out].MIMEname);cd = iconv_open(tocode, "UTF-16BE"); FREE(tocode) + if (cd == (iconv_t)-1) { + HTSprintf0(&tocode, "%s", LYCharSet_UC[charset_out].MIMEname);I'm puzzled here - since TRANSLIT is less stringent, I would expect that the check would be first made on the exact translation rather than on the transliteration. Any comments?looking a little further, I see that the issue is that TRANSLIT is a glibc extension, so it's tried first in case it works. (google didn't show much comment about whether it's more/less likely to succeed than the plain POSIX version).
Yes, you're right. This means Solaris iconv always failed the "$ENCODING//TRANSLIT". So if iconv_open("$ENCODING, "UTF-16BE") is added without "//TRANSLIT", it works on none GNU iconv. > - if ((strcmp(LYCharSet_UC[charset_out].MIMEname, "shift_jis") == 0) || > - (strcmp(LYCharSet_UC[charset_out].MIMEname, "euc-jp") == 0)) { > + if (LYCharSet_UC[charset_out].codepage == 0 && > + LYCharSet_UC[charset_out].codepoints == 0) { > iconv_t cd; This means I'd like to use iconv for CJK but not Japanese only.
[Prev in Thread] | Current Thread | [Next in Thread] |