Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Unicode(UTF-8) は使えない?
From: Rei FURUKAWA <furukawa@xxxxxxxxxxxx>
Subject: [namazu-users-ja] Re: Unicode(UTF-8) は使えない?
Date: Sat, 17 Aug 2002 12:12:14 +0900
> 試しに、nkf で UTF-8 が使えるようにしてみました。
> http://www01.tcp-ip.or.jp/~furukawa/nkf_utf8/
なかなかおもしろそうです。適当なDOCファイルで
wvHtml hoge.doc hoge.html; ./nkf -e hoge.html などとしてみましたが、
いまのところはうまく動いています。make test も問題ありません。
自動判別させられるようになれば、フィルタで lv を呼んでるところを
codeconv::toeuc($cont) だけでよくなるので、簡単にできますね。
> まだまだバグがあると思われます (特に、自動判別や、文字コード
> の混在、エラー処理などの部分) ので、何か問題があったら
> furukawa@xxxxxxxxxxxx までお知らせ下さい。
とりあえず、以下のコンパイル時のエラーだけ除いてみましたので、
差分をつけておきます。参考まで。
% make CC=gcc CFLAGS="-O2 -Wall"
gcc -O2 -Wall -c utf8tbl.c
gcc -O2 -Wall -o nkf nkf.c utf8tbl.o
nkf.c:348: warning: initialization from incompatible pointer type
nkf.c:607: warning: type defaults to `int' in declaration of `option_mode'
nkf.c: In function `mime_begin_strict':
nkf.c:2020: warning: `c1' might be used uninitialized in this function
--
馬場 肇 ( Hajime BABA ) E-mail: baba@xxxxxxxxxxxxxxxx
宇宙科学研究所 宇宙科学企画情報解析センター
--
--- nkf.c.orig Sat Aug 17 11:55:01 2002
+++ nkf.c Sat Aug 17 12:54:52 2002
@@ -230,6 +230,7 @@
static void rot_conv PROTO((int c2,int c1));
static void base64_conv PROTO((int c2,int c1));
static void no_connection PROTO((int c2,int c1));
+static int no_connection2 PROTO((int c2,int c1,int c0));
static void code_status PROTO((int c));
@@ -345,7 +346,7 @@
static void (*oconv)PROTO((int c2,int c1)) = no_connection;
/* s_iconv or oconv */
-static int (*iconv)PROTO((int c2,int c1,int c0)) = no_connection;
+static int (*iconv)PROTO((int c2,int c1,int c0)) = no_connection2;
static void (*o_zconv)PROTO((int c2,int c1)) = no_connection;
static void (*o_fconv)PROTO((int c2,int c1)) = no_connection;
@@ -604,7 +605,7 @@
#endif
};
-static option_mode;
+static int option_mode;
void
options(unsigned char *cp)
@@ -2017,7 +2018,7 @@
mime_begin_strict(f)
FILE *f;
{
- int c1;
+ int c1 = 0;
int i,j,k;
unsigned char *p,*q;
int r[MAXRECOVER]; /* recovery buffer, max mime pattern lenght */
@@ -2520,10 +2521,18 @@
#endif
void
-no_connection(c1,c2)
-int c1,c2;
+no_connection(c2,c1)
+int c2,c1;
+{
+ fprintf(stderr,"Module connection failure.\n");
+ exit(1);
+}
+
+int
+no_connection2(c2,c1,c0)
+int c2,c1,c0;
{
- fprintf(stderr,"Module connection faileur.\n");
+ fprintf(stderr,"Module connection failure.\n");
exit(1);
}