--- nkf-1.92.orig/NKF/debian/tmp/usr/share/man/man3/NKF.3pm +++ nkf-1.92/NKF/debian/tmp/usr/share/man/man3/NKF.3pm @@ -0,0 +1,279 @@ +.rn '' }` +''' $RCSfile$$Revision$$Date$ +''' +''' $Log$ +''' +.de Sh +.br +.if t .Sp +.ne 5 +.PP +\fB\\$1\fR +.PP +.. +.de Sp +.if t .sp .5v +.if n .sp +.. +.de Ip +.br +.ie \\n(.$>=3 .ne \\$3 +.el .ne 3 +.IP "\\$1" \\$2 +.. +.de Vb +.ft CW +.nf +.ne \\$1 +.. +.de Ve +.ft R + +.fi +.. +''' +''' +''' Set up \*(-- to give an unbreakable dash; +''' string Tr holds user defined translation string. +''' Bell System Logo is used as a dummy character. +''' +.tr \(*W-|\(bv\*(Tr +.ie n \{\ +.ds -- \(*W- +.ds PI pi +.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +.ds L" "" +.ds R" "" +''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of +''' \*(L" and \*(R", except that they are used on ".xx" lines, +''' such as .IP and .SH, which do another additional levels of +''' double-quote interpretation +.ds M" """ +.ds S" """ +.ds N" """"" +.ds T" """"" +.ds L' ' +.ds R' ' +.ds M' ' +.ds S' ' +.ds N' ' +.ds T' ' +'br\} +.el\{\ +.ds -- \(em\| +.tr \*(Tr +.ds L" `` +.ds R" '' +.ds M" `` +.ds S" '' +.ds N" `` +.ds T" '' +.ds L' ` +.ds R' ' +.ds M' ` +.ds S' ' +.ds N' ` +.ds T' ' +.ds PI \(*p +'br\} +.\" If the F register is turned on, we'll generate +.\" index entries out stderr for the following things: +.\" TH Title +.\" SH Header +.\" Sh Subsection +.\" Ip Item +.\" X<> Xref (embedded +.\" Of course, you have to process the output yourself +.\" in some meaninful fashion. +.if \nF \{ +.de IX +.tm Index:\\$1\t\\n%\t"\\$2" +.. +.nr % 0 +.rr F +.\} +.TH NKF 3pm "perl 5.005, patch 03" "27/Feb/2000" "User Contributed Perl Documentation" +.UC +.if n .hy 0 +.if n .na +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.de CQ \" put $1 in typewriter font +.ft CW +'if n "\c +'if t \\&\\$1\c +'if n \\&\\$1\c +'if n \&" +\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 +'.ft R +.. +.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 +. \" AM - accent mark definitions +.bd B 3 +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds ? ? +. ds ! ! +. ds / +. ds q +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' +. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] +.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' +.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' +.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +.ds oe o\h'-(\w'o'u*4/10)'e +.ds Oe O\h'-(\w'O'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds v \h'-1'\o'\(aa\(ga' +. ds _ \h'-1'^ +. ds . \h'-1'. +. ds 3 3 +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +. ds oe oe +. ds Oe OE +.\} +.rm #[ #] #H #V #F C +.SH "NAME" +NKF \- Perl extension for Network Kanji Filter +.SH "SYNOPSIS" +.PP +.Vb 2 +\& use NKF; +\& $output = nkf("-s",$input); +.Ve +.SH "DESCRIPTION" +This is a Perl Extension version of nkf (Netowrk Kanji Filter ) 1.7. +It converts the last argument and return converted result. Conversion +details are specified by flags before the last argument. +.PP +Flags: +.PP +\f(CWb,u Output is bufferred (DEFAULT),Output is unbufferred\fR +.PP +\f(CWj,s,e Outout code is JIS 7 bit (DEFAULT), Shift JIS, AT&T JIS (EUC)\fR +.PP +\f(CWJ,S,E Input assumption is JIS 7 bit , Shift JIS, AT&T JIS (EUC)\fR +.PP +\f(CWt no conversion\fR +.PP +\f(CWi_ Output sequence to designate JIS-kanji (DEFAULT B)\fR +.PP +\f(CWo_ Output sequence to designate ASCII (DEFAULT B)\fR +.PP +\f(CWr {de/en}crypt ROT13/47\fR +.PP +\f(CWm[BQ] MIME decode [B:base64 stream,Q:quoted stream]\fR +.PP +\f(CWl ISO8859-1 (Latin-1) support\fR +.PP +\f(CWf Folding: \f(CW-f60\fR or \f(CW-f\fR\fR +.PP +\f(CWZ[0-2] Convert X0208 alphabet to ASCII 1: Kankaku to space,2: 2 spaces\fR +.PP +\f(CWX,x Assume X0201 kana in MS-Kanji, \f(CW-x\fR preserves X0201\fR +.PP +\f(CWB[0-2] Broken input 0: missing ESC,1: any X on ESC-[($]-X,2: ASCII on NL\fR +.PP +\f(CWd,c Delete \er in line feed, Add \er in line feed\fR +.PP +\f(CWm0 No MIME decode.\fR +.PP +\f(CWM MIME encode. Header style. All ASCII code and control characters are intact.\fR +.PP +\f(CWMB MIME encode. Base64 stream. Kanji conversion is performed before encoding, so this cannot be used as a picture encoder.\fR +.PP +\f(CWl Input and output code is ISO8859-1 (Latin-1) and ISO-2022-JP.\fR +.PP +\f(CWL[wmu] new line mode\fR +.PP +\f(CW -Lu unix (LF) \fR +.PP +\f(CW -Lw windows (CRLF) \fR +.PP +\f(CW -Lm mac (CR) \fR +.PP +\f(CW --fj,--unix,--mac,--msdos, --windows convert for these system\fR +.PP +\f(CW --jis,--euc,--sjis,--mime,--base64 convert for named code\fR +.PP +\f(CW --jis-input,--euc-input,--sjis-input,--mime-input,--base64-input assume input system\fR +.PP +\f(CW -- ignore rest of -option\fR +.PP +\f(CW --help\fR +.PP +\f(CW --version\fR +.SH "AUTHOR" +Network Kanji Filter Version 1.9 (2/0002/Shinji Kono) +Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa),1998 S. Kono, COW +.SH "SEE ALSO" +\fIperl\fR\|(1). \fInkf\fR\|(1) + +.rn }` '' +.IX Title "NKF 3pm" +.IX Name "NKF - Perl extension for Network Kanji Filter" + +.IX Header "NAME" + +.IX Header "SYNOPSIS" + +.IX Header "DESCRIPTION" + +.IX Header "AUTHOR" + +.IX Header "SEE ALSO" + --- nkf-1.92.orig/debian/nkf1.7+cap1.patch +++ nkf-1.92/debian/nkf1.7+cap1.patch @@ -0,0 +1,340 @@ +nkf1.7+cap1.patch + +$B$3$N%Q%C%A$O(B nkf 1.7 $B$K(B CAP format $B$G(B encode $B$5$l$?(B +$B$+$J(B/$B4A;z$r(B decode $B$9$k5!G=$rDI2C$7$^$9!#(B +1999$BG/(B2$B7n$K(B Akio Furukawa $B$5$s$,(B fj.sources $B$KEj9F$5$l$?(B +nkf1.62+cap1.patch $B$r(B nkf 1.7 $B$KE,MQ$9$k$b$N$G$9!#(B +$B$^$?F1;~$K(B patch 1 for nkf 1.7 $B$*$h$S(B +fj.sources.d $B$KEj9F$5$l$?5-;v$NFbMF$b4^$s$G$$$^$9!#(B + +********************************************************** + +diff -urN nkf-1.7/cap1patch.doc nkf-1.7cap1/cap1patch.doc +--- nkf-1.7/cap1patch.doc Thu Jan 1 09:00:00 1970 ++++ nkf-1.7cap1/cap1patch.doc Thu Mar 4 20:55:58 1999 +@@ -0,0 +1,84 @@ ++nkf1.7+cap1.patch ++ ++$B35N,(B ++ ++$B$3$N%Q%C%A$O(B nkf 1.7 $B$K(B CAP format $B$G(B encode $B$5$l$?(B ++$B$+$J(B/$B4A;z$r(B decode $B$9$k5!G=$rDI2C$7$^$9!#(B ++1999$BG/(B2$B7n$K(B Akio Furukawa $B$5$s$,(B NetNews $B$KEj9F$5$l$?(B ++nkf1.62+cap1.patch $B$r(B 1.7 $B$KE,MQ$9$k$b$N$G$9!#(B ++$B$^$?F1;~$K(B patch 1 for nkf 1.7 $B$*$h$S!"(B1998$BG/(B11$B7n$K(B ++fj.sources.d $B$KEj9F$5$l$?5-;v$NFbMF$b4^$s$G$$$^$9!#(B ++ ++$B0J2<(B nkf1.62+cap1.patch $B$N%I%-%e%a%s%H$G$9!#(B ++--------------------------------------------------------- ++nkf1.62+cap1.patch ++ ++1.$B35N,(B ++ ++$B$3$N%Q%C%A$O(B nkf 1.62 $B$K(B CAP format $B$G(B encode $B$5$l$?(B ++$B$+$J(B/$B4A;z$r(B decode $B$9$k5!G=$rDI2C$7$^$9!#(B ++ ++2.$B@bL@(B ++ ++CAP (Columbia Appletalk Package$B!K$G$O(B AUFS (AppleTalk ++UNIX File Server) $B$H$$$&(B UNIX $B%Y!<%9$N(B AppleShare ++$B%U%!%$%k%5!<%P!<$,Ds6!$5$l$F$$$^$9!#(BAUFS $B$G$O%U%!%$%k(B ++$BL>$K4^$^$l$k(B $B$+$J(B/$B4A;z(B $BJ8;z$r!"$"$kJ}K!$GJQ49$7$FJ]B8(B ++$B$7$^$9!#(B ++ ++$BNc$($P!"(BMacintosh $B$+$i(B AUFS $B$G8x3+$5$l$?%\%j%e!<%`$K(B ++"$B=qN`(B" $B$H$$$&L>A0$N%U%!%$%k$r:n@=$9$k$H$7$^$9!#(BMac ++$BB&$+$i$O8+$($^$;$s$,!"$3$l$O$G(B UNIX $B>e$K:n@=$5$l$^$9!#(BMac $BB&$+$i(B ++$B;2>H$9$k:]$K$O(B AUFS $B$,<+F0E*$KJQ49$7$F$$$^$9!#(B ++ ++$B$7$+$7(B UNIX $BB&$GF1$8%U%!%$%k$r;2>H$9$k>l9g%U%!%$%kL>$O(B ++":8f:91:97:de" $B$N$^$^$G$9$+$i!"$A$g$C$HITJX$G$9!#$=$3$G!"(B ++UNIX $BB&$G$3$NJQ49$5$l$?%U%!%$%kL>$r85$KLa$95!G=$r(B nkf ++1.62 $B$KDI2C$9$k$N$,(B nkf1.62+cap1.patch $B$G$9!#(B ++ ++3.$B;H$$J}(B ++ ++$B$+$J(B/$B4A;z$N%3!<%IJQ49%D!<%k$H$7$F9-$/;H$o$l$F$$$k(B nkf ++(Network Kanji Filter) $B$N%P!<%8%g%s(B 1.62 $B$N%=!<%9(B ++$B%U%!%$%k$K(B nkf1.62+cap1.patch $B$rE,MQ$7$F!"%3%s%Q%$%k(B ++$B$7$F2<$5$$!#=PMh>e$,$C$?(B nkf $B$N%P%$%J%j$G$O?7$?$K(B -C ++$B%*%W%7%g%s$,DI2C$5$l!"$3$N%*%W%7%g%s$,;XDj$5$l$?;~$K(B ++$B$O(B nkf $B$NDL>o$N=hM}$K@hN)$C$F(B CAP format $B$KJQ49$5$l(B ++$B$F$$$k(B $B$+$J(B/$B4A;z(B $BJ8;zNs$r0lC6FbItE*$K(B SJIS $B%3!<%I$KD>(B ++$B$7$^$9!#(B ++ ++$B=>$C$F!"(BEUC $B$N4D6-$G$O(B ++ ++% ls -l | nkf -C -e ++ ++$B$J$I$H$9$l$P(B AUFS $B$G:n@=$5$l$?F|K\8l%U%!%$%kL>$N0lMw$r(B ++EUC $B%3!<%I$N(B $B$+$J(B/$B4A;zJ8;z(B $B$H$7$FI=<($9$k$3$H$,=PMh$^$9!#(B ++nkf $B$N;H$$J}$K$D$$$F$O!"(Bnkf $B$N%Q%C%1!<%8$KIUB0$N%I%-%e(B ++$B%a%s%H$r$*FI$_2<$5$$!#(B ++ ++4.$BJdB-(B ++ ++CAP $B$HF1$8$/(B UNIX $B>e$G(B AppleShare $B%U%!%$%k%5!<%P!<5!G=(B ++$B$rDs6!$9$k(B netatalk $B$G$b!"(BCAP $B$HF1$8(B $B$+$J(B/$B4A;z(B $B%U%!%$%k(B ++$BL>$NJQ49$,9T$o$l$F$$$^$9!#$^$?(B UNIX $B>e$G(B MS Windows $B$N(B ++$B%U%!%$%k%5!<%P!<5!G=$rDs6!$9$k(B samba $B$K$*$$$F$b!"%*%W(B ++$B%7%g%s$G;XDj$9$k$3$H$K$h$j(B CAP $BJ}<0$N(B $B$+$J(B/$B4A;z(B $B%U%!%$%k(B ++$BL>JQ49$r9T$&$h$&$K$9$k$3$H$,=PMh$^$9!#(B($B$3$&$9$k$H(B samba ++$B$H(B CAP/netatalk $B$GF1$8%G%#%l%/%H%j$r(B export $B$9$k;~$KJXMx(B ++$B$G$9!#(B) ++ ++$B=>$C$F!"$3$l$i$N4D6-$K$*$$$F$b(B nkf1.62+cap1.patch $B$K(B ++$B$h$C$F5!G=DI2C$5$l$?(B nkf $B$rMQ$$$l$P(B UNIX $BB&$+$i(B $B$+$J(B/$B4A(B ++$B;z:.$8$j$N%U%!%$%kL>$rI=<($9$k$3$H$,=PMh$^$9!#(B ++ ++nkf1.62+cap1.patch ++(C) A. Furukawa 99/01/27 ++akio@alumni.stanford.edu ++ ++--------------------------------------------------------- ++$B$3$3$^$G(B ++ ++///////////// $B:d0f(B $B9@?M(B (Hiroto Sakai) ////////// ++ ++ sakai@nuap.nagoya-u.ac.jp +diff -urN nkf-1.7/nkf.1 nkf-1.7cap1/nkf.1 +--- nkf-1.7/nkf.1 Sun Nov 8 02:49:20 1998 ++++ nkf-1.7cap1/nkf.1 Thu Mar 4 20:58:51 1999 +@@ -137,6 +137,9 @@ + .TP + .B \-d + delete CR after NL. ++.TP ++.B \-C ++Decode CAP format kana/kanji words. + .SH "FILES" + nkf - binary + .SH AUTHOR +diff -urN nkf-1.7/nkf.1j nkf-1.7cap1/nkf.1j +--- nkf-1.7/nkf.1j Sun Nov 8 02:49:20 1998 ++++ nkf-1.7cap1/nkf.1j Thu Mar 4 21:02:18 1999 +@@ -118,6 +118,9 @@ + .TP + .B \-d + NL$B$"$H$N(BCR$B$r:o=|$9$k!#(B ++.TP ++.B \-C ++CAP format $B$G(B encode $B$5$l$?$+$J(B/$B4A;z$r(B decode $B$9$k!#(B + + .SH AUTHOR + +diff -urN nkf-1.7/nkf.c nkf-1.7cap1/nkf.c +--- nkf-1.7/nkf.c Sun Nov 8 02:49:21 1998 ++++ nkf-1.7cap1/nkf.c Thu Mar 4 20:55:58 1999 +@@ -23,9 +23,11 @@ + static char *CopyRight = + "Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa),1998 S. Kono, COW"; + static char *Version = +- "1.7"; ++ "1.7+cap1"; + static char *Patchlevel = +- "0/9711/Shinji Kono"; ++ "1/9811/Shinji Kono"; ++static char *CapPatchInfo = ++ "Patch for CAP format decode 1.0 (1999/01) (c) Akio Furukawa"; + + /* + ** +@@ -66,6 +68,7 @@ + ** O Output to 'nkf.out' file + ** d Delete \r in line feed + ** c Add \r in line feed ++** C Decode cap encoded kana/kanji + **/ + /******************************/ + /* $B%G%U%)%k%H$N=PNO%3!<%IA*Br(B */ +@@ -81,6 +84,7 @@ + + #ifndef PERL_XS + #include ++#include + #endif + + #if defined(MSDOS) || defined(__OS2__) +@@ -148,10 +152,18 @@ + + /* MIME preprocessor */ + +-#undef STRICT_MIME /* do stupid strict mime integrity check */ ++#define STRICT_MIME /* do stupid strict mime integrity check */ + #define GETC(p) ((!mime_mode)?getc(p):mime_getc(p)) + #define UNGETC(c,p) ((!mime_mode)?ungetc(c,p):mime_ungetc(c)) + ++/* CAP format decoding routines */ ++ ++#define hex2bin(x) \ ++ ( ((int) '0' <= ((int) (x)) && ((int) (x)) <= (int)'9')? \ ++ (((int) (x))-(int)'0'): \ ++ ((int) 'a'<= ((int) (x)) && ((int) (x))<= (int) 'f')? \ ++ (((int) (x)) - (int)'a'+10): \ ++ (((int) (x)) - (int)'A'+10) ) + + #ifdef EASYWIN /*Easy Win */ + extern POINT _BufferSize; +@@ -174,6 +186,7 @@ + static int mime_ungetc(unsigned int c); + static int mime_integrity(FILE *f,unsigned char *p); + static int base64decode(int c); ++static int cap_decode(unsigned char *cp); + static int usage(void); + static void arguments(char *c); + static void reinit(); +@@ -195,6 +208,10 @@ + static unsigned int mime_last = 0; /* decoded */ + static unsigned int mime_input = 0; /* undecoded */ + ++/* CAP decoding buffers */ ++#define CAP_BUF_SIZE (2) ++static unsigned char cap_buf[CAP_BUF_SIZE]; ++ + /* flags */ + static int unbuf_f = FALSE; + static int estab_f = FALSE; +@@ -212,6 +229,7 @@ + #else + static int x0201_f = NO_X0201; /* Assume NO JISX0201 */ + #endif ++static int cap_f = FALSE; /* decode cap format */ + + /* X0208 -> ASCII converter */ + +@@ -579,6 +597,9 @@ + case 'd':/* delete cr code */ + del_cr = TRUE; + continue; ++ case 'C':/* decode cap format */ ++ cap_f = TRUE; ++ continue; + default: + /* bogus option but ignored */ + continue; +@@ -625,6 +646,35 @@ + #define LAST break /* end of loop, go closing */ + + while ((c1 = GETC(f)) != EOF) { ++ if ( cap_f && c1==':' ) { ++ cap_buf[0] = GETC(f); ++ cap_buf[1] = GETC(f); ++ if ((c1 = cap_decode(cap_buf)) == '\0') { ++ /* first word is not cap format */ ++ UNGETC(cap_buf[1],f); ++ UNGETC(cap_buf[0],f); ++ c1 = ':'; ++ } else { ++ /* first word is cap format - evaluate next word */ ++ if ((c2=GETC(f)) == ':') { ++ cap_buf[0] = GETC(f); ++ cap_buf[1] = GETC(f); ++ if ((c2 = cap_decode(cap_buf)) == '\0') { ++ /* next word starts with : but is not cap format */ ++ UNGETC(cap_buf[1],f); ++ UNGETC(cap_buf[0],f); ++ UNGETC(':',f); ++ } else { ++ /* next block is cap format */ ++ UNGETC(c2,f); ++ } ++ } else { ++ /* next word is not cap format */ ++ UNGETC(c2,f); ++ } ++ c2 = 0; ++ } ++ } + if(c2) { + /* second byte */ + if(c2 > DEL) { +@@ -1483,19 +1533,19 @@ + + + #ifdef STRICT_MIME +-/* This converts ^\^\*/ ++/* This converts =?ISO-2022-JP?B?HOGE HOGE */ + + unsigned char *mime_pattern[] = { + (unsigned char *)"\075?ISO-8859-1?Q?", + (unsigned char *)"\075?ISO-2022-JP?B?", + (unsigned char *)"\075?ISO-2022-JP?Q?", +- (unsigned char *)"\075?JAPANESE_EUC?B?", ++ (unsigned char *)"\075?EUC-JP?B?", + (unsigned char *)"\075?SHIFT_JIS?B?", + NULL + }; + + int mime_encode[] = { +- 'Q', 'B', 'Q', ++ 'Q', 'B', 'Q', 'B', 'B', + 0 + }; + #endif +@@ -1524,7 +1574,7 @@ + r[0]='='; r[1]='?'; + + for(i=2;p[i]>' ';i++) { /* start at =? */ +- if( ((((r[i] = c1 = getc(f))==EOF) || nkf_toupper(c1) != p[i] ) { ++ if( ((r[i] = c1 = getc(f))==EOF) || nkf_toupper(c1) != p[i] ) { + /* pattern fails, try next one */ + q = p; + while (p = mime_pattern[++j]) { +@@ -1578,6 +1628,8 @@ + if( (r[i] = c1 = getc(f))==EOF) break; + if(c1=='=') break; + if(c1<' '&& c1!='\r' && c1!='\n') break; ++ if(!(('A'<=c1&&c1<='Z')||('a'<=c1&&c1<='z')||('0'<=c1&&c1<='9') ++ ||c1=='_'||c1=='-'||c1=='?')) break; + if(c1=='?') { + i++; + if(!(i Sat, 10 Apr 1999 01:20:29 +0900 + +nkf (1:1.7-3) frozen unstable; urgency=low + + * Change japanese manpage's character code to EUC-JAPAN. (#JP/792) + * Lintian free(v1.0). + + -- Yoshiaki Yanagihara Mon, 1 Mar 1999 12:07:22 +0900 + +nkf (1:1.7-2) frozen unstable; urgency=low + + * Added epoch number to upgrade from 1.62p5 to 1.7. + * (debian/copyright) Added address of ftp site to get source file. + * Applied patch 1. (nkf-1.7p1) + + -- Yoshiaki Yanagihara Sat, 21 Nov 1998 15:41:41 +0900 + +nkf (1.7-1) unstable; urgency=low + + * Changed distribution to main because original lisence is changed. + * Standards-Version 2.1.4.2 + + -- Yoshiaki Yanagihara Tue, 10 Nov 1998 15:53:21 +0900 + +nkf (1.62p5-5) frozen-jp unstable-jp; urgency=low + + * Changed distribution from main to non-free. (Bug#JP/314) + * Added changelog.Debian file. (Bug#JP/399) + * Passwd lintian-0.4.8 check. + * Built with debhelper. + * Release for Debian JP Project (not for Debian Project). + + -- Yoshiaki Yanagihara Tue, 30 Jun 1998 10:27:53 +0900 + +nkf (1.62p5-4) unstable; urgency=low + + * Fix Bug: no /usr/doc/nkf. + * Check with lintian. + + -- Yoshiaki Yanagihara Wed, 18 Mar 1998 19:15:03 +0900 + +nkf (1.62p5-3) unstable; urgency=low + + * First Release for Debian Project. + * Changed Maintainer E-mail address. + * Re-compiled with libc6. + * Converted to make with debhelper. + + -- Yoshiaki Yanagihara Wed, 18 Mar 1998 14:51:12 +0900 + +nkf (1.62p5-2) unstable; urgency=low + + * New upstream version. + * Used debmake for debianized package. + * Standards-Version 2.1.1.0 + + -- Yoshiaki Yanagihara Fri, 25 Oct 1996 11:47:01 +0900 + +nkf (1.62p5-1) unstable; urgency=low + + * Initial Release. + + -- Yoshiaki Yanagihara Fri, 25 Oct 1996 10:26:08 +0900 + +Local variables: +mode: debian-changelog +add-log-mailing-address: "yochi@debian.or.jp" +End: --- nkf-1.92.orig/debian/README.debian +++ nkf-1.92/debian/README.debian @@ -0,0 +1,10 @@ +nkf for DEBIAN +---------------------- + +Thic package is nkf 1.7 patch 1. + +nkf is a yet another kanji code converter among networks, +hosts and terminals. It converts input kanji code to designated +kanji code such as 7-bit JIS, MS-kanji (shifted-JIS) or EUC. + +Takuro KITAME , Wed, 28 Apr 1999 01:06:12 +0900 --- nkf-1.92.orig/debian/libnkf-perl.dirs +++ nkf-1.92/debian/libnkf-perl.dirs @@ -0,0 +1 @@ +usr/lib/perl5 --- nkf-1.92.orig/debian/changelog +++ nkf-1.92/debian/changelog @@ -0,0 +1,54 @@ +nkf (1.92-1) frozen unstable; urgency=low + + * New upstream release + - bug fixed release. (closes: Bug#57897) + + -- Takuo KITAME Sun, 27 Feb 2000 02:32:10 +0900 + +nkf (1.9-1) unstable; urgency=low + + * New upstream release + + -- Takuo KITAME Mon, 11 Oct 1999 21:15:01 +0900 + +nkf (1.7-6) unstable; urgency=low + + * Fixed man pages installation. + + -- Takuo KITAME Sun, 26 Sep 1999 10:22:46 +0900 + +nkf (1.7-5) unstable; urgency=low + + * Reapplied cap.patch. (Fixed missing apply). + + -- Takuo KITAME Sat, 25 Sep 1999 23:22:13 +0900 + +nkf (1.7-4) unstable; urgency=low + + * Applied nkf1.7+cap.patch. (closes: Bug#45204). + * FHS compliance. + + -- Takuo KITAME Sat, 25 Sep 1999 15:06:29 +0900 + +nkf (1.7-3) unstable; urgency=low + + * libnkf-perl: Depends: perl5 for New perl package. + + -- Takuro KITAME Sun, 4 Jul 1999 14:51:02 +0900 + +nkf (1.7-2) unstable; urgency=low + + * Add document, "Working log(changelog.DebianJP) at Debian JP Project" + (Fixed Bug#36998) + + -- Takuro KITAME Tue, 11 May 1999 14:57:07 +0900 + +nkf (1.7-1) unstable; urgency=low + + * Initial Release. + + -- Takuro KITAME Wed, 28 Apr 1999 01:06:12 +0900 + +Local variables: +mode: debian-changelog +End: --- nkf-1.92.orig/debian/libnkf-perl.docs +++ nkf-1.92/debian/libnkf-perl.docs @@ -0,0 +1 @@ +NKF/README --- nkf-1.92.orig/debian/copyright +++ nkf-1.92/debian/copyright @@ -0,0 +1,23 @@ +This package was debianized by Takuro KITAME kitame@debian.or.jp on +Wed, 28 Apr 1999 01:06:12 +0900. + +It was downloaded from + ftp://ftp.ie.u-ryukyu.ac.jp/pub/software/kono/nkf171.shar + + ftp://ftp.iij.ad.jp/pub/NetNews/fj.sources/volume98/Nov/981108.01.Z + Subject: nkf 1.7 (Network Kanji Filter w/Perl Extenstion) + Message-ID: <29544.910459296@rananim.ie.u-ryukyu.ac.jp> + +Copyright: + + Copyright (C) 1987, Fujitsu LTD. (Itaru ICHIKAWA) + $B!J(BE-Mail Address: ichikawa@flab.fujitsu.co.jp$B!K(B + Copyright (C) 1996,1998 Kono, COW + $B!J(BE-Mail Address: kono@ie.u-ryukyu.ac.jp$B!K(B + + Everyone is permitted to do anything on this program + including copying, modifying, improving. + as long as you don't try to pretend that you wrote it. + i.e., the above copyright notice has to appear in all copies. + You don't have to ask before copying or publishing. + THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE. --- nkf-1.92.orig/debian/control +++ nkf-1.92/debian/control @@ -0,0 +1,20 @@ +Source: nkf +Section: text +Priority: optional +Maintainer: Takuo KITAME +Standards-Version: 3.0.0 + +Package: nkf +Architecture: any +Depends: ${shlibs:Depends} +Description: Network Kanji code conversion Filter + Nkf is a yet another kanji code converter among networks, + hosts and terminals. It converts input kanji code to designated + kanji code such as 7-bit JIS, MS-kanji (shifted-JIS) or EUC. + +Package: libnkf-perl +Architecture: any +Depends: ${shlibs:Depends}, perl5 +Description: Network Kanji code conversion Filter for Perl + libnkf-perl will let you use the nkf (Network Kanji code conversion + filter) as NKF.pm from Perl programs. --- nkf-1.92.orig/debian/dirs +++ nkf-1.92/debian/dirs @@ -0,0 +1,3 @@ +usr/bin +usr/share/man/ja/man1 +usr/share/man/man1 --- nkf-1.92.orig/debian/rules +++ nkf-1.92/debian/rules @@ -0,0 +1,77 @@ +#!/usr/bin/make -f +# Made with the aid of debmake, by Christoph Lameter, +# based on the sample debian/rules file for GNU hello by Ian Jackson. + +package=nkf + +build: build-stamp +build-stamp: + dh_testdir + + make nkf CC=cc + cd NKF; perl Makefile.PL INSTALLDIRS=perl && make CC=cc CFLAGS="-O2 -g -Wall" + + touch build-stamp + +clean: + dh_testdir + dh_testroot + -rm -f build-stamp + + -rm nkf nkf.o + -cd NKF; $(MAKE) distclean + + dh_clean + +# Build architecture-independent files here. +binary-indep: build +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Install nkf package + install -s -m 755 nkf debian/tmp/usr/bin + install -m 444 debian/nkf.1jeuc debian/tmp/usr/share/man/ja/man1/nkf.1 + install -m 444 nkf.1 debian/tmp/usr/share/man/man1/nkf.1 + + cd NKF; make pure_install PREFIX=`pwd`/../debian/tmp/usr INSTALLMAN3DIR=`pwd`/debian/tmp/usr/share/man/man3 + find `pwd`/debian/tmp -type f -name .packlist | xargs -r rm + + dh_installdocs + + ## Working log at Debian JP Project. + cp `pwd`/debian/changelog.DebianJP `pwd`/debian/tmp/usr/share/doc/nkf/ + cp `pwd`/debian/nkf1.7+cap1.patch `pwd`/debian/tmp/usr/share/doc/nkf/ + gzip -9 `pwd`/debian/tmp/usr/share/doc/nkf/changelog.DebianJP + gzip -9 `pwd`/debian/tmp/usr/share/doc/nkf/nkf1.7+cap1.patch + +# dh_installexamples +# dh_installmenu +# dh_installinit +# dh_installcron +# dh_installmanpages -pnkf +# dh_undocumented + dh_installchangelogs NKF/Changes + dh_strip + dh_movefiles + -rm -rf `pwd`/debian/tmp/usr/lib + dh_compress + dh_suidregister + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol +# dh_makeshlibs + dh_md5sums + dh_builddeb + +source diff: + @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary --- nkf-1.92.orig/debian/docs +++ nkf-1.92/debian/docs @@ -0,0 +1 @@ +nkf.doc --- nkf-1.92.orig/debian/nkf.1jeuc +++ nkf-1.92/debian/nkf.1jeuc @@ -0,0 +1,213 @@ +.TH NKF 1 +.SH NAME +nkf \- ネットワーク用漢字コード変換フィルタ v1.7 +.SH SYNOPSIS +.B nkf +.RI [ options ] +.RI [ file ] +.SH DESCRIPTION +\fInkf\fPはネットワークでメールやニュースの読み書きをするために作られた、漢 +字コードの変換フィルタである。 +.PP +この\fInkf\fPの特徴としては、入力漢字コード系の統計的な自動認識機能がある。 +このため、利用者は、入力漢字コード系が何であるかを知らなくても、出力漢字 +コード系のみ指定すれば良いことになる。ただ、この判定機構は、理論的には完 +全ではないが、通常のニュースやメールのメッセージについては確実に動作する +安全なものにはなっている。 +.PP +現在、\fInkf\fPが認識できる入力の漢字コード系は、いわゆる「JISコード」(ISO- +2022-JPに基づくもの)、MS漢字コード(シフトJIS)、日本語EUC(AT&Tコード)のい +ずれかである。出力する漢字コード系も、この3種類である。 +.PP +入力は、ファイルを指定しなければ、標準入力となる。出力は標準出力である。 +.PP +指定できるオプションは、以下の通り。\fB\-mu\fP のように続けることができる。 +.TP +.B \-b +バッファリング出力を行う。(デフォルト) +.TP +.B \-u +出力時に、バッファリングしない。 +rsh localhost | nkf \-u というように使う。 +.TP +.B \-t +何もしない。 +.TP +.B \-j +JISコードを出力する。(デフォルト) +.TP +.B \-e +EUCコードを出力する。 +.TP +.B \-s +シフトJISコードを出力する。 +.TP +.BI \-i ? +JIS漢字を指示するシーケンスとして \fBESC-'$'-\fP\fI?\fPを使用する。 +(デフォルトは、ESC-'$'-'B') +.TP +.BI \-o ? +1バイト英数文字セットを指示するシーケンスとして、\fBESC-'('-\fP\fI?\fPを使用す +る。 +(デフォルトは、ESC-'('-'B') +.TP +.B \-r +ROT13/47の変換をする。 +.TP +.B \-v +バージョンを表示する。 +.TP +.B \-T +テキストモードで出力する。(MS-DOS上でのみ効力を持つ) +.TP +.B \-m[QB0] +MIME を解読する。(デフォルト) ISO-2022-JP(base64)とISO-8859-1(Q encode) +のみを解読する。ISO-8859-1 (Latin-1) を解読する時は、 +-lフラグも必要である。\-m0 ではMIMEを解読しない。\-mQ, \-mBでは、 +Q encode, B encode されているものとして処理する。 +.TP +.B \-l +0x80-0xfeのコードをISO-8859-1 (Latin-1)として扱う。 +JISコードアウトプットとの組合せみのみ有効。 +\-s, \-e, \-xとは両立しない。 +.TP +.BI \-f ? +一行\fI?\fP文字になるように簡単な整形をおこなう。デフォルトは +60文字である。 +.TP +.B \-Z +X0208中の英数字と若干の記号をASCIIに変換する。\-Z1 はX0208間隔をASCII +spaceに変換する。\-Z2はX0208間隔をASCII space 二つに変換する。趣味によって +使い分けてほしい。 +.TP +.B "\-J \-E \-S \-X \-B" +期待される入力コードの性質を指定する。 +.RS +.IP \fB\-J\fP +ISO-2022-JPを仮定する。 +.IP \fB\-E\fP +日本語EUC(AT&T)を仮定する。 +.IP \fB\-S\fP +MS漢字を仮定する。X0201仮名も仮定される。 +.IP \fB\-X\fP +MS漢字中にX0201仮名があると仮定する。 +.IP \fB\-B\fP +壊れた(Broken)JISコード。ESCがなくなったと仮定する。 +.RS +.IP \fB\-B1\fP + \fBESC-(\fP, \fBESC-$\fP のあとのコードを問わない +.IP \fB\-B2\fP +改行のあとに強制的にASCIIの戻す +.RE +.RE +.TP +.B \-x +通常おこなわれるX0201仮名->X0208の仮名変換をしないで、 + X0201仮名を保存する。入力は、MS-Kanjiの1byte仮名、SO/SI、 +ESC-(-I, SSOを受け付ける。出力は、日本語EUC中ではSSO、 +JISでは ESC-'('-I を使う。 +.TP +.B \-O +ファイルに出力する。Unixでは不要な機能だがWindowsやMSDOSでは +必要らしい。直後の引き数でなく、最後のファイル名が出力ファイ +ル名となり上書きされてしまうので注意。ファイル名がない場合は、 +適当に決められる(nkf.outなど)。 +.TP +.B \-c +NLあとにCRを付加する。 +.TP +.B \-d +NLあとのCRを削除する。 + +.SH AUTHOR + +市川 至 ichikawa@flab.fujitsu.co.jp (was ichikawa@fujitsu.JUNET) + +.SH ACKNOWLEDGE + +morb@fujitsu, kiss@ayumi.stars.flab.fujitsu, cen122@flab.fujitsu, +yuki@flab.fujitsu 他、fujitsu & flab.fujitsuの皆さんの協力に感謝。 +shinoda@cs.titech, kato@cs.titech, uematsu@cs.titech TNX +kono@ie.u-ryukyu.ac.jp + +.SH BUGS + +実は、入力のコード系の判定は、EUCとシフトJISとの自動判定であり、最初に +特定できる文字が来た時点で確定してしまう。そして、特定不能の間は保留バッ +ファにためておかれ、確定後に処理される。このため、 +.IP 1) +7ビットJISは常に認識される。シフトJIS、EUC混合もほとんどの +場合は問題がない。ただし、 +.IP 2) +シフトJISのX0201仮名とEUCが識別できない。したがって、 +デフォルトではシフトJISのX0201仮名はないと仮定している。 +.IP 3) +ちょっと、のろい。(初期の版よりは改良されている) +.PP +JIS漢字の新旧版の区別とか、ASCIIとJISローマ字の区別などについては保存さ +れない。 +.PP +このフィルタの変換は、コード系に対応した一括写像を施すだけなので、外字 +や特殊記号や罫線素片など、JIS第一、第二水準表において定義されていないコー +ドに各社により割り当てられた文字がどうなるかまでは関知しない。そして、第 +二水準がないとかあるとかによる問題は、このフィルタの範囲外と思える。それ +らは、書き手の責任でなんとかしてもらいたい。 +.PP +いずれにせよ、通常のニュースの記事については問題はなく変換できるはずで +ある。(と思うのだが、今ひとつ自信はない) + +.SH "kono@csl.sony.co.jp (Shinji Kono) による変更。" + +nkf 1.4 の冗長だけど昔は便利だったオプションのいくつかは削除されている。 +\- \-n \-Bなど。 +.PP +X0201仮名はデフォルトでX0208に変換される。ただし、シフトJISのX0201仮名 +はデフォルトではEUCだと解釈されてしまう。これが望ましくない時には \-S や +\- \-X などのフラグを使えば良い。\-Xを指定すると一旦確定したシフトJISから +EUCに移行することはない。ESC-(-Iによる X0201は常に認識される。SI/SO +SSOは、\-lが指定されていなければX0201と解釈する。 +.PP +MIME decodeは、ISO-2022-JPのbase64と、ISO-8859-1の16進encodeのみ +decodeする。 MIME decodeは、単純な改行や空白は安全に読み飛ばされる。 +ということは、 MIME decode中の空白は保存されない。lessやrnで行が分割 +された時は、 Terminalによって異なる ESC-[-K などが挿入されるので、 +完全にはdecode できない。ISO-8859-1 出力はJIS コード出力としか両立しない。 +.PP +Fold 機能はfmtと異なり行頭の空白を無視する。禁則処理はあるが指定された +長さ+5で強制改行する。 +.PP +X0201仮名はrot47されない。 + +.SH nkf 1.6 "kono@ie.u-ryukyu.ac.jp (Shinji Kono) による変更。" + +MIME のチェックをきびしくして(遅くなった分)安全になった。 +したがって複数行にまたがるMIMEはdecodeされない。 +MIME の直後の空白は読み飛ばす。Q-Encding の_は空白に変換される。 + -B のlevelを0,1,2 に増やした。MIMEのbase64, Q-Encodingを解読する +機能を付けた。ヘッダなどは解読しないので、Encodeされた部分だけを +通す必要がある。 -mB は、nkf1.5と違う動きをするので、-B -m とすること。 + +.SH nkf 1.6.1 + +\-Z で〜 \-> ~の変換を止めた。 +\-Z1 でX0208間隔\->ASCII spaceの変換をおこなう。 +\-Z2 でX0208間隔\->ASCII space 2個の変換をおこなう。 +.PP +kabe@dais.is.tohoku.ac.jp (Taketo Kabe) による日本語roff のソースが +できました。 + +.SH nkf 1.7 +.PP +ESC-$-(-B などにも対応するようにしました。 +.PP +MIMEのチェックが厳しすぎるように思うので、STRICT_MIME をdefine +した時にのみに厳しいチェックを行う用にしました。 +.PP +nkf は、本来、network 上に出して安全なコードをデフォルトで出力すべき +であるので、デフォルトの出力コードをShift JIS, EUC などにするのは +望ましくないでしょう。 +.PP +他の人と少し話して、copy right の非営利の条件を緩めました。 +.PP +Perl Extension として使えるようになりました。 + --- nkf-1.92.orig/debian/libnkf-perl.files +++ nkf-1.92/debian/libnkf-perl.files @@ -0,0 +1 @@ +usr/lib/perl5