2019年9月20日金曜日

サブ窓中心の運用①基本的な仕組み


やりたいこと


今回行いたいのは、以下の動作。

1.メイン窓から操作元のファイルを指定し、サブ窓を開く
2.サブ窓で操作先のファイルを選択し、Shift+Enter
3.操作が実行され、サブ窓が閉じる



例えばファイルをコピーしたい場合、思考の流れとしては、

1.コピーしたいファイルを窓Aで選択
2.コピー先のフォルダを窓Bで選択
3.実行

となる。「窓A→窓B」で操作は終わるはずなのだ。しかし、通常の操作では

1.コピーしたいファイルを窓Aで選択
2.コピー先のフォルダを窓Bで選択
3.窓Aへ戻り、コピー操作を実行

となる。「窓A→窓B→窓A」と窓間移動が一度増えるのである。それを解消するのが今回の目的(ちなみにこれは、サブ窓を使う以外にも、「反対窓でマークしたファイルを操作」「fenrirを使う」「一行編集を使う」といった解決方法が存在する)。

準備


ポイントは、サブ窓のキーバインドの一時的な変更。

KC_main    = {
\ENTER    ,*ifmatch CX,%n %: *execute ,%'ppcx_cmd' %: *stop
    %K"@\ENTER"
CLOSEEVENT ,*ifmatch CX,%n %: *alias ppcx_cmd = %%K"@\ENTER" %: *stop
}


こうすると、エイリアスppcx_cmdに実行したい内容を登録すれば、サブ窓に使うPPC[X]のShift+ENTERの挙動を変更することが可能になる。

ファイル移動、コピー、解凍


KC_main    = {
\ENTER    ,*ifmatch CX,%n %: *execute ,%'ppcx_cmd' %: *stop
    %K"@\ENTER"
CLOSEEVENT ,*ifmatch CX,%n %: *alias ppcx_cmd = %%K"@\ENTER" %: *stop
\M ,*ifmatch !CX,%n %: *alias ppcx_cmd = *file !move ,%%*extract(%n"%%%%@*8FCDN"),%%1 %%: %%K"@Q" %: *ppc -r -bootid:x -single %1
\C ,*ifmatch !CX,%n %: *alias ppcx_cmd = *file !copy ,%%*extract(%n"%%%%@*8FCDN"),%%1 %%: %%K"@Q" %: *ppc -r -bootid:x -single %1
\U ,*ifmatch !CX,%n %: *alias ppcx_cmd = *script %0Script\wrap_7zG.js,%%*extract(%n"%%%%a8FDC"),%%1 %%: %%K"@Q" %: *ppc -r -bootid:x -single %1
}

やってることは以前の記事と同じ。ただ少し書き方を変えている
処理元のファイルにカーソルをあわせるか、マークするかしたあと、

移動:Shift+M
コピー:Shift+C
解凍:Shift+U

でサブ窓PPC[X]が開く。あとは処理先のディレクトリで、Shift+Enterを押せばいい。

参考


PPx 逆引き辞典 - PC-98ファイラーHFやPyxisのような感覚でコピー/移動/解凍
キャズムを超えろ! - Pyxisという偉大なファイラ / OSSの魅力
つかさのほえほえ日記 - コピー/移動/解凍先フォルダ選択を別窓で
つかさのほえほえ日記 - 反対窓でマークしたファイルを現在窓に移動/コピー
つかさのほえほえ日記跡地 - PPxとfenrirの連携

追記


2019/09/20 サブ窓をZからXに変更

0 件のコメント:

コメントを投稿