diff -ur -x .build less-382-iso262/LICENSE less-382-iso262-imd1/LICENSE
--- less-382-iso262/LICENSE	2007-05-02 00:57:26.566200000 +0900
+++ less-382-iso262-imd1/LICENSE	2007-05-02 00:58:12.495200000 +0900
@@ -7,6 +7,12 @@
 Japanized part of Less
 Copyright (c) 1994-2005  Kazushi (Jam) Marukawa
 
+Patch for cp932
+Copyright (C) 2000-2001 Yosuke IMADA
+
+Adjustment of the patch for cp932 to less-382-iso262
+Copyright (c) 2007 Yak!
+
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
 are met:
diff -ur -x .build less-382-iso262/defines.h.in less-382-iso262-imd1/defines.h.in
--- less-382-iso262/defines.h.in	2007-05-02 00:57:27.132200000 +0900
+++ less-382-iso262-imd1/defines.h.in	2007-05-02 00:58:12.499200000 +0900
@@ -451,3 +451,7 @@
 
 /* Define to `unsigned' if <sys/types.h> does not define. */
 #undef size_t
+
+/* Define if you have a font for tty which have NEC-tokushu-moji,
+   IBM-sentei-NEC-kakuchou-moji IBM-sentei-NEC-kakuchou-moji */
+#define HAVE_NECEXTFNT 1
diff -ur -x .build less-382-iso262/defines.wn less-382-iso262-imd1/defines.wn
--- less-382-iso262/defines.wn	2007-05-02 00:57:26.702200000 +0900
+++ less-382-iso262-imd1/defines.wn	2007-05-02 00:58:12.502200000 +0900
@@ -385,5 +385,9 @@
 #define HAVE_VALUES_H 1
 #endif
 
+/* Define if you have a font for tty which have NEC-tokushu-moji,
+   IBM-sentei-NEC-kakuchou-moji IBM-sentei-NEC-kakuchou-moji */
+#define HAVE_NECEXTFNT 1
+
 #define	popen	_popen
 #define	pclose	_pclose
diff -ur -x .build less-382-iso262/multi.c less-382-iso262-imd1/multi.c
--- less-382-iso262/multi.c	2007-05-02 00:57:27.407200000 +0900
+++ less-382-iso262-imd1/multi.c	2007-05-02 00:58:12.507200000 +0900
@@ -597,6 +597,39 @@
     return 0;
 }
 
+#if HAVE_NECEXTFNT
+/*
+ * Convert IBM-sentei-IBM-kakuchou-moji to NEC-sentei-IBM-kakuchou-moji
+ */
+static int IbmtoNec(int sjis){
+	    if(0xFA40 <= sjis & sjis <= 0xFA7E){
+		     if(sjis <= 0xFA49)	{sjis -= 0x0B51;}
+		else if(sjis <= 0xFA53)	{sjis -= 0x72F6;}
+		else if(sjis <= 0xFA57)	{sjis -= 0x0B5B;}
+		else if(sjis == 0xFA58)	{sjis  = 0x878A;}
+		else if(sjis == 0xFA59)	{sjis  = 0x8782;}
+		else if(sjis == 0xFA5A)	{sjis  = 0x8784;}
+		else if(sjis == 0xFA5B)	{sjis  = 0x81E6;}
+		else			{sjis -= 0x0D1C;}
+	}else if(0xFA80 <= sjis & sjis <= 0xFA9B){
+					 sjis -= 0x0D1D;
+	}else if(0xFA9C <= sjis & sjis <= 0xFAFC){
+					 sjis -= 0x0D1C;
+	}else if(0xFB40 <= sjis & sjis <= 0xFB5B){
+					 sjis -= 0x0D5F;
+	}else if(0xFB5C <= sjis & sjis <= 0xFB7E){
+					 sjis -= 0x0D1C;
+	}else if(0xFB80 <= sjis & sjis <= 0xFB9B){
+					 sjis -= 0x0D1D;
+	}else if(0xFB9C <= sjis & sjis <= 0xFBFC){
+					 sjis -= 0x0D1C;
+	}else if(0xFC40 <= sjis & sjis <= 0xFC4B){
+					 sjis -= 0x0D5F;
+	}
+	return sjis;
+}
+#endif
+
 /*
  * Internalize input stream encoded by SJIS encoding scheme.
  *
@@ -624,6 +657,14 @@
 	int c0 = INBUF0(mp);
 	int c1 = INBUF1(mp);
 	if (ISSJISKANJI(c0, c1)) {
+#if HAVE_NECEXTFNT
+            int sjis;
+            sjis = (c0 << 8) & 0xFF00 |
+                    c1       & 0x00FF;
+            sjis = IbmtoNec(sjis);
+            c0 = (sjis >> 8) & 0xFF;
+            c1 =  sjis       & 0xFF;
+#endif
 	    if (mp->io.scs & SCSJISX0213_2004) {
 		mp->icharset = SJIS2004;
 		mp->cs = JISX02132004KANJI1;
diff -ur -x .build less-382-iso262/unify.c less-382-iso262-imd1/unify.c
--- less-382-iso262/unify.c	2007-05-02 00:57:27.171200000 +0900
+++ less-382-iso262-imd1/unify.c	2007-05-02 00:58:12.515200000 +0900
@@ -751,10 +751,29 @@
 
 static convtab eliminate_wrong_jisx0208_78[] = {
 	/* empty rows */
+#if HAVE_NECEXTFNT
+	/* 8 KU 0x2841($@(A(B)-0x287E($@(~(B) -> 0x222E($B".(B) */
+	{"(A", "(~", "\".", JISX0208KANJI },
+	/* 9-12 KU 0x2921($@)!(B)-0x2C7E($@,~(B) -> 0x222E($B".(B) */
+	{")!", ",~", "\".", JISX0208KANJI },
+	/* 13 KU 0x2D3F,0x2D57-0x2D5E,0x2D7D-0x2D7E -> 0x222E($B".(B) */
+	{ "-?", "-?", "\".", JISX0208KANJI },
+	{ "-W", "-^", "\".", JISX0208KANJI },
+	{ "-}", "-~", "\".", JISX0208KANJI },
+	/* 14-15 KU 0x2E21($@.!(B)-0x2F7E($@/~(B) -> 0x222E($B".(B) */
+	{ ".!", "/~", "\".", JISX0208KANJI },
+	/* 84-88 KU 0x7427($@t'(B)-0x787E($@x~(B) -> 0x222E($B".(B) */
+	{ "t'", "x~", "\".", JISX0208KANJI },
+	/* 92 KU 0x7C6F($@|o(B)-0x7C70($@|p(B) -> 0x222E($B".(B) */
+	{ "|o", "|p", "\".", JISX0208KANJI },
+	/* 93-94 KU 0x7D21($@}!(B)-0x7E7E($@~~(B) -> 0x222E($B".(B) */
+	{ "}!", "~~", "\".", JISX0208KANJI },
+#else
 	/* 8-15 KU 0x2821($@(!(B)-0x2F7E($@/~(B) -> 0x222E($B".(B) */
 	{ "(!", "/~", "\".", JISX0208KANJI },
 	/* 84-94 KU 0x7421($@t!(B)-0x7E7E($@~~(B) -> 0x222E($B".(B) */
 	{ "t!", "~~", "\".", JISX0208KANJI },
+#endif /*HAVE_NECEXTFNT*/
 
 	/* sequences of empty columns */
 	/* 2 KU 0x222F($@"/(B)-0x227E($@"~(B) -> 0x222E($B".(B) */
@@ -789,10 +808,27 @@
 
 static convtab eliminate_wrong_jisx0208_83[] = {
 	/* empty rows */
+#if HAVE_NECEXTFNT
+	/* 9-12 KU 0x2921($B)!(B)-0x2C7E($B,~(B) -> 0x222E($B".(B) */
+	{")!", ",~", "\".", JISX0208KANJI },
+	/* 13 KU 0x2D3F,0x2D57-0x2D5E,0x2D7D-0x2D7E -> 0x222E($B".(B) */
+	{ "-?", "-?", "\".", JISX0208KANJI },
+	{ "-W", "-^", "\".", JISX0208KANJI },
+	{ "-}", "-~", "\".", JISX0208KANJI },
+	/* 14-15 KU 0x2E21($B.!(B)-0x2F7E($B/~(B) -> 0x222E($B".(B) */
+	{ ".!", "/~", "\".", JISX0208KANJI },
+	/* 84-88 KU 0x7427($Bt'(B)-0x787E($Bx~(B) -> 0x222E($B".(B) */
+	{ "t'", "x~", "\".", JISX0208KANJI },
+	/* 92 KU 0x7C6F($B|o(B)-0x7C70($B|p(B) -> 0x222E($B".(B) */
+	{ "|o", "|p", "\".", JISX0208KANJI },
+	/* 93-94 KU 0x7D21($B}!(B)-0x7E7E($B~~(B) -> 0x222E($B".(B) */
+	{ "}!", "~~", "\".", JISX0208KANJI },
+#else
 	/* 9-15 KU 0x2921($B)!(B)-0x2F7E($B/~(B) -> 0x222E($B".(B) */
 	{ ")!", "/~", "\".", JISX0208KANJI },
 	/* 85-94 KU 0x7521($Bu!(B)-0x7E7E($B~~(B) -> 0x222E($B".(B) */
 	{ "u!", "~~", "\".", JISX0208KANJI },
+#endif /*HAVE_NECEXTFNT
 
 	/* sequences of empty columns */
 	/* 2 KU 0x222F($B"/(B)-0x2239($B"9(B) -> 0x222E($B".(B) */
@@ -839,10 +875,27 @@
 
 static convtab eliminate_wrong_jisx0208_90[] = {
 	/* empty rows */
+#if HAVE_NECEXTFNT
+	/* 9-12 KU 0x2921(&@$B)!(B)-0x2C7E(&@$B,~(B) -> 0x222E($B".(B) */
+	{")!", ",~", "\".", JISX0208KANJI },
+	/* 13 KU 0x2D3F,0x2D57-0x2D5E,0x2D7D-0x2D7E -> 0x222E($B".(B) */
+	{ "-?", "-?", "\".", JISX0208KANJI },
+	{ "-W", "-^", "\".", JISX0208KANJI },
+	{ "-}", "-~", "\".", JISX0208KANJI },
+	/* 14-15 KU 0x2E21(&@$B.!(B)-0x2F7E(&@$B/~(B) -> 0x222E($B".(B) */
+	{ ".!", "/~", "\".", JISX0208KANJI },
+	/* 84-88 KU 0x7427(&@$Bt'(B)-0x787E(&@$Bx~(B) -> 0x222E($B".(B) */
+	{ "t'", "x~", "\".", JISX0208KANJI },
+	/* 92 KU 0x7C6F(&@$B|o(B)-0x7C70(&@$B|p(B) -> 0x222E($B".(B) */
+	{ "|o", "|p", "\".", JISX0208KANJI },
+	/* 93-94 KU 0x7D21(&@$B}!(B)-0x7E7E(&@$B~~(B) -> 0x222E($B".(B) */
+	{ "}!", "~~", "\".", JISX0208KANJI },
+#else
 	/* 9-15 KU 0x2921(&@$B)!(B)-0x2F7E(&@$B/~(B) -> 0x222E($B".(B) */
 	{ ")!", "/~", "\".", JISX0208KANJI },
 	/* 85-94 KU 0x7521(&@$Bu!(B)-0x7E7E(&@$B~~(B) -> 0x222E($B".(B) */
 	{ "u!", "~~", "\".", JISX0208KANJI },
+#endif /*HAVE_NECEXTFNT
 
 	/* sequences of empty columns */
 	/* 2 KU 0x222F(&@$B"/(B)-0x2239(&@$B"9(B) -> 0x222E($B".(B) */
@@ -1076,8 +1129,19 @@
 	{ "\204\222", "\204\236", "\201\254", SJIS },
 	/* 8 KU 0x84BF(&@$B(A(B)-0x84FC(&@$B(~(B) -> 0x81AC($B".(B) */
 	{ "\204\277", "\204\374", "\201\254", SJIS },
+#if HAVE_NECEXTFNT
+	/* 9-12 KU 0x8540(&@$B)!(B)-0x86FC(&@$B,~(B) -> 0x81AC($B".(B) */
+	{ "\205\100", "\206\374", "\201\254", SJIS },
+	/* 13-KU 0x875E,0x8776-0x877D,0x877F -> 0x81AC($B".(B) */
+	{ "\207\136", "\207\136", "\201\254", SJIS },
+	{ "\207\166", "\207\175", "\201\254", SJIS },
+	{ "\207\177", "\207\177", "\201\254", SJIS },
+	/* 14-KU 0x879D(&@$B-}(B)-0x87FC(&@$B.~(B) -> 0x81AC($B".(B) */
+	{ "\207\235", "\207\374", "\201\254", SJIS },
+#else
 	/* 9-14 KU 0x8540(&@$B)!(B)-0x87FC(&@$B.~(B) -> 0x81AC($B".(B) */
 	{ "\205\100", "\207\374", "\201\254", SJIS },
+#endif
 	/* 15 KU 0x8840(&@$B/!(B)-0x889E(&@$B/~(B) -> 0x81AC($B".(B) */
 	{ "\210\100", "\210\236", "\201\254", SJIS },
 	/* 47 KU 0x9873(&@$BOT(B)-0x989E(&@$BO~(B) -> 0x81AC($B".(B) */
@@ -1089,8 +1153,17 @@
 	 * SJIS uses area from 85 KU to 120 KU for GAIJI, but current less
 	 * doesn't allow GAIJI.
 	 */
+#if HAVE_NECEXTFNT
+	/* 85-88 KU 0xEB40(&@$Bu!(B)-0xEB9E(&@$Bu~(B) -> 0x81AC($B".(B) */
+	{ "\353\100", "\354\374", "\201\254", SJIS },
+	/* 92 KU 0xEEED(&@$B|o(B)-0xEEEE(&@$B|po(B) -> 0x81AC($B".(B) */
+	{ "\356\355", "\356\356", "\201\254", SJIS },
+	/* 93-94 KU 0xEF40(&@$B}!(B)-0xEFFC(&@$B~~(B) -> 0x81AC($B".(B) */
+	{ "\357\100", "\357\374", "\201\254", SJIS },
+#else
 	/* 85-94 KU 0xEB40(&@$Bu!(B)-0xEFFC(&@$B~~(B) -> 0x81AC($B".(B) */
 	{ "\353\100", "\357\374", "\201\254", SJIS },
+#endif
 	/* 95-120 KU 0xF040(none)-0xFC9E(none) -> 0x81AC($B".(B) */
 	{ "\360\100", "\374\374", "\201\254", SJIS },
 
@@ -1189,14 +1262,34 @@
 	/* UJIS uses JIS X 0208 1983 */
 
 	/* empty rows */
+#if HAVE_NECEXTFNT
+	/* 9-12 KU 0xA9A1($B)!(B)-0xACFE($B,~(B) -> 0xA2AE($B".(B) */
+	{ "\251\241", "\254\376", "\242\256", UJIS },
+	/* 13-KU 0xADBF,0xADD7-0xADDE,0xADFD-0xADFE -> 0xA2AE($B".(B) */
+	{ "\255\277", "\255\277", "\242\256", UJIS },
+	{ "\255\327", "\255\336", "\242\256", UJIS },
+	{ "\255\375", "\255\376", "\242\256", UJIS },
+	/* 14-15 KU 0xAEA1($B.!(B)-0xAFFE($B/~(B) -> 0xA2AE($B".(B) */
+	{ "\256\241", "\257\376", "\242\256", UJIS },
+#else
 	/* 9-15 KU 0xA9A1($B)!(B)-0xAFFE($B/~(B) -> 0xA2AE($B".(B) */
 	{ "\251\241", "\257\376", "\242\256", UJIS },
+#endif
 	/*
 	 * UJIS uses area from 85 KU to 94 KU for GAIJI, but current less
 	 * doesn't allow GAIJI.
 	 */
+#if HAVE_NECEXTFNT
+	/* 85-88 KU 0xF5A1($Bu!(B)-0xF8FE($Bx~(B) -> 0x81AC($B".(B) */
+	{ "\365\241", "\370\376", "\242\256", UJIS },
+	/* 92 KU 0xFCEF($B|o(B)-0xFCF0  ($B|p(B) -> 0x81AC($B".(B) */
+	{ "\374\357", "\374\360", "\242\256", UJIS },
+	/* 93-94 KU 0xFDA1($B}!(B)-0xFEFE($B~~(B) -> 0x81AC($B".(B) */
+	{ "\375\100", "\376\374", "\242\256", UJIS },
+#else
 	/* 85-94 KU 0xF5A1($Bu!(B)-0xFEFE($B~~(B) -> 0xA2AE($B".(B) */
 	{ "\365\241", "\376\376", "\242\256", UJIS },
+#endif
 
 	/* sequences of empty columns */
 	/* 2 KU 0xA2AF($B"/(B)-0xA2B9($B"9(B) -> 0xA2AE($B".(B) */
diff -ur -x .build less-382-iso262/version.c less-382-iso262-imd1/version.c
--- less-382-iso262/version.c	2007-05-02 00:57:27.420200000 +0900
+++ less-382-iso262-imd1/version.c	2007-05-02 11:40:57.717200000 +0900
@@ -768,4 +768,4 @@
 		This modification make regex_cs-lwp9k be able to compile.
 */
 
-char version[] = "382+iso262";
+char version[] = "382+iso262-imd1";
