OSDN Git Service

Fix: Windows Codepages wrongly convert Halfwidth Katakana. [nkf-bug:21393]
authorNARUSE, Yui <naruse@users.sourceforge.jp>
Tue, 13 Apr 2010 11:21:21 +0000 (20:21 +0900)
committerNARUSE, Yui <naruse@users.sourceforge.jp>
Tue, 13 Apr 2010 11:21:21 +0000 (20:21 +0900)
nkf.c
nkf_test.pl

diff --git a/nkf.c b/nkf.c
index 7944d62..bcf408f 100644 (file)
--- a/nkf.c
+++ b/nkf.c
@@ -21,7 +21,7 @@
  * 3. This notice may not be removed or altered from any source distribution.
  */
 #define NKF_VERSION "2.1.1"
-#define NKF_RELEASE_DATE "2010-03-15"
+#define NKF_RELEASE_DATE "2010-04-13"
 #define COPY_RIGHT \
     "Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa).\n" \
     "Copyright (C) 1996-2010, The nkf Project."
@@ -1209,7 +1209,7 @@ set_input_encoding(nkf_encoding *enc)
     case CP50220:
     case CP50221:
     case CP50222:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef SHIFTJIS_CP932
        cp51932_f = TRUE;
 #endif
@@ -1231,7 +1231,7 @@ set_input_encoding(nkf_encoding *enc)
     case SHIFT_JIS:
        break;
     case WINDOWS_31J:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef SHIFTJIS_CP932
        cp51932_f = TRUE;
 #endif
@@ -1253,7 +1253,7 @@ set_input_encoding(nkf_encoding *enc)
     case EUCJP_NKF:
        break;
     case CP51932:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef SHIFTJIS_CP932
        cp51932_f = TRUE;
 #endif
@@ -1333,7 +1333,7 @@ set_output_encoding(nkf_encoding *enc)
 #endif
        break;
     case CP50221:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef SHIFTJIS_CP932
        if (cp932inv_f == TRUE) cp932inv_f = FALSE;
 #endif
@@ -1362,7 +1362,7 @@ set_output_encoding(nkf_encoding *enc)
     case SHIFT_JIS:
        break;
     case WINDOWS_31J:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef UTF8_OUTPUT_ENABLE
        ms_ucs_map_f = UCS_MAP_CP932;
 #endif
@@ -1391,7 +1391,7 @@ set_output_encoding(nkf_encoding *enc)
 #endif
        break;
     case CP51932:
-       x0201_f = TRUE;
+       x0201_f = FALSE;
 #ifdef SHIFTJIS_CP932
        if (cp932inv_f == TRUE) cp932inv_f = FALSE;
 #endif
index 73a360f..32ae3fd 100644 (file)
@@ -1041,6 +1041,11 @@ printf "%-40s",  "[nkf-forum:48850]    ";
        "From: =?ISO-2022-JP?B?GyRCJCIkIiQiJCIkIiQiJCIkIiQiGyhC?=" .
        " <x-xxxx@xxxxxxxxxxxx.co.jp>\n");
 
+printf "%-40s",  "[nkf-bug:21393]    ";
+    &test("$nkf --ic=UTF-8 --oc=CP932",
+    "\xEF\xBD\xBC\xEF\xBE\x9E\xEF\xBD\xAC\xEF\xBD\xB0\xEF\xBE\x8F\xEF\xBE\x9D\xEF\xBD\xA5\xEF\xBE\x8E\xEF\xBE\x9F\xEF\xBE\x83\xEF\xBE\x84\xEF\xBD\xA1",
+    "\xBC\xDE\xAC\xB0\xCF\xDD\xA5\xCE\xDF\xC3\xC4\xA1");
+
     if (!NKF) {
 printf "%-40s", "Guess NL";
 &command_tests(