diff -Naur kinput2-v3.1.orig/Kinput2.conf kinput2-v3.1/Kinput2.conf
--- kinput2-v3.1.orig/Kinput2.conf	Thu Oct  3 09:35:26 2002
+++ kinput2-v3.1/Kinput2.conf	Mon Mar 29 21:19:55 2004
@@ -18,7 +18,7 @@
 /* #define UseWnn */	/* define if you are going to use Wnn (v4, v6 or v7) */
 /* #define UseWnn6 */	/* define if you are going to use Wnn6 or above */
 #define UseCanna	/* define if you are going to use Canna */
-#define UseSj3		/* define if you are going to use Sj3 */
+/* #define UseSj3 */	/* define if you are going to use Sj3 */
 /* #define UseAtok */	/* define if you are going to use Atok */
 
 
@@ -78,17 +78,17 @@
  * If you have already installed Canna header files and libraries..
  */
 XCOMM use installed headers/libraries
-XCOMM CANNAINSTDIR = /usr/local/canna
-XCOMM CANNASRC = $(CANNAINSTDIR)/include
-XCOMM CANNALIB = -lcanna16
+CANNAINSTDIR = $(PREFIX)
+CANNASRC = $(CANNAINSTDIR)/include
+CANNALIB = -L$(CANNAINSTDIR)/lib -lcanna16
 
 /*
  * If you have compiled Canna that came with X11R6 (contrib/programs/Canna),
  * but not installed yet..
  */
 XCOMM use headers/libraries in the source tree
-CANNASRC = $(CONTRIBSRC)/programs/Canna32
-CANNALIB = -L$(CANNASRC)/lib/canna16 -lcanna16
+XCOMM CANNASRC = $(CONTRIBSRC)/programs/Canna32
+XCOMM CANNALIB = -L$(CANNASRC)/lib/canna16 -lcanna16
 
 
 XCOMM SJ3 configuration
diff -Naur kinput2-v3.1.orig/cmd/Kinput2.ad kinput2-v3.1/cmd/Kinput2.ad
--- kinput2-v3.1.orig/cmd/Kinput2.ad	Thu Oct  3 09:35:26 2002
+++ kinput2-v3.1/cmd/Kinput2.ad	Mon Mar 29 21:18:39 2004
@@ -96,7 +96,7 @@
 ! XimpProtocol
 *XimpProtocol.ForceDefaultServer: true
 ! X Input Method Protocol
-*IMProtocol.locales: ja_JP.SJIS, ja_JP.EUC, ja_JP, japanese, japan, ja
+*IMProtocol.locales: ja_JP.UTF-8, ja_JP.eucJP, ja_JP.SJIS, ja_JP, japanese, japan, ja
 ! common to XimpProtocol and IMProtocol
 *defaultFontList: -misc-fixed-medium-r-normal--14-*-*-*-c-*
 *ConversionStartKeys: \
diff -Naur kinput2-v3.1.orig/copyright kinput2-v3.1/copyright
--- kinput2-v3.1.orig/copyright	Thu Jan  1 00:00:00 1970
+++ kinput2-v3.1/copyright	Mon Mar 29 21:16:19 2004
@@ -0,0 +1,22 @@
+/*
+ *	kinput2
+ */
+
+/*
+ * Copyright (C) 1991 by Software Research Associates, Inc.
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation for any purpose and without fee is hereby granted, provided
+ * that the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Software Research Associates not be
+ * used in advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission.  Software Research
+ * Associates makes no representations about the suitability of this software
+ * for any purpose.  It is provided "as is" without express or implied
+ * warranty.
+ *
+ * Author:  Makoto Ishisone, Software Research Associates, Inc., Japan
+ *		ishisone@sra.co.jp
+ */
+
diff -Naur kinput2-v3.1.orig/lib/Canna.c kinput2-v3.1/lib/Canna.c
--- kinput2-v3.1.orig/lib/Canna.c	Thu Oct  3 09:35:27 2002
+++ kinput2-v3.1/lib/Canna.c	Mon Mar 29 21:20:35 2004
@@ -61,6 +61,10 @@
 #include "CannaP.h"
 #include "DebugPrint.h"
 
+/* Canna 3.7$B0J9_$O$3$N$h$&$KDj5A$9$k(B */
+#define CANNA_WCHAR16
+#define CANNA_NEW_WCHAR_AWARE
+/* Canna 3.6$B$^$G$N>l9g(B */
 #define _WCHAR_T /* $B$3$NDj5A$O(B jrkanji.h $B$G(B wcKanjiStatus $B$J$I$rDj5A$9$k$?$a(B */
 #define wchar_t wchar
 
@@ -246,7 +250,7 @@
     kanabuf[0] = '\0';
     nbytes = XKanaLookup(event, kanabuf, 20, &ks, &compose_status);
 
-    buf[0] = (wchar)kanabuf[0]; /* $B$-$?$J$$(B */
+    buf[0] = (wchar)(unsigned char)kanabuf[0]; /* $B$-$?$J$$(B */
 
     if (ks == XK_space && (event->xkey.state & ShiftMask)) {
       void convend();
@@ -271,7 +275,7 @@
 
     /* $B$+$J4A;zJQ49$9$k(B */
     len = wcKanjiString((int)obj, (int)buf[0],
-			(wchar_t *)buf, 1024, &kanji_status);
+			(wchar *)buf, 1024, &kanji_status);
 
     displayPreEdit(obj, len, buf, &kanji_status);
     return (kanji_status.info & KanjiThroughInfo) ? 1 : 0;
@@ -642,7 +646,9 @@
 CannaObject obj;
 {
   char **warn = 0;
+#ifndef CANNA_JR_BEEP_FUNC_DECLARED
   extern (*jrBeepFunc)();
+#endif
 
   if (nCannaContexts == 0) {
 #ifdef KC_SETSERVERNAME
diff -Naur kinput2-v3.1.orig/xinitrc.kinput2.sh kinput2-v3.1/xinitrc.kinput2.sh
--- kinput2-v3.1.orig/xinitrc.kinput2.sh	Thu Jan  1 00:00:00 1970
+++ kinput2-v3.1/xinitrc.kinput2.sh	Sun Mar 12 09:49:59 2006
@@ -0,0 +1,11 @@
+# If you don't want to launch kinput2, put xinitrc_kinput2_enable=NO
+# in your .xinitrc
+: ${xinitrc_kinput2_enable=YES}
+
+case $xinitrc_kinput2_enable in
+    [Yy][Ee][Ss])
+    if test -x "$fink_prefix/bin/kinput2"; then
+        "$fink_prefix/bin/kinput2" -canna -xim &
+    fi
+    ;;
+esac