2015年8月31日月曜日

PPxを3ペインの画像ビューアとして使う



こんなふうに、PPxを3ペインの画像ビューアっぽく使ってみる。いつものPPv中心の連動ビューではなく、デフォルトの連動ビューを利用。

準備


以下のスクリプトをScriptフォルダに保存。
PPv中心の連動ビューをしていると、デフォルトの連動ビュー時に支障が出る。これは、それを避けるためのスクリプト。PPv上でのカーソルキー動作を、連動ビュー有効時に停止させている。
PPv中心の連動ビューをしていない場合は、このスクリプトは不要。

mysyncview.js

//!*script

var useppv = 'R'; // 使用PPv ID
if ( PPx.CodeType == 0 ){ // MultiByte版かそうでないかで分岐
  var ppvname = 'ppv';
}else{
  var ppvname = 'ppvw';
}
if ( PPx.GetComboItemCount == 0 ){ // 独立窓か一体化窓かで分岐
  var usewindow = '%N'
}else{
  var usewindow = '%*findwindowclass("PaperPlaneCombo")';
}

PPx.Execute('%Oi '+ppvname+' -r -bootid:'+useppv);
PPx.Execute('*fitwindow '+usewindow+',%NV'+useppv+',3');
if ( PPx.SyncView == 0 ){
  PPx.Execute('*ppvoption sync '+useppv);
  PPx.Execute('*setcust KV_main:-|UP=');
  PPx.Execute('*setcust KV_main:-|DOWN=');
  PPx.Execute('*setcust KV_main:-|LEFT=');
  PPx.Execute('*setcust KV_main:-|RIGHT=');
  PPx.Execute('*setcust KV_main:-|SPACE=');
  PPx.Execute('*setcust KV_main:-|\\SPACE=');
}else{
  PPx.Execute('*ppvoption sync off');
  PPx.Execute('*setcust KV_main:UP,%%KC "@UP @N"');
  PPx.Execute('*setcust KV_main:DOWN,%%KC "@DOWN @N"');
  PPx.Execute('*setcust KV_main:LEFT,*execute C,*cursor 6, -1 %%: %%KC"@N"');
  PPx.Execute('*setcust KV_main:RIGHT,*execute C,*cursor 6, 1 %%: %%KC"@N"');
  PPx.Execute('*setcust KV_main:SPACE,%%KC "@SPACE @N"');
  PPx.Execute('*setcust KV_main:\\SPACE,%%KC "@\\SPACE @N"');
}

以下を編集して取込。

KC_main = { ; PPvメイン窓
^Y ,*RotateExecute view,"*tree on %%: *setmaskentry o:d,a:d-","*tree off %%: *setmaskentry"
\Y ,*script %0\Script\mysyncview.js
}

一体化窓で、PPv中心の連動ビューをしてない場合は、以下を編集して取込。

KC_main = { ; PPcメイン窓
^Y ,*RotateExecute view,"*tree on %%: *setmaskentry o:d,a:d-","*tree off %%: *setmaskentry"
\Y ,%Oi ppvw -r -bootid:r %: *fitwindow %*findwindowclass("PaperPlaneCombo"),%NVR,3 %: *ppvoption sync
}
_others = { ; その他設定
SyncViewID = R
}

独立窓で、PPv中心の連動ビューをしてない場合は、以下を編集して取込。

KC_main = { ; PPcメイン窓
^Y ,*RotateExecute view,"*tree on %%: *setmaskentry o:d,a:d-","*tree off %%: *setmaskentry"
\Y ,%Oi ppvw -r -bootid:r %: *fitwindow %N,%NVR,3 %: *ppvoption sync
}
_others = { ; その他設定
SyncViewID = R
}

使い方


  • Ctrl+Y ツリー表示&フォルダマスク
  • Shift+Y 連動ビュー。PPv[R]をPPcのすぐ上に表示

画像フォルダに行って、Ctrl+Y。



すると、ツリーを表示し、エントリ表示のフォルダが非表示になる。


Shift+Yで連動ビューに。PPcのカーソル位置のファイルが、常にPPvで表示される。もう一度Shift+Yを押すとPPvは閉じ、連動ビューも無効になる。


追記 2015/08/31


スクリプトのコードを修正。連動ビューに使うIDを指定できるようにした。また、Multibyte版でも独立窓でも使えるようにした。

0 件のコメント:

コメントを投稿