番号 | 記号 | 初期キー | 機能 |
---|---|---|---|
#30 | #@ | ^@ \[INS] | ページングモード切替 |
ページングモードを切り替える。VZは下記の通り複数のページングモードを持ち,状況に応じたページングモードに切り替えることで,画面をスクロールしたり,検索を実行したりする。
戻り値 r:常に 0
ページングモード(システム変数mpの値に対応)を「画面ページングモード」,「タイトルサーチモード」,「文字列検索モード」に順次切り替える。ページングに割り当てられたキーは,ページングモードにより振る舞いが切り替えられる。
モード | mp値 | ステータスライン表示 | ページングキーの振る舞い | 備考 |
画面ページングモード | 0 | P/Pg | 画面単位のページ送り | オプションEh(ページング単位)により全画面(-)/半画面(+)と送り単位が切り替わる |
タイトルサーチモード | 1 | C/Cm | 見出し行(見出し文字で始まる行)単位でページ送り | オプションEt(タイトルサーチ)が無効(-)ではこのモードに切り替わらない |
文字列検索モード | 2 | S/Stの反転 | #55等で設定された文字列を検索する | ヒストリーバッファps(検索文字列バッファ)の先頭にある文字列を検索文字列とする。なお複数の検索オプションの値によりヒットする文字列は変わってくる。検索オプション(\w,\c,\z,\x,\i,\f)については次表の各項目を参照のこと。 |
検索モード | オプション変数 | 前置シンボル | 備考 |
ワードサーチ | Ew | \w | *の前置・付加で逆に作用する |
大小文字同一視 | Ec | \c | 英字のみ有効 |
全半角文字同一視 | ZH | \z | 英数字・一部の記号に有効 |
正規表現検索 | RX | \x | 後方参照は\(RE\) |
特殊文字を文字そのものと扱う | \i | \, * などのメタキャラクタ | |
あいまい検索 | \f | 高橋版でfuzzy.com常駐 |
無効
無効
無効
無効
y.mikome氏がniftyserve時代に自身のプロフィールに掲載していたマクロである。タイトルサーチモードから文字列検索モードを経ずに画面ページングモードに戻るというもので,連続実行の場合は通常通りにPCSの順で切り替えるようになっている。こういったマクロはまるで空気の存在のように自然に振る舞いかつ手放せないものになるだろう。
30 ^@ "" ;Paging ?. (cm-30 && mp)?mp2, #@ ;ykome(prof)
なお,マクロの動作が自然であると感じられる場合はよいが,こういうものの動作は「好み」に属するものなので,異なる動きの方が自然に感じられるという人もいるだろう。このような個々の好みに応えられるというのも小物マクロのよいところだ。
30 ^@ "" ;Paging
?. (cm!=30 && mp==0)?mp1, #@ ;0->2,2->0->1
これは自分で使っているものの例だが,ちょっと変だと思う。実は画面ページングモードのまま自動検索を行うマクロを使っている関係で,通常とは違う動きになっている。しかも普段はあまりタイトルサーチを使わないので,画面ページングモードからいきなり文字列検索モードへ遷移するようにしてある。