summaryrefslogtreecommitdiff
path: root/japanese
diff options
context:
space:
mode:
authorVolker Stolz <vs@FreeBSD.org>2005-05-10 13:51:52 +0000
committerVolker Stolz <vs@FreeBSD.org>2005-05-10 13:51:52 +0000
commitdb145c66a9e70ae89b574bc28c755983775f7323 (patch)
tree0939d340e80a66813d75607f55210cdea2b7230b /japanese
parent- Back to run as root by default and add options to change it (diff)
Add jstrings 0.6, japanese enhancement of strings(1) command.
PR: ports/70017 Submitted by: Ryo Okamoto
Notes
Notes: svn path=/head/; revision=134989
Diffstat (limited to 'japanese')
-rw-r--r--japanese/Makefile1
-rw-r--r--japanese/jstrings/Makefile46
-rw-r--r--japanese/jstrings/distinfo2
-rw-r--r--japanese/jstrings/files/jstrings.1166
-rw-r--r--japanese/jstrings/files/patch-remove-typo10
-rw-r--r--japanese/jstrings/files/patch-string-cp9329
-rw-r--r--japanese/jstrings/files/patch-string-eucjp8
-rw-r--r--japanese/jstrings/files/patch-utf8-off12
-rw-r--r--japanese/jstrings/pkg-descr7
9 files changed, 261 insertions, 0 deletions
diff --git a/japanese/Makefile b/japanese/Makefile
index a7ce934f22d7..c129137f6246 100644
--- a/japanese/Makefile
+++ b/japanese/Makefile
@@ -126,6 +126,7 @@
SUBDIR += jmode
SUBDIR += jmode-skk
SUBDIR += jpilot
+ SUBDIR += jstrings
SUBDIR += jvim
SUBDIR += jvim-canna
SUBDIR += jvim-canna+freewnn
diff --git a/japanese/jstrings/Makefile b/japanese/jstrings/Makefile
new file mode 100644
index 000000000000..fd1109fcc3c7
--- /dev/null
+++ b/japanese/jstrings/Makefile
@@ -0,0 +1,46 @@
+# New ports collection makefile for: jstrings
+# Date created: 29 July 2004
+# Whom: ryo
+#
+# $FreeBSD$
+#
+
+PORTNAME= jstrings
+PORTVERSION= 0.6
+CATEGORIES= japanese
+MASTER_SITES= http://openmya.hacker.jp/hasegawa/jstrings/ \
+ http://devel.aquahill.net/ports/jstrings/ \
+ http://www.kokone.to/~ryo/lib/ports/jstrings/
+DISTNAME= ${PORTNAME}-${PORTVERSION}
+EXTRACT_SUFX= .lzh
+
+MAINTAINER= ryo@aquahill.net
+COMMENT= Japanese enhancement of strings(1) command
+
+EXTRACT_DEPENDS=lha:${PORTSDIR}/archivers/lha \
+ nkf:${PORTSDIR}/japanese/nkf
+
+MAN1= jstrings.1
+MANLANG= ja
+PLIST_FILES= bin/jstrings
+
+EXTRACT_CMD= lha
+EXTRACT_BEFORE_ARGS= xfqw=${WRKDIR}
+
+USE_GMAKE= yes
+MAKEFILE= makefile.gcc
+MAKE_ARGS= CC="${CC}" CFLAGS="${CFLAGS}" BINDIR="${PREFIX}/bin"
+ALL_TARGET= jstrings
+
+post-extract:
+ @${ECHO_MSG} "===> Converting Kanji code and deleting CR for ${DISTNAME}"
+ @(cd ${WRKSRC}; \
+ for i in *.c *.h *.txt makefile.* ; \
+ do \
+ nkf -de $$i > $$i.tmp && ${MV} $$i.tmp $$i; \
+ done)
+
+post-install:
+ ${INSTALL_MAN} ${FILESDIR}/jstrings.1 ${PREFIX}/man/${MANLANG}/man1
+
+.include <bsd.port.mk>
diff --git a/japanese/jstrings/distinfo b/japanese/jstrings/distinfo
new file mode 100644
index 000000000000..f6ce99aa4d2d
--- /dev/null
+++ b/japanese/jstrings/distinfo
@@ -0,0 +1,2 @@
+MD5 (jstrings-0.6.lzh) = e283cdc91b9afff7fa91eb49fff41177
+SIZE (jstrings-0.6.lzh) = 84653
diff --git a/japanese/jstrings/files/jstrings.1 b/japanese/jstrings/files/jstrings.1
new file mode 100644
index 000000000000..ae38597ad12c
--- /dev/null
+++ b/japanese/jstrings/files/jstrings.1
@@ -0,0 +1,166 @@
+.TH jstrings "July 29, 2004" "" ""
+.RS
+名前
+jstrings - ファイル中の表示可能な文字列(日本語を含む)を表示する。
+.PP
+書式
+jstrings [\fB-i\fP 文字コード] [\fB-n\fP 文字数|-文字数] [\fB-fpcts\fP] [ファイル名]
+.PP
+説明
+jstrings は指定されたファイル中に含まれる表示可能な文字列を表示する。
+文字列と認識できる文字コード(符号化方式)はオプションにより指定でき
+る。デフォルトでは4文字以上の長さのものを表示可能な文字列とするが、
+以下で説明するオプションにより変更することができる。
+.RS
+.PP
+ファイル名が指定されないときは標準入力を対象とする。
+.RE
+.PP
+オプション
+\fB-i\fP 文字コード
+ファイルに含まれるであろう文字列の文字コード(符号化方式)を指定
+する。現在指定可能な文字コードは以下の通り。
+.RS
+.PP
+ANSI_X3.4-1968
+.SS ASCII
+.SS US
+.TP
+.B
+US-ASCII
+ファイルに含まれる ASCII 文字列のみを対象とする。
+.PP
+Windows-31J
+CP932
+MS932
+ファイルに含まれる CP932 の文字列を対象とする。これは
+Shift_JIS + いわゆる機種依存文字のことである。
+.PP
+Shift_JIS
+MS_Kanji
+ShiftJIS
+.SS SJIS
+ファイルに含まれる Shift_JIS の文字列を対象とする。これには
+いわゆる「機種依存文字」は含まれない。
+.SS EBCDIC
+ファイルに含まれる EBCDIC の文字列を対象とする。
+.RE
+.PP
+ISO-2022-JP
+ISO2022JP
+.SS JIS
+ファイルに含まれる \fBISO-2022-JP\fP(を拡張したもの) の文字列を対
+象とする。詳細は後述の ISO-2022-JP の項を参照のこと。
+.RE
+.PP
+UTF-16
+UTF16
+ファイルに含まれる UTF-16 の文字列を対象とする。バイトオーダ
+マーク(BOM)を検出した時には、BOMに従いビッグエンディアンとリ
+トルエンディアンを切り替える。
+.RS
+.PP
+UTF-16LE
+UTF16LE
+ファイルに含まれる UTF-16LE の文字列を対象とする。バイトオー
+ダマーク(BOM)は読み捨てられる。
+.PP
+UTF-16BE
+UTF16BE
+ファイルに含まれる UTF-16BE の文字列を対象とする。バイトオー
+ダマーク(BOM)は読み捨てられる。
+.RE
+.PP
+\fB-n\fP 文字数
+-文字数
+指定された文字数以上の長さの文字列を表示する。指定は文字数
+単位であるためASCII文字に限らず漢字なども1文字と数えられる。
+デフォルトは4。
+.RS
+.PP
+\fB-f\fP
+それぞれの文字列の前にファイル名を表示する。
+.PP
+\fB-p\fP
+それぞれの文字列の前に文字列が見つかったファイル内での先頭
+からの位置を表示する。
+.PP
+\fB-c\fP
+それぞれの文字列の前にその文字列のコード名を表示する。
+.PP
+\fB-t\fP
+(可能であれば)標準出力をテキストモードで使用する。
+デフォルトはバイナリモードである。
+.PP
+\fB-s\fP
+文字列の先頭バイトがマルチバイト文字の先行バイトであった場
+合には、それを読み捨て、2バイト目以降から文字列が始まってい
+るものとする(Shift_JISおよびWindows-31Jでのみ有効)。
+.PP
+-?
+ヘルプメッセージを表示する。
+.RE
+.PP
+ISO-2022-JP
+\fB-i\fP オプションに ISO-2022-JP を指定したときには、RFC1468 で規定され
+る ISO-2022-JP を独自に拡張した文字列をファイルから検索する。この
+拡張は以下のとおり。
+.RS
+.IP 1) 4
+ESC 2/4 4/9 というエスケープシーケンスにより JIS X0201 仮名文字
+集合(いわゆる半角カタカナ)へ切り替える。
+.IP 2) 4
+CR LF により ASCII に切り替える。
+.PP
+また、エスケープシーケンスに続かない、文字集合の不明なバイト列は
+\fB-i\fP ISO-2022-JP:SUBCODE という形でその扱いを指定することにより特定
+の文字集合とみなすことができる。SUBCODE に指定できる値は以下のとお
+り。
+.SS ASCII
+文字集合が不明なバイト列を ASCII とみなす。
+X0201-ROMAN
+文字集合が不明なバイト列を JIS X0201 ラテン文字集合とみなす。
+X0208-1978
+文字集合が不明なバイト列を JIS X0208-1978 とみなす。
+X0208-1983
+X0208-1990
+文字集合が不明なバイト列を JIS X0208-1990 とみなす。
+X0201-KANA
+文字集合が不明なバイト列を JIS X0201 仮名文字集合とみなす。
+.SS ALL
+文字集合が不明なバイト列を、上記の文字集合すべてに可能な限り
+当てはめる。
+.SS IGNORE
+文字集合が不明なバイト列は無視して読み捨てる。
+.RE
+.PP
+例えば、\fB-i\fP ISO-2022-JP:ASCII と指定したときには、文字集合の判断
+がつかないバイト列は、ASCII文字列として扱われる。
+SUBCODE を省略した場合には IGNORE が指定されたものとみなす。
+.RS
+.PP
+バグ
+充分にテストされていないのでバグは多々あると思われる。
+.RS
+.PP
+ファイル内に含まれる文字列の長さが65535バイトを超えるときにはうま
+く表示できない。これは、vstr.c 内の MAX_BUF_SIZE 定数により制限さ
+れている。
+.PP
+EBCDIC を指定したときには \fB-f\fP \fB-p\fP \fB-c\fP で表示される情報は ASCII である
+ため、表示が乱れる。
+.PP
+UTF-16* で検出可能な文字集合はCP932と同一の範囲内のみである。
+.PP
+UTF-16* を指定したときには結果は常に BOM を先頭に付加したUTF-16BE
+で出力される。また、\fB-f\fP でファイル名を表示させた時に、ファイル名に
+非ASCII文字が含まれている場合、それは文字化けを引き起こす。
+.PP
+\fB-i\fP オプションは同時に複数指定することも可能であるが、その場合、表
+示は複数の文字コードが入り混じったものとなる。
+将来的には UTF-8 も対象とし、表示するために使用する文字コードも指
+定できるようにしたい。
+.RE
+.PP
+著者
+はせがわ ようすけ
diff --git a/japanese/jstrings/files/patch-remove-typo b/japanese/jstrings/files/patch-remove-typo
new file mode 100644
index 000000000000..c8108e2aa5da
--- /dev/null
+++ b/japanese/jstrings/files/patch-remove-typo
@@ -0,0 +1,10 @@
+--- utilstr.c.orig Thu Aug 5 14:05:48 2004
++++ utilstr.c Thu Aug 5 14:06:15 2004
+@@ -41,7 +41,6 @@
+ size_t my_strncpy( char *s, const char *t, size_t n )
+ {
+ size_t r = 0;
+- char *s0 = s;
+
+ if( s == NULL || t == NULL || n == 0 )return 0;
+ n--;
diff --git a/japanese/jstrings/files/patch-string-cp932 b/japanese/jstrings/files/patch-string-cp932
new file mode 100644
index 000000000000..107f567a32a9
--- /dev/null
+++ b/japanese/jstrings/files/patch-string-cp932
@@ -0,0 +1,9 @@
+--- cp932.c.orig Thu Aug 5 14:03:35 2004
++++ cp932.c Thu Aug 5 14:04:07 2004
+@@ -1,6 +1,7 @@
+ #include <stdio.h>
+ #include <stddef.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include "jstrings.h"
+ #include "cp932.h"
diff --git a/japanese/jstrings/files/patch-string-eucjp b/japanese/jstrings/files/patch-string-eucjp
new file mode 100644
index 000000000000..eedb5bdaa180
--- /dev/null
+++ b/japanese/jstrings/files/patch-string-eucjp
@@ -0,0 +1,8 @@
+--- eucjp.c.orig Thu Aug 5 14:04:36 2004
++++ eucjp.c Thu Aug 5 14:04:47 2004
+@@ -1,4 +1,5 @@
+ #include <stdlib.h>
++#include <string.h>
+ #include "eucjp.h"
+ #include "jstrings.h"
+ #include "ascii.h"
diff --git a/japanese/jstrings/files/patch-utf8-off b/japanese/jstrings/files/patch-utf8-off
new file mode 100644
index 000000000000..bd900c330c2b
--- /dev/null
+++ b/japanese/jstrings/files/patch-utf8-off
@@ -0,0 +1,12 @@
+--- jstrings.c.orig Thu Apr 28 20:21:41 2005
++++ jstrings.c Thu Apr 28 20:22:01 2005
+@@ -50,7 +50,7 @@
+ { NULL, open_utf16, strings_utf16, flush_utf16, close_utf16, 0, NULL }, /* UTF-16 */
+ { NULL, open_utf16le, strings_utf16le, flush_utf16le, close_utf16le,0, NULL }, /* UTF-16LE */
+ { NULL, open_utf16be, strings_utf16be, flush_utf16be, close_utf16be,0, NULL }, /* UTF-16BE */
+-/* { NULL, open_utf8, strings_utf8, flush_utf8, close_utf8, 0, NULL }, /* UTF-8 */
++/* { NULL, open_utf8, strings_utf8, flush_utf8, close_utf8, 0, NULL }, */ /* UTF-8 */
+ { NULL, open_dummy, strings_dummy, flush_dummy, close_dummy, 0, NULL }, /* UTF-8 */
+ { NULL, open_ebcdic,strings_ebcdic, flush_ebcdic, close_ebcdic, 0, NULL }, /* EBCDIC */
+ };
+
diff --git a/japanese/jstrings/pkg-descr b/japanese/jstrings/pkg-descr
new file mode 100644
index 000000000000..4731c00f36ea
--- /dev/null
+++ b/japanese/jstrings/pkg-descr
@@ -0,0 +1,7 @@
+Japanese enhancement of strings(1) command. You can extract
+2byte-charactors from binary files in various types of Japanese code.
+
+WWW: http://openmya.hacker.jp/hasegawa/
+
+- ryo
+ryo@aquahill.net