段組整形ツール 羊羹の型 長大テキスト用 VER0.99 2007 May
インターネットエクスプローラーのバージョンチェック
読み込み用ファイル名(原則デスクトップにあること)


一行あたりの文字数(全角文字として)

禁則処理をする する場合半角の1 しない場合0
HTMLのタグがある場合できるだけ削除 する1 しない0

使用書兼解説書

readme.doc
ーーーーーー

段組整形ツール 羊羹の型 長大テキスト用 VER0.99
CopyRight MIYAMA. 2007 May
kaz_kimijima@yahoo.cp.jp
http://kimijima.at.infoseek.co.jp

1 はじめに

 今回のツールは前回提供した操作画面張り付け型のツ
ールの長大テキストファイル用バージョンです
 このツールはランダムに記載がある日本語のテキスト
ファイルを
 たとえば25文字や30字ごとに行整形するツールで
す

 日本語用です
 すべての半角スペースは全角スペースに変換されます
半角英数字は二個で一文字と認識されます

 またこのツールの性格については前作 張り付け型の
羊羹の型のreadmeもご覧ください

2 梱包ファイルの明細

 アーカイブファイルlongbp99.exeをダブルクリック
してください
 黒い画面上で自動解凍が始まります(LHA形式)

 2−1 longjbzp.htm
 ユーティリティ本体としてのHTMLファイルです
 パソコン上のデスクトップで使用します

 操作はこの画面上で行います(今回はreadmeとしての
記述はこのファイルの上に 書きました)

 2−2joinhttx.bat
 データファイル結合用のバッチです
 処理にかけるデータテキストがあるフォルダで使用し
ます(後述)

3 動作条件

 このツールはWINDOWS95以上 インターネットエクス
プローラ5.0以上のAT互換機で動作します
 マッキントッシュやネットスケープでは動作しません
 文字列処理の論理部がエクスプローラの内部関数(VB
Aライブラリ)を使用しますので低バージョンのエクス
プローラでは動作しません

 たぶんメモリーは64メガあれば十分だと思いますが
数メガのファイルをポインタとして開いたまま種種の処
理をするのは多少システムに負担になるらしく

「スクリプトをこのまま実行すると画面がフリーズする
おそれがあります」

というメッセージが出ることがあります
 大抵の場合そのまま実行しても大丈夫のようですが念
のため重要なファイルを別のアプリケーションで開いた
ままの操作はおやめください

 またこのツールは素のテキスト形式のファイルしか処
理できません
 ワードなどで作成した文書データをかける場合にはテ
キスト形式で保存したファイルをご用意ください

4 使用目的の想定からみた解説

 具体的にユーザがこのツールをどのような目的で使用
するのだろうかという想定のもとに解説します

 これはもともと巨大(数メガ)なサイズのテキストフ
ァイルの段組整形ができるように論理が設計されている
ところのユーティリティです

 比較的な小さな要領のファイルであれば段組整形は前
回の張り付け型のユーティリティでも十分だとおもわれ
ます
 しかし前回のツールはいったんデータファイルをメモ
リ上に一回全部取り込んでしまうので大きなデータの場
合マシンのパフォーマンスを渋滞させることも起きまし
た
 今回は約1メガバイト程度の巨大テキストでも処理で
きるように
 ファイルの冒頭から読み込んで処理できるように内部
論理を大幅に組み替えました

 実際的には数メガバイトのテキストファイルというも
のは自分が打ち込んだ文書ではなくlogファイルや採集
データのような自然蓄積型の巨大データ文書であること
が業務や作業の実際だとおもいます

 今回は素朴にインターネットを閲覧していてWEBペー
ジをローカルのパソコン上に複数のコピー保存している
場合を想定してみました

 長めの文書を合体すると全部で数メガの容量になるこ
ともめずらしくはありません

5 操作の実際

 デスクトップや任意のドライブの任意のディレクトリ
(フォルダ)に採集してきたWEBテキストが複数あるこ
とを仮定します

 5−1
 これらのファイルをすべてひとつにまとめた巨大なフ
ァイルを同梱されているバッチファイル(joinhttx.bat
)を使って作成し
 5−2
 そのファイルに対してこのHTMLユーティリティ(long
bp99.htm)で処理を行います

 今回はHTMLユーティリティの論理を作成する事がメイ
ンでしたのでこの結合処理(バッチ)には簡単な論理し
か用意しませんでした

 このバッチファイルを使用するとフォルダ内部のテキ
ストファイルをすべて結合した出力を得ますが

 出力ファイルにそのファイルの元のファイル名やファ
イル名などによる章別形式など内容配置の優先などは全
く考慮されていません


6 joinhttx.batによる 結合操作

 処理はWEBテキストを格納しているフォルダを対象に
行いますが
 データの安全性を考慮して必ずそのフォルダーのコピ
ーフォルダーを作成し
 そのコピーフォルダ内部でこのバッチファイルの操作
をしてください
 このツール内部には極端に危険な論理は記述されてい
ませんが
 意図を持って内部論理を書き換えたりすると非常に危
険です

 そのフォルダに
解凍したファイルのうちjoinhttx.bat(歯車マーク)
をコピーし
 そのjoinhttx.bat をクリックします

 一瞬黒い画面が開き
 結合ファイル join.doc
が出力されますこのjoin.docをデスクトップにコピーし
てください
 このファイルは拡張子がdocになっていますがワード
のファイルではありませんもとのTXTの拡張子のファイル
との混同をさけるために便宜的に使い分けています

--joinhttx.batの内容 (command:この内容は絶対に編
集しないでください)

copy *.htm* html.tmp
copy *.txt    text.tmp

copy *.tmp join.doc
del html.tmp
del text.tmp

------


8 longjbzp.htmでの操作

 上記のlongjbzp.htmをクリックすると操作画面が現
れます

----------------------------------------_□X


エクスプローラのバージョンチェックボタン
入力ファイルファイル名(filename.txt)

実行ボタン(GO!!)

一行あたりの文字数設定 
禁則処理をする画面       する場合は値1
HTMLファイルのタグをとる画面  する場合は値1

----------------------------------------------

 今回は張り付けも途中経過の表示も必要がないので画
面はごくシンプルです
 今回はwebページが元データであることを想定してHT
MLタグを除去する論理を組み込みました

 技術的な理由がない限りこのスイッチは解除しないで
ください
 出力ファイルが読みづらくなります

 禁則処理とは折り返し時点で区切り文字,、.。が文頭
にこないようにする機能です(かっこでの禁則はしませ
ん)

 どちらの設定小画面とも半角数字1があることでonに
なります
 解除は値を0でも2でもの変更でかまいませんただし削
ったままだとエラーになります

 禁則処理に関連して、ピリオド.やまる。のあとに空
白文字(半全角スペースおよびタブコード)があった場
合そこで段落の区切りとこの機能は判断して行の途中で
も改行します

ーーーーー

 ファイル見入力窓に該当ファイルの名前を入力し(
結合バッチjoinhttx.batを使用した場合はjoin.doc
と改めて入力してください初期値のfilename.txtとい
う名前は一般名であり最初にはこのファイルは存在して
いません)

 goボタンを押し下すと

 入力ファイル名にあるファイルを探して論理は処理を
行おうとします
 ファイルが見あたらない場合はエラーメッセージが表
示されます
 正常に処理が行われるとデスクトップにOUTPUT.DOC
(ワードではなくテキスト形式)が出力されます
 クリックして内容を確認してください

注意

 この論理はすべての空白文字の固まりを全角スペース
一文字に統一します
 最終的に統一される空白は半角スペースでも
よいのですが
 文書をHTMLなどに再利用するとき
 論理タグの記述によっては半角スペースを無視してし
まうことがあるので全角文字の設定にしました

9 ファイルのパス(相対位置)に関する注意

 WINDOWSアプリケーションとしての基本設定としてエ
クスプローラはファイルをデスクトップを中心に入出力
しますのでこのユーティリティもファイルの入出力はま
ずデスクトップにあるファイルをあつかうように想定さ
れています

 おそらくインターネットエクスプローラがシステムフ
ァイルを不用意に破壊しないようにというWINDOWSの構
成上設定なのだとおもいます
 よそのドライブやフォルダの中のファイルをアクセス
したい場合には煩雑な絶対パス記述が必要なので遠いと
ころにあるファイルから入出力することは実際的ではあ
りません(DOSの時代には皆必死に入力していましたが)
 インターネットエクスプローラのこの性格はWINDOWS
のシステム設定なので実際的には変更はできません

 入力ファイル(テキスト)をデスクトップに置きこの
ツールがそのファイルの存在を認識できれば文字列処理
が開始します

 なお長いファイル名や漢字などが入ったファイル名な
どはたとえばhoukoku.txtなどのまちがいにくい名前に
変更して処理にかけることをおすすめします

10 使用許可と免責

 このツールはフリーウエアです
 配布使用に関しての特に制限はありません

 またこのツールを使用しておこるいかなる損害に対し
ても作者はその責任を負いません

 重要なマシン上での操作、またバックアップデータを
取っていない状態での処理などは絶対にお避けください

11 あとがき

 今回のツールの概念は比較的簡単なものです

 情報処理の学校などでは初年次でたたきこまれるもの
らしいです(基本的な考え方の記されている入門は図書
館の専門書の棚で高校生のときに読みました)

 ただ例外処理の分岐に意外に手間取りました

12 仕様としてのまとめ

 ・動作環境

 ペンティアム100メガ程度以上のAT互換機で動作し
ますメモリは64メガもあれば十分だと思います
 作成環境はセルロン533メガヘルツ192メガバイ
トメモリWINDOWS98SEです
 WINDWOSは95でもかまわないと思いますが
 インターネットエクスプローラは5.0以上が必要で
す
 買ったときにXPがインストールされているマシンであ
れば問題はないでしょう
 実行中に「パフォーマンスが停滞していますスクリプ
トの実行を中止しますか」とでますが無視して続行して
かまいません
 ただし念のためこのツールを使用する前に
 かならず重要なファイルをバックアップをとり
 またべつに重要なファイルの編集をしながらこのツー
ルを使用しないでください

 マシンがフリーズする可能性もあります
 4メガのテキストをかけた場合、約1分弱反応が遅く
なりました

 ・DOCファイルについて

 中間ファイルとして作成されるJOIN.DOCとOUTPUT.D
OCはテキストファイルです
 ワードのバイナリファイルではありません
 JOINHTTX.BATは絶対に編集しないでください

 ・LONGBP99.HTMについて

 数値と設定の入力

 数値を入力する窓にはかならずなにかしらの数値を入
力してください
 空白チェックはしないので欄がからだとインターネッ
トエクスプローラのエラーになります
 その場合は一度閉じてこのファイルをまたクリックし
直してください
 するしないの論理設定窓でしないを選択する場合は1
以外の半角数字を入力してください
 0でも2でもかまいません
 一行あたりの文字数は全角文字相当の文字数です
 たとえば40文字の設定で半角文書などは約80文字
になります

 空白文字の処理

 すべての空白文字は全角スペースになりますこれは文
書の再利用の時HTML文法は記述によっては半角スペース
を表示上無視するからです
 よって実際上このユーティリティは日本語用です
(英文用に同等のものを考えた場合、単語が改行で切れ
るのを一般に嫌うのでそれはキャラクタベースのソフト
よりはプロポーショナルフォントの領域に近くなるでし
ょう 以上余談)
 また複数の空白文字が固まって存在している場合
 それは一律に一つの全角スペースに変換されます
 改行を挟んだスペースも該当して処理します

 禁則処理

 行頭にあることが嫌われる文字は禁則処理として行末
に置かれます
 以下の文字が対象です(数式を含む文書は場合によっ
ては構成が乱れます)

半角 カンマとピリオド,.
   各ブラケットの後ろ半分 ])}>
全角 点と丸、。
   各かっこの後ろ半分」)>

 段落改行

 文末とみなされる区切り記号のあとに空白文字がある
ばあい
 意味の区切りと判断して段落としての改行を行います
 段落間には空白の行は挿入されません
 文末区切り記号は上記の禁則文字のうち半角カンマと
全角句読点をのぞいたすべてのキャラクタです

 もとのhtmlタグの除去

 もとの文書がWEBテキストであった場合閲覧上煩雑な
HTMLタグをできるだけ除去することができます
 HTMLタグがもとの文書の一つの行に収まっている場合
は一行ごとの正規表現を使用できるのですべて除去され
ますが
 属性が大量に記述されている複数行にもわたるタグは
除去できません
 これはこのツールが一行ごとに処理をする設計になっ
ているためです

 またスタイルシートやXMLタグは除去できません作者
はXMLタグの文法を知りません 泣


ーーーーーーーーーーーーーーーーーーーーーーーーー