*mapkeyを使うことで、以前よりスマートにできるようになったので紹介。PPx 1.77+5以降とKey Module R5が必要。
操作は前と同じ。
処理元のファイルをマークしたあと、
- 移動:Shift+M
- コピー:Shift+C
でサブ窓PPC[X]が開くので、パス移動してShift+Enter。
KC_main = { \M ,*alias ppcx_cmd = *file !move ,%%*extract(%n"%%%%@*8FCDN"),%%1 %%: %%K"@Q" %: *ppc -r -bootid:x -single "%1" -k *mapkey use,K_subwin %%: *linemessage 移動先を選択してください \C ,*alias ppcx_cmd = *file !copy ,%%*extract(%n"%%%%@*8FCDN"),%%1 %%: %%K"@Q" %: *ppc -r -bootid:x -single "%1" -k *mapkey use,K_subwin %%: *linemessage コピー先を選択してください } K_subwin = { \ENTER ,*execute ,%'ppcx_cmd' }
追記 2021-06-15
特殊環境変数の%si"name"を使えばエイリアスを使う必要がなくなることに気づいた。ただエスケープのせいで視認性が悪くなるので一長一短。
KC_main = { \M ,*ppc -r -bootid:x -single "%1" -k *mapkey use,K_subwin %%: *linemessage 移動先を選択してください %%: *string i,temp_exec=*file !move ,%%%%*extract(%n"%%%%%%%%@*8FCDN"),%%%%1 %%%%: %%%%K"@Q" \C ,*ppc -r -bootid:x -single "%1" -k *mapkey use,K_subwin %%: *linemessage コピー先を選択してください %%: *string i,temp_exec=*file !copy ,%%%%*extract(%n"%%%%%%%%@*8FCDN"),%%%%1 %%%%: %%%%K"@Q" } K_subwin = { \ENTER ,*execute ,%si"temp_exec" }
追記 2022-01-30
1.83からマクロ文字展開抑制ができるようになったので、見やすく書き直し。
KC_main = { \M ,*setcust _User:sorce_id=%n %: *ppc -r -bootid:x -single "%1" -k %(*mapkey use,K_subwin %: *linemessage 移動先を選択してください %: *string i,temp_exec=%(*file !move ,%*extract(%su"sorce_id""%%@*8FCDN"),%1 %: %K"@Q"%)%) \C ,*setcust _User:sorce_id=%n %: *ppc -r -bootid:x -single "%1" -k %(*mapkey use,K_subwin %: *linemessage コピー先を選択してください %: *string i,temp_exec=%(*file !copy ,%*extract(%su"sorce_id""%%@*8FCDN"),%1 %: %K"@Q"%)%) } K_subwin = { \ENTER ,*execute ,%si"temp_exec" }
0 件のコメント:
コメントを投稿