番号 | 記号 | 初期キー | 機能 |
---|---|---|---|
#25 | #P | ^QN | ファイル名の複写 |
現編集ファイルのドライブ名から始まるフルパスのファイル名をカーソル位置に出力する。
&?("%s",wa+146)と等価のコマンドで,アクティブな編集ファイルのテキスト構造体からの出力のため,nm(編集ファイルの相対パス名)と異なり,必ずドライブレターを含むフルパスのファイル名であり,編集モード以外でも実行可能となっている。当然,編集ファイルがない状況では実行結果は保証されない。
戻り値 r:常に 0
編集モードと同じ
ファイルオープン系の入力窓での使い方は工夫次第。
編集モードと同じ
コマンドラインにフルパスのファイル名を出力できるので,パスの通っていないディレクトリにある現ファイルをコマンドの引数にすることが簡単にできる。
無効
ファイラー専用コマンド#PはPath/Mask入力窓になっていることに注意。
無効
1 ^\ "" (s>2)?.
(ks&1 && wc>1)?{ ;裏テキストがあるときだけ
&s &?("%s",wb+146) &d . ;wb:裏テキストのワーク
}?#P ;通常はこちらだけ
これはあまりよい例ではない。シフト起動で別のマクロを実行したようなものだ。
25 ^QN ""
(s || wc<1)?. ;コンソールのみオープン時は終了
ss-, p[, wn[, wl[7, #T wl], ;#T:テキスト選択メニュー
:p &p (r!=#m)?{ &o(r) >p } ;&o(r)が2個あるのが美しくないが
&s &o(r) ;ここで&sでないと画面がバタつく
p=wa+146, &#T(0]) ;場所を記憶して元のファイルに戻る
&?("%s",p) p], ;選択したファイルのフルパスを出力
&d #] ;なんか表示上の副作用があるような(^^;
これもあまりよい例とは言えない。拡張と言いながら#25そのものを使っていないから。
1 ^\ "" ?. a=id,
#R #P #m
(wt)?{ #W &#T(-a) }?{ &#Y(2) }
コマンドの拡張ではなく,#25を利用するマクロの例である。#25の利用により,基本的な機能の実現は3ステップの1行で済んでしまう。
1 ^\ "" ?.
(s || wc<1)?. ;コンソールのみオープン時は終了
#O #P &s ;カーソルは末尾にある
(-1){ #s (cd=='\')?{} } ;'\'の位置まで戻る
#d #l &d #m ;ファイル名先頭以下を切り取って[CR]
これもコマンドそのものの拡張ではないが,結構需要のある機能になるだろう。