TextPark 2.7


目次

TextParkとは ▼
TextParkの操作 ▼
ファイル情報の取得 ▼
行末符号の検査と変換 ▼
標準外字の検査 ▼
ファイルの結合と分割 ▼
ファイルの内容表示 ▼
テキストの字数や行数 ▼
画像の形式と寸法 ▼
リソースの削除 ▼
文字列の変換 ▼
表のEPS化 ▼
文書構造の表示 ▼
レコードの分類と検査 ▼
レコードの検索と置換 ▼
TextParkの配布 ▼

TextParkとは

 TextParkは,テキスト処理に関わる単機能のユーティリティ集です。TextParkは,配布・翻案共に自由なフリーウェアです。TextParkは,私(岸 和孝)が開発しました。

 TextParkは,すべてPerlで書かれており,Perlインタプリターが導入されているMacOSまたはWindows95で動作可能です。

 TextParkを翻案された場合は,ぜひスクリプトをお送り下さい。このページまたは「こてこて実験工房」で,より多くの方々へご紹介したいと思います。

 なお,Ver.2.7から条件設定ファイル“TEXTPARK.CNT”による実行条件の設定が可能になるスクリプトが追加されましたが,すべてのスクリプトへ対応させるには少々時間がかかります。希望するオプション指定がありましたら,ご一報下さい。

TextParkの操作

 TextParkは,ドラッグ・アンド・ドロップによってフォルダーまたはファイル単位にバッチ処理できるようになっています。次に示す手順で起動して下さい。

 MS-Windows95における起動方法
コマンドラインで“PERL スクリプト名 [ ファイル名 ] …”を指示すると,
ファイル名 …の順に処理されます。
より簡単にするために,
スクリプトを起動するための次のようなバッチファイルを作成して下さい。
例えば,FILELIST.PLについては“FILELIST.BAT”という名前にしておきます。
 CD ファイルの格納されたディレクトリへのパス
 PERL スクリプト名 %1 %2 %3 %4 %5
ここで,引き数の参照は,コマンドラインが長くなりすぎますので,5個程度にします。
バッチファイルのアイコンへファイル …をドラッグ・アンド・ドロップすると,
ファイル名 …の順に処理されます。
 MacOSにおける起動方法
Perlインタプリタを起動し,
 スクリプトをDroplet形式で保存します。
例えば,FILELIST.PLについては“FILELIST”という名前にしておきます。
スクリプトのDropletのアイコンへファイル …をドラッグ・アンド・ドロップすると,
ファイル …の順に処理されます。
単なるラウンチでは引き数なしの起動となります。
ちなみに,ScriptメニューからRun Scriptでスクリプトを指示しても
「引き数なしの起動」となってしまいますので,注意して下さい。
▽すべてのスクリプトをdroplet形式へ自動的に変換する方法
同梱のアップルスクリプト“MAKETP”を実行すると,
すべてのスクリプトを一遍にplain text形式からdroplet形式へ変換できます。
(1) TextParkのすべてのスクリプトをまとめて,
 “TEXTPARK”と名付けたフォルダーに入れ,デスクトップ上に置きます。
(2) 同梱の“MAKETP”をダブルクリックし,
 アップルスクリプト編集プログラムを起動します。
(3) 実行ボタンを押します。
(4) MacPerlインタプリタの格納場所を尋ねられますので,その場所を指示します。
(5) MAKETPの実行が行われます。
(5.1) デスクトップ上に“TEXTPARK Droplets”フォルダーが作られます。
(5.2) “TEXTPARK”フォルダーの各スクリプトが順次にMacPerlによって開かれ,
 “TEXTPARK Droplets”フォルダーへdroplet形式で保存されます。
(5.3) この処理が繰り返され,すべてのスクリプトの変換が終わると,
 終了確認のダイアログが表示されます。

ファイル情報の取得

FILELIST

 指定したディレクトリに含まれるすべてのディレクトリを最下位まで調べ,すべてのファイルについての情報[図1を参照]をログファイル“TEXTPARK.LOG”へ追加出力します。その操作はディレクトリをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 ファイルについての情報は,次のとおりです。

ファイル名
クリエータ(MacOSの場合)
ファイルタイプ(MacOSの場合)
大きさ
日付
FILELIST ver.2.5
  access 1998/09/24 14:19:00
       file name                          cre  type     size   access   modify   change
MyDisk:MyFolder:SGMLPage:
 books                                         DIR           1998/08/28 1998/08/28 1998/05/25
 char                                          DIR           1998/08/26 1998/08/26 1998/05/31
 dicsgml                                       DIR           1998/07/13 1998/07/13 1997/10/31
 dsssl                                         DIR           1998/09/04 1998/09/04 1998/05/25
 extra                                         DIR           1998/09/21 1998/09/21 1998/07/13
 img                                           DIR           1998/09/14 1998/09/14 1998/05/25
 index.htm                                MPS  TEXT      282 1998/07/14 1998/07/14 1998/07/14
 kotekote                                      DIR           1998/08/31 1998/08/31 1998/06/06
 links                                         DIR           1998/09/20 1998/09/20 1998/06/30
 news                                          DIR           1998/09/12 1998/09/12 1998/05/25
 note                                          DIR           1998/09/14 1998/09/14 1998/06/01
 papers                                        DIR           1998/08/28 1998/08/28 1998/05/27
 perl                                          DIR           1998/09/24 1998/09/24 1998/05/25
 qa                                            DIR           1998/07/13 1998/07/13 1998/05/27
 sgml                                          DIR           1998/09/24 1998/09/24 1998/05/25
 toc.htm                                  MPS  TEXT     3958 1998/09/24 1998/09/24 1998/07/21
 top.htm                                  MPS  TEXT     1528 1998/07/14 1998/07/14 1998/07/14
 xml                                           DIR           1998/06/10 1998/06/10 1998/05/25
MyDisk:MyFolder:SGMLPage:xml:
 xml01.htm                                MPS  TEXT     8706 1998/06/10 1998/06/10 1998/06/10
MyDisk:MyFolder:SGMLPage:sgml:
 dtdhtml.htm                              Edt7 TEXT    16450 1998/09/03 1998/09/03 1998/08/30
 esis.htm                                 MPS  TEXT     8661 1998/06/10 1998/06/10 1998/06/10
 htbleps.htm                              Edt7 TEXT    12827 1998/09/24 1998/09/24 1998/09/22
 HTBLEPS.ZIP                              ZIP  ZIP     35986 1998/09/23 1998/09/23 1998/09/23

▲図1 ファイル情報の取得

行末符号の検査と変換

RETEST

 テキストファイルの行末符号(RE)の種類から,それを作成した機種(MacOS,Windows95,UNIX)を推定します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

WIN2MAC

 Windows95テキストファイルの行末符号(CR-LF)をMacOS用(CR)へ変換します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

MAC2WIN

 MacOSテキストファイルの行末符号(CR)をWindows95用(CR-LF)へ変換します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

UNIX2MAC

 UNIXテキストファイルの行末符号(LF)をMacOS用(CR)へ変換します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。このプログラムはMacOS,Windows95両用です。

標準外字の検査

UNCHAR

 テキストファイルに標準外字が含まれているかどうかを調べ,その結果をログファイル“TEXTPARK.LOG”へ追加出力します。ログファイルにおいて標準外字は“<!-- X hhhh -->”で表わされます。ここで,Xは外字,hhhhはその16進表現です。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

ファイルの結合と分割

JOIN

 指定した複数のテキストファイルのすべてを一つのファイルに結合します。新しいファイル名は,`FILES.TXT'です。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

DIVIDE

 テキストファイルを特別な行に従って別々のファイルに分割します。分割を指示する行は`___END___'です。新しいファイル名は,元のファイル名に拡張子として連番`nnn'が付けたものです。その操作はファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

ファイルの内容表示

DUMP

 テキストファイルの内容を文字と16進数の対応で表わし[図2を参照],ログファイル“TEXTPARK.LOG”へ追加出力します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 機能符号は,次のように表わします。

符号記号16進数
CR\r0d
LF\n0a
SUB\$1a
TAB\t09
DUMP ver.2.5
  access 1998/09/24 13:54:39
MyDisk:Desktop Folder:98-SGMLweb:SGMLPage:toc.htm
       0 < ! D O C T Y P E   H T M L   P U B L I C   ' - / / W 3 C / / D 
         3c21444f43545950452048544d4c205055424c494320272d2f2f5733432f2f44
      32 T D   H T M L   E x p e r i m e n t a l   1 9 9 6 0 7 1 2 / / E 
         54442048544d4c204578706572696d656e74616c2031393936303731322f2f45
      64 N ' > \r
         4e273e0d
      68 < H T M L > \r
         3c48544d4c3e0d
      75 < H E A D > \r
         3c484541443e0d
      82 < T I T L E > T h e   S G M L   P a g e < / T I T L E > \r
         3c5449544c453e5468652053474d4c20506167653c2f5449544c453e0d
     111 < / H E A D > \r
         3c2f484541443e0d
     119 \r
         0d
     120 < B O D Y   B G C O L O R = W H I T E > \r
         3c424f4459204247434f4c4f523d57484954453e0d
     141 < C E N T E R > \r
         3c43454e5445523e0d
     150 < E M >   T h e   S G M L   P a g e   < / E M > < B R > < B R > 
         3c454d3e205468652053474d4c2050616765203c2f454d3e3c42523e3c42523e
     182 \r
         0d
     183 < F O N T   S I Z E = - 1 > 1 9 9 8 年  9 月  2 8 日  更  新  < 
         3c464f4e542053495a453d2d313e31393938944e398c8e323893fa8d5890563c
     215 / F O N T > \r
         2f464f4e543e0d
     222 < / C E N T E R > \r
         3c2f43454e5445523e0d
     232 < H R > \r
         3c48523e0d
     237 \r
         0d
     238 < D I V > \r
         3c4449563e0d
     244 < I M G   S R C = " . / i m g / q a . g i f " > \r
         3c494d47205352433d222e2f696d672f71612e676966223e0d
     269 < A   H R E F = " . / q a / q a . h t m "   T A R G E T = " m a 
         3c4120485245463d222e2f71612f71612e68746d22205441524745543d226d61
     301 i n " > < B R > \r
         696e223e3c42523e0d
     310 S G M L 何  で  も  相  談  室  < / A > \r
         53474d4c89bd82c582e0918a926b8eba3c2f413e0d
     331 < P R E > \r
         3c5052453e0d
     337 < / P R E > \r
         3c2f5052453e0d
     344 < / D I V > \r
         3c2f4449563e0d
     351 < H R > \r
         3c48523e0d
     356 \r
         0d

▲図2 ファイルの内容表示

テキストの字数や行数

TEXTSIZE

 テキストデータを調べ,字数や行数を計算します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

画像の形式と寸法

GRSIZE

 画像データを調べ,画像の形式と寸法(幅,高さ)を表示します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 扱える画像の形式は,次のとおりです。

GIFGIF89形式のみ。
EPSFASCII形式のみ。行末符号は機種に依存。
TIFF 
JPEG 
PICTMacOS用。

リソースの削除

DELRES


 MacOSテキストファイルのデータリソース以外のリソースを削除します。結果のクリエータを'ttxt'に,ファイルタイプを'TEXT'にします。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS専用です。

文字列の変換

FH


 テキストの中の,全角の英数字・記号を半角の英数字・記号へ,半角の仮名文字列を全角の仮名文字列へ,それぞれ変換します。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

レコードの分類と検査

SORT

 指定した条件でテキストファイルのレコードを分類します。分類キーは100バイト以内の文字列とします。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 条件設定ファイル“TEXTPARK.CNT”で次の条件を設定できます。

条件キーワード指定できる値
キー相対位置SORT-KEYSキーとなる項目の相対番号(0〜)
省略時は,先頭の項目とみなします。
複数指定する場合はコンマで区切ります。
例:SORT-KEYS=0,2
キー分類順序SORT-SEQS“d”以外:昇順
“d”  :降順
省略時は,昇順とみなします。
複数指定する場合は,キー相対位置に合わせてコンマで区切ります。
例:SORT-SEQS=a,d
大小文字区別SORT-CASES“c”以外:ASCIIの大小文字を区別しない
“c”  :ASCIIの大小文字を区別する
省略時は,区別しないとみなします。
複数指定する場合は,キー相対位置に合わせてコンマで区切ります。
例:SORT-CASES=,c
区切り文字SORT-DELIMITTER“\t”:タブ,コンマ,ピリオド,その他の文字(列)
例:SORT-DELIMITTER="\t"

SAMEKEYS

 SORTで分類したテキストファイルについて同じ分類キーを持つレコードがあるか調べます。その操作はディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 条件設定ファイル$cnffileで設定できる条件はSORTと同じです。

レコードの検索と置換

FINDS

 指定した正規表現式に該当するレコードがあるか調べます。ディレクトリを指定した場合は,そのサブディレクトリまで調べます。 ディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 実行する前に,条件設定ファイル“TEXTPARK.CNT”で次の条件を設定しなければなりません。

条件キーワード指定できる値
正規表現式FINDS該当するレコードの正規表現式
省略時は,何も検索しません。
複数指定する場合は“/”で区切ります。
例:FINDS=/\stext\s/\sdocument\s/
非検索拡張子ESCS検索対象としないファイルの拡張子
MacOSの場合は,ファイルタイプが“TEXT”だけが検索対象となります。
省略時は,すべてのファイルを検索します。
複数指定する場合は“,”で区切ります。
例:ESCS=GIF,JPG,ZIP,TAR,EXE,DLL
オプションFINDS-OPTION“c”以外:大文字小文字を区別しません。
“c”:大文字小文字を区別します。
省略時は,大文字小文字を区別します。
例:FINDS-OPTION=c

REPLACES

 指定した正規表現式に該当するレコードの部分を指定文字列に置き換えます。ディレクトリを指定した場合は,そのサブディレクトリまで調べます。ディレクトリまたはファイルをドラッグアンドドロップすることによって行ないます。このプログラムはMacOS,Windows95両用です。

 実行する前に,条件設定ファイル“TEXTPARK.CNT”で次の条件を設定しなければなりません。

条件キーワード指定できる値
正規表現式FINDS該当するレコードの正規表現式
省略時は,何も検索しません。
複数指定する場合は“/”で区切ります。
例:FINDS=/\stext\s/\sdocument\s/
置換文字列REPLACES該当した箇所に置き換える文字列
省略時は,何も置換しません。
複数指定する場合は“/”で区切ります。
正規表現式に合わせて指定します。
例:REPLACES=/テキスト/処理/
非検索拡張子ESCS検索対象としないファイルの拡張子
MacOSの場合は,ファイルタイプが“TEXT”だけが検索対象となります。
省略時は,すべてのファイルを検索します。
複数指定する場合は“,”で区切ります。
例:ESCS=GIF,JPG,ZIP,TAR,EXE,DLL
検索オプションFINDS-OPTION“c”以外:大文字小文字を区別しません。
“c”:大文字小文字を区別します。
省略時は,大文字小文字を区別します。
例:FINDS-OPTION=c
置換オプションREPLS-OPTION“e”以外:置換は文字列のままです。
“e”:置換文字列を式として評価します。
省略時は,置換は文字列のままです。
例:REPLS-OPTION=e

TextParkの配布

 TextParkは,次のZIP形式のパッケージで配布します。

TextPark2.7(Windows版)
TextPark2.7(MacOS版)

(1998年1月記,1998年11月改訂,1999年3月改訂)


(c)1998-1999 JAGAT