Version 40+9 公開

Version 0.40+9
All
・PPeで大きな範囲を削除するとそれ以降描画されなくなるのを修正
PPc
・エントリ表示書式のディレクトリ(R[n])の表示形式をタイトルバーと同じにした
・0.40+4でマウスによる範囲選択後、スクロールすると範囲選択されるのを修正
・一体化時の挙動を調整した
・任意ウィンドウを一体化PPcに取り込み1ペインにする(*capturewindow)を追加
・Auto D&Dコマンド(*autodragdrop)を追加

R[n]がタイトルバーと同じになり、特になにもせずともマスク文字列が情報行(?)に表示できるようになりました。

*capturewindowは説明にも書いてありますが、取り込むことしかできないので現状では本当に使えそうにないです。

*autodragdropについては、そもそもD&D関連の機能を使用していないので、なんとも言えません。

とりあえず、報告です。(ソフトの更新情報サイトなワケじゃないんだけれど)

今日までしたPPxカスタマイズをまとめてみた

今日までしたPPxカスタマイズを列挙してみた

そういえば、Paper Plane xUI 0.40+8が公開されてた。カスタマイザが変わってた。確かによくなっているけど、もうエディタでの編集になれちゃってるのでなんとも言えない。

40+4 で追加されてた、エントリ表示書式の『現在のディレクトリ(R[n])』って良いですね。あとはマスク文字列が表示できればいいなぁ、なんて思ったので。*customizeを使って、スクリプトで、これまた強引にやってみたのですが、なんとも微妙な動作。ふぃー

「直上のマークからカーソル位置までマーク」修正

早いけど、修正。ミスを直しました。 たぶん、もう問題ないと思います。強引なのは変わりませんけど。

//!*script
// 直上のマークからカーソル位置までマーク
icursor = PPx.EntryIndex;
if ( PPx.EntryFirstMark ) {
istart = PPx.EntryIndex;
if ( istart < icursor ) {
PPx.EntryIndex = icursor;
while ( (PPx.EntryIndex != istart) && (PPx.EntryMark == 0) ) {
PPx.Execute('*cursor 0,-1,3,B000,0,B010');
}
PPx.Execute('*cursor 0,1,3,B000,0,B010');
while ( PPx.EntryIndex < icursor ) {
PPx.EntryMark = 1;
PPx.Execute('*cursor 0,1,3,B000,0,B010');
}
PPx.Execute('%K"@^\\A"');
} else {
PPx.EntryIndex = icursor;
}
}

*fitwindowRなんて作ってみた。

Window ModuleやScript Moduleを入れて遊んでます。

Window Module の*fitwindowは「指定したPPx位置に指定したPPxをあわせる」というもので、まとめサイトなどを見るとこれを利用して反対窓位置にビューアをあわせたりして、「あふっぽいPPv」とやってるみたいなんですが、二画面を連結していないわたしからすると、まったく見当違いの位置に「ひょっこり現れるPPv」

仕方ないので、くっついて配布されてたWindow Moduleのソースをのぞいたら、MoveWindowで動かしてるだけっぽかったので、以下のようにいじったものをFITWINDOWRという名前で追加。

(略)
GetWindowRect((HWND)sparam[0],&box);
x = box.left;
y = box.top;
width  = (box.right - box.left);
height = (box.bottom - box.top);
MoveWindow(hTargetWnd, x + width, y, width, height, TRUE);
(略)

「指定したPPxの右隣に指定したPPxをあわせる」コマンド、*fitwindowrの完成なわけです。 言語に詳しくないので、果たしてこんな適当なコピペでいいのかは別として、それっぽく動くので満足してます。ふぃー。

Script Moduleでは、先日やりたいのにできないと言っていた、「上のマークから、現在のカーソル位置までマーク」を強引に実現しました。 以下のものを〜.jsで保存、*script コマンドから実行すると動くと思われます。 ただ、かなり強引にやってる気がするので、もっと素晴らしいもの書ける偉い方、書いてください。お願いします。

//!*script
centry = PPx.EntryIndex;
if ( PPx.EntryFirstMark ) {
PPx.Execute('*cursor 0,1,3,B000,0,B010');
while ( PPx.EntryIndex < centry ) {
PPx.Execute('%K"@SPACE"');
}
PPx.Execute('%K"@^\\A"');
} else {
PPx.EntryIndex = centry;
}

書いたものが思ったとおりに動くとうれしいものですね。

離れ島キーの設定

今日も明日もPPx。 だらだらとCFGをいじるのを楽しんでいます。わたしのやっていることは「便利にするためのカスタマイズ」というよりは「ジグソーパズルに近いカスタマイズ」だと思えてきました。一枚だったものをわざわざバラバラにし、それを組み立てて完成を目指すようなカスタマイズ。言ってしまえばまったくの無意味な行為。しかし、それを楽しんでいます。「ジグソーなカスタマイズ」が好きなあなたにお勧めしたいファイラ、PPxです(宣伝?)

今日は離れ島*1キーとカーソルキー設定をいじりました。

いじったといっても、多くの場合は「機能の確認」いらなければ「機能の削除(NULL割り当て)」別キーのほうがいい場合は「別機能の割り当て」をしただけなんですけどね。こんな感じに編集しました。(20051204.txt)TAB幅4

主な内容としては、Ctrl+LeftやCtrl+Rightに割り当てられていた「前に戻る」「次に進む」はAlt+Left,Alt+Rightに割り当てました。こちらの方が一般的なキーですし、入れ替えてもほとんど問題がでないと判断しました。あとはHOME、ENDなどの動作をあふっぽく。あくまで「ぽく」なんですけど、変更しました。

もう一つ、大きな変更点としてメニューを変更しました。デフォルトメニューです。デフォルトのメニューで使用しているのはHelpだけなんですけど、ファンクションキーを全部無効にしたところきかなくなりまして。 どうやら、デフォルトのキーではなくそのときのキーが割り当てられているみたいなんです。

というわけで、デフォルトのメニューっぽいものを作りました。(ppx_defaultmenu.txt)TAB幅4 こちらは%K"@キー"を使用しているので初期キーのものが実行されます。 ただ、元々メニューバーを使っていなかったので、要らないかなと思ってはいます。わらい。なんとなく書いてしまったし、勿体無いのであげておきます。

*1:INS,DEL,HOME,END,PgUp,PgDnのことです。フルキーボードだと大抵離れた場所に島を作っているので、こう呼んでいます。あくまで個人的なものなので、一般的な呼び方だと思って使うと笑われます。

マークとかマスクとか

PPxメインファイラに向かってがんばっています。 CFGファイルをメニュー部分とキー部分とその他の三つに分けました。特に意味のない(むしろ面倒になるはずの)行為なのだけれど、意外にもスッキリしたような気が。難点としては、一旦初期化して再度取り込んだときに、何度か取り込まないと(取り込む順番が重要なのかも)うまく動作しなかったりすることとか。

それとは別に気になったのが、マーク・マスクのあたり。以前よりずいぶん「あふ」っぽく動くようにしたのだけれど、どうも実現できない動作がこのあたりにある。 個人的によくやる動作に「上のマークから、現在のカーソル位置までマーク」という機能があるのだけれど、これがPPxにないっぽい。あと、ワイルドカードマークとファイルマスクのメニューを作ったのだけれど、複数条件指定なんてのができないので、あふのマスクみたいにはいかない。それにマスクが表示できないので、今どんな条件で絞ってるのかちっともわかんない。

いくら、外部からCopy・Moveができても思い通りに選択できないのはつらいなぁ