Vz Resources
Commands
2007-05-07T21:05:28+09:00

コマンド拡張で学ぶVZマクロ入門 #35

番号記号初期キー機能
#35#r^Rと[PGUP](NEC-98: \[UP])ページングアップ

s==0(編集モード)

ページングアップ
後方(上)のページング位置にカーソルを移動する。
ページング単位はシステム変数mpに依存する。
mpの状態は,ステータスライン左端に明示されている。

戻り値 r:0=正常終了, -1=ページング失敗

ページングモードの変更には#30(#@)を使用する。

画面ページングモード

ステータスラインの表示はP(日本語モード)またはPg(英語モード)

戻り値動作
r==0ページングアップ
r==-1ファイル先頭

ページング単位はオプションEhで切り替えられる。Eh-:全画面/Eh+:半画面

タイトルサーチモード

ステータスラインの表示はC(日本語モード)またはCm(英語モード)

戻り値動作
r==0タイトルサーチアップ
r==-1ファイル先頭

タイトルサーチ文字列は「その他」(*E)セクションの7番で指定する。(空行もタイトルサーチ対象となる。)

* Etc
7       */;^L■

その他7番周辺

この初期設定では,行頭の「*」(VZの設定ファイルのセクション),「/」(一般的なプログラム言語のコメント行,「;」(VZマクロのコメント行),「^L」(改頁コード:制御コード0Ch),「■」(全角の四角)をサーチする。

タイトルサーチを使用しない場合は,オプションEtを無効(Et-)にする。

タイトルサーチ文字列を追加設定するには,コマンド#84を使用することができる。

コマンド#84で入力された文字列は,ヒストリバッファptに格納され,全テキスト共通で使用できる。

通常タイトルサーチに使用される文字列は「* E その他」7番に設定済みだが,バッファを確保して別途設定することができる。tsは設定した文字列の先頭アドレスを指し,終端がヌル(ASCIIZ)であればデータセグメントのどこを指していてもよい。マクロの中では「ts="string",」と指定するだけでよい。

例:
    (ne=='C'||ne=='H'||ne=='CP')?{ ts="/", qk="{}", }

文字列検索モード

ステータスラインの表示はS(日本語モード)またはSt(英語モード)の反転

戻り値動作
r==0検索成功
r==-1検索失敗

s==1(文字列入力モード)

無効

s==2(コマンドラインモード)

無効

s==3(ファイラーモード)

編集モードの画面ページングと同様にスクロールする。

s==4(メニュー)

戻り値rの内容

s==4(1文字入力モード)

無効

マクロによる拡張

画面ページングモードのまま検索

35 ^R "" ?. (ks&1)??{ #r . } c-, >00
36 ^C "" ?. (ks&1)??{ #c . } c+, >00
0:      &s mp[=2, &o(#r+c) >>
1:      (r)?{ &o(#c-(cm-35)) &b(2) } mp], &d
        (r)?{ &m(19) }
           ?{ &m("%c",cm+'÷' ) }       ; ▲▽ (59:^_)('∞':↑↓)

このマクロは,通常実行で画面ページングモード,シフト実行で検索モードとなる。検索方向に見つからなかった場合,逆方向にサーチする。このため検索方向を明示する。


コマンド拡張で学ぶVZマクロ入門 #35
The VZ resources, valid XHTML 1.0 Strict. ©2007-2009 by mezala.