■ はじめに --------------- 高橋版 VZ はとても便利で(特にLFNファイラー)ずっと愛用していましたが、 WinXP になって LFNファイラーが使えない。(;_;) 非常に困って試行錯誤した結果、VZ の改造に手を染めてしまいました。 まさか自分が私家版 VZ を ライブアップするなんて夢にも思わなかった。(^^; という事で、高橋版ベースの 私家版 VZ k07v6 です。   DOSV版 (と場合によってPC98版)を同梱しました。 高橋版 VZ(IBMJ).COM(T03k2 99/12/21)の自己解凍差分ですので、 VZk07v6.LZH を解凍したら、 VZk07v6.COM (DOSV版差分) VZk07v98.COM (PC98版差分) これらと高橋版 VZ(IBMJ).COM とをカレントに置いて、差分のCOM を 実行します。 ■ H.Konno 版の機能 ----------------------- ●ファイラー等でシフト系の独自ファンクションキー表示を実現しました。(DOSV版)  VZ.DEF の * F ファンクションキー表示 に、2〜4行あるキー表示の下に、行を追加出来ます。 5〜8行は、ファイラーで 9〜12行は、入力窓で 13〜16行は、コマンドラインで ノーマル、Shift、Ctrl、Alt の独自表示できます。  コマンドラインでの表示では最下行が重なってしまいますが、→キーで見える  ようになります。が、使いずらいですねぇ。(^^; 何とかしたいんですが。 ●漢字入力中にシフトを押すと FEP行が隠れてしまいますが、右隅の2文字を消さない  ようにし、FEP ON を識別しやすくしました。(DOSV版) ●Windows のアイドルコールに対応しました。キー入力待ちの時にCPUの使用率を  低減できます。 ノート等ではファンが回りにくくなるので、省電力効果も期待できます。(^^) 南十字星さんのマクロを参考にしました。感謝します。m(__)m ●NT系 (NT4.0 Win2000 XP) のLFNファイラー表示に対応しました。 NT4.0 では、15階の #20213 で引用している LFNアダプターが必要です。  http://www.cybertrails.com/~fys/longfile.htm  の  Long Filenames on an NT machine  の  Download (lfnlib.zip) (61k)  から取ってきて、C:\WINDOWS\SYSTEM32\ に lfnload.com と lfnsrv.dll を  入れて、AUTOEXEC.VZ で lfnload.com を実行させれば、LFN が表示できます。 ●オプション変数 Tm を新設しました。 Tm0 で、メッセージ表示位置が初期状態になります。 Tm1,Tm2,Tm3 と画面の上の方に移動していきます。 Tm255 で、メッセージ表示が最下行になります。(ファンクションキーは非表示) 和生さんの FUNKIE.DEF と併用すれば LX の画面が広く使えます。 FUNKIE の ファンより。m(__)m ●オプション変数 Uf を新設しました。  Uf+ で、ファイラーでのドライブのFreeを読みません。Free表示は0になります。 LXでの大容量フラッシュ対策です。  uf1=512、2=1024、4=2048、8=4096等、ファイル選択時のクラスタサイズを指定。 ●SL+ でステータスラインに時計を表示します。SL- ならフリー表示。 ●ML(ファイラーでのLFNマーク表示)は初期値を '+' (ML=43) にしました。 コードの節約のためです。ML- では見えなくなるので、注意してください。 ● FILER.ASM と OPEN.ASM をDANNY版と差し替えました。DANNYさんに   感謝です。 以下、DANNY版DOCより。 ---- ここから ------------------------------------------------------------- ●ディレクトリ順ソートを修正  FS64 の時のソートが、FS32 と同様になっていたのを修正。  蟲報告ありがとうございました。>としきさん ●ファイラーのソートを安定に  ファイラーソートの際、比較結果が等しいもの同士は、ソート前の位置関係 を保つようにしました。  ソートのアルゴリズムは、ファイル名・拡張子順ではシェルソート(vzt03h 以降と同じ)、それ以外では挿入ソート(オリジナル版と同じ)です。  本当は、何らかの速くて安定なアルゴリズムに改めたかったのですが、挫折 しました(*_*) ●FM bit6 : 親ディレクトリへのマークを禁止  ファイラーにて、親ディレクトリ .. へのマークを禁止します。誤操作で酷 い目に遭いにくくなるでしょう(^^;  FM に 64 を足せばこの機能を利用できます。 ●ソートの際にディレクトリを読み直さないようにした  ディレクトリソートの際に、ディレクトリを読み直さないようにしました。 読み直さないので、ソートしてもマークが消えません。  ただし、ソートを解除した時は読み直します。 ●既存の長い名前のファイルを、長い名前でオープン可能に ●Ym+ でファイル名先頭の '.' に対応 ---- ここまで ------------------------------------------------------------- ●システム予約語の追加 > 以下の物はシステムで使用します。ユーザーは定義しないように。 > 98 DOSV IBM IBMJ J31 AX PS55 US VIVI tVZ t HIRO  これに、kVZ と、起動時に表示される k07i 等を追加しました。  H.Konno版の判定は、「#if kVZ」。 バージョンは、「#if k07i」 で行います。(大文字小文字区別) ●NT系ではファイラーのリネームで不具合が出るので、リネームをLFNに  しました。(lf+の時) ●NT系で常駐使用の時に コマンドラインで不具合がでていましたが、 Sw4 では問題なくなりました。ただ、Sw4 ではメモリの分断がおこりますが、  XPでは、DOS窓のプロパテイで、プログラム・コマンドラインに  C:\WINDOWS\system32\command.com /k vzibmj.com ーz  と指定すると、メモリの分断が起きません。ただし、この環境では高橋版  以降のVZはコマンドラインで 空 Enter しただけで、おかしくなります。 ※NT系で常駐使用の時は Sw4 にしないとコマンドラインで不具合がでることあり。 ※k07v6 で対策出来たかも。検証中 vzkv6 ●HP+ 200LXでアイドル時スリープON  スピード、省エネを両立出来ます。 ( * k07? +1:マクロ時スリープOFF +2:アイドル時スリープON ) ●OL+ コマンドラインのファンクション行を空ける(未完成) ●LS Ls32, ls127, ls'■', ls$8140, 等と指定して左1〜2bytes分空けます。色はAL 200LXのすだれ対策。OPENイベント等で指定。機種依存はしません。 ●OH ファイラーの行数を OH の数字分減らし、下側を空けます。使い道は    ファイラービューワマクロ等。VZk07p ●OZ FreeDOS(98)用98版で編集画面でのカーソルキー、ctrl+ファンクションキー等が    使用できる様になります。そのかわり、漢字入力が出来なくなります。     FreeDOS(98)用に新設。VZk07p  ・OZ1  ・OZ2 ?  ・OZ4 小文字コマンドでもスワップ。NT系DOS窓やMS-DOS Player対応。vzkv6m  ※NT系DOS窓やMS-DOS Playerでは大文字コマンドでスワップした後、小文字コマンド  実行で異常になるようです。OZ4 は単独で指定してください。 ●OY 1でファンクションキーを消す。 完全? funkie 動作。VZk07p    6〜24 VZの全モードの行数指定。シグマリオン2等で使用する。    DOSの行数情報を書き換えているので、実際の画面行数以上にするとハングします。    元には戻さないので、OY24, でモードを切り替え後、OY-, として戻します。(25行の時)    ※行数-1 で指定する。 ●ot 廃止 (k07o-07q k08o-k08q) ステータスラインに全モードで時計を表示。   色はAL(行ナンバー)で調整。   環境により時計表示で問題が出る場合は ot を使用しないこと。   (VZk07pのみ)   ot が 1 以上なら時計を表示。ビットにより表示制御します。   ot+1  00:00   時:分 表示 (ビット1ならこちらが優先)   ot+2  00:00:00  時:分:秒 表示 (ビット1以外)   ot+4  メニューモード(s=4)の時時計表示しない。   ot+8  コマンドライン(s=2)の時時計表示しない。   ot1   00:00:A 時:分:秒をアルファベット表示             123456789‥‥31 32 33 と言う数字を            ABCDEFGHI‥‥ a b c こんな風に表示します。   ot2   00:00A   時:分秒をアルファベット表示   ※ ot1〜2 はk07qでは正常に表示出来ません。   ot3  00:00   時:分 表示   ot4以上 00:00:00  時:分:秒 表示   otはキー入力待ちの間に、時刻表示するまでのループ回数の指定を兼ねている。 ●&m() &?() &Sp() で書式フォーマットを拡張 ; usage :" %[-][0][*][n][,][.][l][F]{d|u|x|b|c|s} " ^ . ピリオドです。 , カンマと同じ機能です。(^^;; 使い道は? ●Bd+ VZBAK ディレクトリの非作成 by 太田亘一氏 ~~~~~~~~~~~~~~~~~~~~~~~~~~ Eb+ (バックアップ On) で環境変数 VZBAK が設定されていると, 環境変数 VZBAK に指定されているディレクトリへバックアップファイルが作られます。 この時, VZBAK で指定しているディレクトリがそのドライブに存在しない場合には, 通常は VZBAK で指定されたディレクトリを作成し, そこへバックアップファイルが 作られます。 こうすると, フロッピーのようなバックアップを作りたくないドライブにもVZBAK の指定ディレクトリが作成され, バックアップができてしまいます。これを避ける ため, 太田氏により, 既に VZBAK の指定ディレクトリがある場合だけバックアップ を行い, そのディレクトリがない場合にはバックアップを行わない改良がなされま した。kVZでも, これを採用してみました。 オプション Bd+ を指定すると, そのドライブに環境変数 VZBAK に指定されたデ ィレクトリがない場合に新たにディレクトリを作成するようなことはしません。 なお, Eb- の場合や環境変数 VZBAK が指定されていない場合には, この機能は 意味を持ちません。 Bd+ … VZBAK で指定されたディレクトリがない場合はバックアップしない Bd- … VZBAK で指定されたディレクトリがなければ,作成してからバック アップ(デフォルト)   ※ この機能と説明はFM版からいただきました。 ●op$5f 最上行にインジケーターバーを表示。数字はアトリビュート 1〜255   op$100以上で行:桁カウンター、インジケーターバーを40桁に配置します。   op$100 以上ならステータスラインを40桁以降表示しない。   op$10e などとすれば2つの機能を同時に使えます。 ●oe+ 非常中モードのコマンドラインで空エンターを無視するフラグ。     空エンターで子プロセスになってしまうのを防ぎます。(by おうら) ●Nq+  非常駐VZを終了させないオプションフラグ。擬似常駐モード。     非常駐VZでは [ESC] で意図せずVZ終了させてしまうのを防ぎます。     DOS窓などで非常駐VZは、DIR など SFNモードになるようなので、注意! ●RF+ : SFNファイラー( LF- )でも LFN リネーム対応、SFNでも大文字小文字区別 ●SL+ : ステータスライン表示オプション     0:time 1:free 2:ロングファイル名でオープン、表示 3:sl1+sl2     編集モードで [ESC]P [ESC]S がロング名(大文字小文字区別)になる。     ※ Win9x、WinXP、MS-DOS Playrは sl2は対応していないので指定しない。     ※ この機能は VTDOS と DOSVAXJ3(lfn_space=true) のみ対応。 ●オプション変数 Uf を変更しました。VZk07p  Uf+ で、ファイラーでのドライブのFreeを読みません。Free表示は0になります。 LXでの大容量フラッシュ対策です。 また、uf の数値で、ファイル選択時のクラスタサイズを指定できます。 uf1で512byte、2=1024、4=2048,8=4096,と言う具合になります。 読み込みのタイミングも変えてみました。フロッピー等では違いがわかるかも。 ■ 著作権・配布・転載 ------------------------  通常のフリーソフトと同じです。   ■ サポート --------------- スキルはありませんが、(^^; 掲示板「今日のテーマ」で。 http://tamaneko.world.coocan.jp/bbs/wforum.cgi ■ 謝辞 -----------  このすばらしいエデイタを作られた c.mos さんはもちろんですが、  高橋さんのソースが無ければ私には何もできませんでした。m(__)m  DANNYさんのソースも使わせていただきました。m(__)m  そして、デバッグに付き合っていただいた、FGALDC MES15 の皆さんにも、  本当に感謝します。m(__)m  差分作成には wsp.com (by ワキチさん)を使わせていただきました。