LHtouch.X/EXE のバージョンアップ履歴
Copyright (C) 1993,94,95 田辺 英昭 (Hideaki `ArctanX' TANABE)
LHtouch.X/EXE バージョンアップ情報(Ver 1.99β -> Ver 2.00β) 1995/11/25
-
「-lh6-/-lh7- の書庫を扱う時にいつも -i オプションをつけるのは不便」とい
うご意見を戴いたので、恐らく -lh6-/-lh7- の書庫でも LHtouch の稼働実績はある
のだろうと考え、-lh6-/-lh7- のチェックを外した。(-i オプション無しでも動
作する。-lh5- などと同じ扱いになるようにした。)
(Thanks to ふぁみたくん@ALTA Net)
-
1.99αから約 3 ヶ月が過ぎたが、特に「書庫内ファイルのリネームで書庫が壊れ
た」などのレポートは来なかったので、一応 2.00 にバージョンを上げてみた。
-
「β」が相変わらず付いているのは、危険度 120%(?) の「書庫内ファイルのリネー
ム」機能の安定動作にまだ自信がないからである。「俺は 65536 個の Lzh ファイ
ルでテストしたが大丈夫だったぜ!」というようなレポートがあると「β」がなく
なるはずなのだが・・・(^^;)
LHtouch.X/EXE バージョンアップ情報(Ver 1.99α2 -> Ver 1.99β) 1995/11/09
-
-i オプションを指定して、MacLZH や -lh6-, -lh7- の書庫に対して -S(--strip)
の処理を行なうとコケてしまうバグを修正した。
(Thanks to ふぁみたくん@ALTA Net)(本バージョンは一般未公開)
LHtouch.X/EXE バージョンアップ情報(Ver 1.99α -> Ver 1.99α2) 1995/09/03
-
デバッグモードでコンパイルしたままのバイナリを収録してしまった(^^;)ので、
改めて収録し直した。
-
1.12->1.99αの際に手直ししたディスクフルに対する処理でエンバグしていたので、
修正した。(実害のあるエンバグだったかどうかはわからない)
-
書庫内ファイルのリネーム関してはまだ安全かどうかわからないので、作業前には
必ず書庫のバックアップを取り、作業後の書庫については「LHA t *.lzh」でテスト
を行い、壊れていないことを確認するようにして下さい。
LHtouch.X/EXE バージョンアップ情報(Ver 1.12 -> Ver 1.99α) 1995/08/14
-
今まで希望が多かったにも関わらず、なかなかサポートできなかった「書庫内ファ
イルのリネーム」をサポートした(つもり)。一応ヘッダレベルは 0,1,2 どれで
も大丈夫なように対応したが、ディレクトリ書庫やディレクトリ情報のついたファ
イル名を持つ書庫の場合にどうなるのかは、検証が取れていない。-lh5- 以外の書
庫に関しても検証が取れていないので、使用する場合には注意すること。
「-a 旧ファイル名 -b 新ファイル名」と指定する。1回に一組しか指定できない。
旧ファイル名が書庫内に存在しないとリネームは行なわれない(当然)。
本機能を使った場合には、リネームルーチンしか通らないようにしてあるので、
リネームしつつ、タイムスタンプをいじったりすることはできない(今のところ。
安全のため)
オリジナルファイルは *.BAK として残される。リネームが実際には行なわれな
かったとしても、*.BAK は残る(安全のため。リネームが実際に行なわれなかった
としてもバグのために壊れた *.Lzh が書き出される可能性が否定できないため)。
- 今までにサポートしてきた機能のなかでもっとも(バグがあると)危険な機能なの
で使う際には細心の注意を払って下さい(少なくとも稼働実績が上がるまでは)。
今までの機能に比べて本機能はプログラム的にも相当複雑なことをしているので、
バグの潜在確率が他のの機能に比べて、ずっと高いです。
特に最近は、速度や機能等を上げた LHA 互換ツールも多いので、それらで作成され
た書庫でも 100% 安全かどうかは、全く保証できません。このリネーム機能は、
LHtouch の目玉となる機能なので、壊れてもよい書庫を RAMDISK にコピーするなど
してテスト実行し、徹底的にバグを叩き出して戴けると幸いです。
LHtouch.X/EXE バージョンアップ情報(Ver 1.11 -> Ver 1.12) 1995/08/06
-
-p (--put_trash) オプションを -S(--strip) と併用することで、ファイル末尾の
ゴミを別ファイルに書き出せるようにした。ish 化した差分等を Lzh の末尾につ
けた Lzh が存在しており、そのようなファイルで -S を使うと、ish 化された差
分データがゴミと勘違いされてしまい、削除されてしまうことを防ぐ機能である。
(Thanks to ふぁみたくん@ALTA Net)(本バージョンは一般未公開)
LHtouch.X/EXE バージョンアップ情報(Ver 1.10 -> Ver 1.11) 1995/04/29
-
-t (--touch) オプションで引数を指定することにより、書庫のタイムスタンプを
変更できるようにした。この場合、指定したタイムスタンプに書庫のタイムスタン
プがまず書き換えられ、その後書庫内のファイルのタイムスタンプもそれと同じに
書き換えられる。すなわち、書庫と書庫内ファイルのタイムスタンプを、一度に指
定した通りに変更できることになる。また、書庫以外のファイルに対しては、タイ
ムスタンプが書き換えられたあと、その後の処理(書庫内ファイルのタイムスタン
プ変更)がスキップされる形になる。したがって、通常ファイルと書庫ファイルを
意識せずにワイルドカードで一括処理した場合、通常ファイルに対しては touch
の処理が行なわれ、書庫ファイルに対しては、touch + 書庫内ファイル touch の
処理が行なわれることになる。(Thanks to 趣味人さん@Network-SCoT)
LHtouch.X/EXE バージョンアップ情報(Ver 1.09 -> Ver 1.10) 1995/04/03
-
ファイル末尾のゴミを取る時にもバックアップファイルを作る -m(--mkbak)オ
プションを新設した。拡張子は *.BAK となる。
-
-m オプションの新設に伴い、Mac LZH のヘッダを取り除いた際に作られるバック
アップファイルは、拡張子が *.MAC になった。
-
拡張子のついたディレクトリの下にある拡張子のない書庫を処理して、*.BAK や
*.MAC を作ろうとすると、ファイル名がおかしくなってしまうバグを修正した。
LHtouch.X/EXE バージョンアップ情報(Ver 1.08 -> Ver 1.09) 1995/02/27
-
ディレクトリ書庫だけしか入っていない書庫に対して、-d オプションで作業を行
なうと、書庫のタイムスタンプが 2098-01-01 09:00:00 になってしまうバグを修
正した。 (Thanks to 西沢正樹さん(PXG01025@niftyserve.or.jp))
LHtouch.X/EXE バージョンアップ情報(Ver 1.07 -> Ver 1.08) 1995/02/18
-
ディレクトリ書庫のタイムスタンプを比較対象から外す -d (--except_lhd) オプ
ションを新設した。(Thanks to 飛陰さん(HGF02443@niftyserve.or.jp))
LHtouch.X/EXE バージョンアップ情報(Ver 1.06A -> Ver 1.07) 1995/01/22
-
書庫末尾のゴミや Mac ヘッダをチェックだけして実際には削除しないオプション
(-e (--exam) オプション)を新設した。(Thanks to ふぁみたくん@ALTA Net)
-
メッセージの一部と表示されるバーボーズレベルを修正した。
(Thanks to くまあるきさん)
-
LHstrip.X/EXE にリネームしたりリンクを張ると、-S オプション相当の動作をする
ようにした。 (Thanks to くまあるきさん)
-
SFX2LZH.X/EXE にリネームしたりリンクを張ると、-s オプション相当の動作をする
ようにした。
-
環境変数 LHTOUCH によく使うオプション等をセットできるようにした。
-
設定ファイル .lhtouch / _lhtouch にもオプション等をセットできるようにした。
-
圧縮方法のチェックを強化した。また、-i オプションでそれらのチェックを甘くす
ることができるようにした。
-
-f(--force)オプションでファイルの上書きチェックを外すことができるようにした。
-
Usage 表示の際に -- more -- の一時停止がかかるが、「Q」を押すことで Usage
表示をその場で終了できるようにした。
-
エラーメッセージがまだ英語のところがあったので、日本語に直した。
-
ドキュメントを書き直した。
LHtouch.X/EXE バージョンアップ情報(Ver 1.06 -> Ver 1.06A) 1995/01/17
-
閏年の 2 月のタイムスタンプを持つファイルが書庫内の最新ファイルだと、書庫の
タイムスタンプの日付が 1 日ズレてセットされてしまうバグを修正した。
(Thanks to 西沢正樹さん(PXG01025@niftyserve.or.jp))
LHtouch.X/EXE バージョンアップ情報(Ver 1.05 -> Ver 1.06) 1995/01/15
-
Macintosh LHa で作成した LZH ファイル(先頭 128bytes に Mac 用のヘッダがあ
る)に対応した・・つもり(持っていないので確認できない(^^;))。以前は LZH
ファイルであることが認識できなかった。 (Thanks to くまあるきさん)
-
-S オプションで末尾のゴミだけでなく、Mac 用のヘッダも取り除くようになった。
(Thanks to くまあるきさん)
-
-s オプションが特定の自己解凍ファイルしか認識できなかったので、判定ルーチン
を改良した・・・が、昔の LHa で作成した自己解凍ファイルを持っていないため、
動作確認が甘い。(少なくとも Ver 1.05 で認識できるものは認識できているので
退化はしていないはず) (Thanks to くまあるきさん)
-
-s / -S オプションを指定した際に、他のオプションも有効になった。すなわち、
自己解凍ファイルから作成した LZH ファイルのタイムスタンプをそのまま変更した
りできるようになった。
-
-s / -S オプションを指定した際に、タイムスタンプ変更作業をしないで終了でき
るようにするため、-n (--no_chtime) オプションを新設した。これをつけると書庫
内最新ファイルのタイムスタンプで書庫のタイムスタンプを変更するのを抑制でき
る。ちなみに、 'LHtouch -n *.lzh' を実行すると、何も作業をしないで終了する
(当たり前か)。
-
拡張子 LZH がついていないファイルは無視することにした。以前は拡張子が LZH
でなくても、内容が LZH ファイルであれば作業を行なっていたが、事故を防ぐ意味
で LZH がついていないファイルは LZH ファイルとして認めないことにした。強制
的に認めさせるために -f (--force) オプションを新設した。ちなみに自己解凍ファ
イルは、拡張子が X/R/EXE/COM のいずれかでないと、ファイル内容が自己解凍ファ
イルであっても認めない(-f で強制的に作業できる)。
-
自己解凍ファイルを拡張子なしで指定した場合に、拡張子を補完しない不具合いを
修正した。
-
-i (--ignore) オプションで自己解凍ファイルかどうかの判定を甘くすることがで
きるようにした。
-
エラーメッセージのほとんどが日本語になった。(Thanks to くまあるきさん)
-
メッセージの表示レベルを再検討し、-q (--quiet) オプションを新設した。
-
ワイルドカードをシェルが展開しない処理系において、マッチするファイルが一つ
もないのにエラーが出ないで、Usage が出てしまうバグを修正した。
(Thanks to ふぁみたくん@ALTA Net)
-
LHtouch -V (--version) の表示が変った。
-
ドキュメント類に書き間違いがたくさんあったので修正した。
-
バージョンアップ履歴ファイルを新しい順に書くことにした。
LHtouch.X/EXE バージョンアップ情報(Ver 1.04 -> Ver 1.05) 1995/01/02
-
-S (--strip) オプションで Lzh ファイルの末尾についているゴミを削除できるよ
うにした。 XMODEM などで Lzh ファイルをダウンロードすると、末尾にゴミデータ
がつくことがあるが、それを削除できる。(別にゴミがついていても解凍はできます
が) (Thanks to x6chat ML members)
-
エラー終了の場合にファイルをクローズし損なっている場所を fix した。
-
オプション指定エラーの場合になぜか「LHtime -h・・」というメッセージが出るの
で、fix した。(昔の名残が残っていたらしい(^^;))
LHtouch.X/EXE バージョンアップ情報(Ver 1.03 -> Ver 1.04) 1994/12/04
-
-s (--sfx2lzh) オプションで、自己解凍(SFX)ファイルから通常の Lzh ファイルを
作成できるようにした。自己解凍ファイルかどうかの判定が甘いので、使用する場
合には注意すること。(Thanks to x6chat ML members)
-
-s オプションでは、LHtouch.X で MSDOS の自己解凍ファイル(.EXE)から Lzh を作
れたり、LHtouch.EXE で Human68K の自己解凍ファイル(.X)から Lzh を作れたりす
るので、場合によっては便利かもしれない。
LHtouch.X/EXE バージョンアップ情報(Ver 1.02 -> Ver 1.03) 1993/10/24
-
-c オプションで、アーカイブファイル中に保存されているファイル名の大文字/小
文字を変更できるようにした。
-
オプションを -tvR などというように、続けて指定できるようにした。また、ロン
グオプションをサポートした。
LHtouch.X/EXE バージョンアップ情報(Ver 1.01 -> Ver 1.02) 1993/10/04
-
拡張子(.Lzh)省略時の処理がコケていたので修正した。どうやらサブディレクトリ
対応にした時に、コケてしまったらしい。
-
ルートディレクトリ(/)付きフルパスファイル名で保存されている Lzh ファイルを
ルートディレクトリ以外で展開できるように、先頭の `/' を `_' に書き換えてし
まう機能をつけてみた。本当は先頭の `/' だけを取り除けるとよいのだが、ファイ
ルサイズが変ってしまうと、いろいろあちこちに手を加えないといけなくなるので、
このくらいでお茶を濁した(ぉ
-
TwentyOne (for X680x0) などでマルチピリオドや通常はファイル名に使えない文字
を含んだファイルが書庫の中にある場合に、TwentyOne のない環境(特に他機種)
で展開できるように、都合の悪いキャラクタを `_' で書き換えてしまう機能をつけ
てみた。
-
lhtouch -V の表示がちょっと変った。
LHtouch.X/EXE バージョンアップ情報(Ver 1.00 -> Ver 1.01) 1993/09/28
-
CRC テーブルを、実行時に作成しないで、実行ファイル中に直接持たせるようにし
た。
-
-R オプションで、サブディレクトリまで再帰的に Lzh ファイルを検索し、作業を
できるようにした。Lzh ファイルをたくさん貯め込んだメディア等のルートディレ
クトリで使用すると、便利かもしれない。
-
XMODEM などでダウンロードした Lzh ファイルのように、ファイル末尾にゴミがつ
いていると Lzh チェックに引っ掛かってしまうので、チェックを少し甘くした。
今までは、Lzh ファイル内の全エントリのヘッダに、圧縮方法認識文字 "-lh" が
あるかどうかをチェックしていたが、Lzh ファイル内の最初のエントリのヘッダだ
けをチェックするようにした。これによって、「copy foo.lzh+bar.doc mix.lzh」
のような不正なファイルがチェックできなくなってしまったわけだが、そのような
ファイルはあまりないだろうということで、ほったらかすことにした(ぉぃ)。
しかし、これでは、ファイルの先頭から 3 バイト目が -lh になっているテキス
トファイル等も Lzh ファイルと勘違いしてしまうので(例えば、「 -lh5- の説明
・・」などといったテキストファイル(あまりないだろうけど))、ヘッダの中に
書いてあるヘッダレベル(LHtouch.DOC 参照)が、0、1、2のいずれかの値であ
るかどうかもチェックするようにした。この条件をも満たしてしまうテキストファ
イルはチェックできないことになるが、そのようなテキストファイルの面倒は見な
いことにする(ぉぃ)。
-
X680x0 版で、ワイルドカード展開とインダイレクトファイルをサポートしないバー
ジョンを作るのをやめた(あまり実行ファイルの大きさが違わないため)。シェル
がワイルドカードを展開する環境の方にとっては、余計なルーチンがついているこ
とになるが、毎回差分を作るのも面倒なので、そのままで約 7KB 、LZX 圧縮時で約
4KB の実行ファイルのサイズ差は見逃してもらうことにした。
LHtouch.X/EXE バージョンアップ情報(Ver 0.00 -> Ver 1.00) 1993/09/26
LHtime.X Ver 1.00 1993/09/14
LHtime.X/EXE Ver 1.01 1993/09/16
LHtouch.X/EXE の前身となるプログラム。Ver 1.00 は一部のネットに公開した。
LHtime.X/EXE に対して以下の機能を付加した。
もし、バグを見つけたら、一人で笑っていないで(^^;)私のところまでぜひ、報
告して下さい。
・転載については、LHtouch.DOC をごらん下さい。
バグレポート、その他、ご意見、ご感想、ご不満(?)などありましたら、メール
その他の方法で、お知らせいただけると幸いです。
ALTA Net ALTA1565
Bug-House BBS BUG0064 \ \/
Cecile BBS CEL0322 Arctan / \UTMC
Inside BBS INSD0053  ̄ ̄  ̄ ̄
Palmtown Network PALM0466 田辺 英昭 (Hideaki TANABE)
Mapletown Network MAP2492
Network-SCoT SCOT0032
Nifty Serve KFA05024@niftyserve.or.jp
★LHtouchのページに戻る
arctanx@hauN.org