PPxを使ってみよう!

編集して取込

PPxには、「編集して取込」という素敵機能が付いている。
他のファイラーなら、誰かがしたカスタマイズを真似るには、GUIなりiniファイルをいじるなり、一々自分で設定を変更していく必要があるが、PPxの場合はそれは必要ない。よさげな設定を晒しているブログを見つけたら、「編集して取込」を使うことで5分もかからずにそれと同じ状態にカスタマイズすることができる。

「編集して取込」について詳しいことは以前書いた記事を参照してもらうとして、とりあえず、初期状態のPPxをカスタマイズしたいのなら、

1.カスタマイザーを起動(PPCUSTW.EXEかPPCUST.EXEを実行)したときに表示される全般タブの「編集して取込」をクリック

2.誰かが書いたPPxの設定をコピペしてOKを押す

これだけです。これで、設定がPPxに反映される。

PPxを初めて試してみたいという場合は、とりあえず誰かの設定をブログだとかで探してきて、それを「編集して取込」で取り込み、設定を流用してしばらく使ってみる。そのうち気になる箇所が出てきたら、カスタマイザーなりPPx.CFGを直接編集するなりでカスタマイズしていく、というのがいいのではないでしょうか。PPxはカスタマイズが難しいと言われているが、とりあえず使ってみる、という点では、「編集して取込」があることで他のファイラに大きく優っていると思う。

基本的なの

というわけで僕のしているカスタマイズを晒してみる。下にあるテキスト部分を上から順に「編集して取込」していったら、僕の使っているPPxと同じ状態になります。僕のPPX.CFGをそのままコピペしても同じなんだけど、基本的なとこだけやりたいとか、このカスタマイズを参考に自分なりにいじりたいとか普通あるだろうからこのほうがいいんじゃないかと思う。僕自身、後になっていじる分には、小分けされてたほうが都合がいい。

全般
X_flst	= 3	; エントリ補完結果一覧 0:無 1:有 2:OS版 3〜5:動的
X_dlf	= B1000100,B0	; ドライブリスト(:),ドライブメニュー(PPc \[L])で
XC_mvUD	= 0,1,4,B0000,5,B010	; [↑][↓]
XC_mvLR	= 4,1,4,B0000,6,B001	; [←][→]
XC_isea	= 0,1,3,1	; インクリメンタルサーチ動作 方法,位置,対象,ハイライト
XC_celD	= _AUTO,_AUTO,1,7	; エントリ表示 文字,背景,カーソル,マーク
X_vzs	= 0	; 選択する範囲を選択方向に応じて変更 0:しない 1:する
XV_drag	= 2,1,3	; ドラッグ開始ボタン スクロール,選択,窓移動

カスタマイザの全般タブでいじれる箇所。これを取り込むことで、次のようにカスタマイズされる。

  • エントリ補完を切る
  • ドライブリスト表示をしない
  • カーソルが端に来たとき、上下ならループ、左右なら親ディレクトリへ
  • インクリメンタルサーチでファイル名+コメントを検索
  • マーク表示変更
  • PPvで文字を選択する範囲を選択方向に応じて変えない
  • PPvでドラッグスクロールを開始するボタンを右に。選択範囲を開始するボタンを左に
拡張子色
C_ext = {
EXE = _DGRE
LZH = _CYA
BAT = _DBRO
COM = _DBRO
CMD = _DBRO
ZIP = _CYA
ZOO = _DCYA
ARJ = _DCYA
CAB = _CYA
ISH = _DCYA
RAR = _CYA
JPG = _MAG
GIF = _MAG
BMP = _MAG
C = HFF8000
JPE = _MAG
JPEG = _MAG
INI = _SBLU
AHK = H6A240A
BAK = _DRED
PY = HFF8000
DLL = H0080FF
TGZ = _CYA
PNG = _MAG
JTD = H4080FF
HLP = _WHI
CPP = HFF8000
H = HFF8000
HPP = _WHI
MAK = _WHI
RC = _WHI
RH = _WHI
TXT = _BRO
* = _AUTO
CFG = _SBLU
DOC = H4080FF
HOWM = _BRO
}

これで、

が次のようになる。


キーバインドと表示形式
MC_celS	= {	; エントリ表示 書式([;]メニュー)
;	表示形式を追加
image3	= n40,8 s1
}

KC_main	= {	; PPcメイン窓

;	defaut1、image1、image3の順に表示形式をトグル
'.'	,*RotateExecute id,*viewstyle default1,*viewstyle image1,*viewstyle image3

;	窓の大きさと位置を指定したとおりにトグル
','	,*RotateExecute id,"*windowsize %%N,550,400 %%: *windowposition %%N ,20,300","*windowsize %%N,1200,600 %%: *windowposition %%N ,20,300"

;	Lでドライブ一覧表示
L	= @\L

;	Fでインクリメンタルモードに
F	= @\J

;	Eで確認無しでエディタで編集
E	,%"Text edit"%Orib,editor %FDC

;	Ctrl+Enterで拡張子別判別実行
^ENTER	= @Z

;	Shift+Fでファイル名ソート、Shift+Tで時間別ソート
\F	,*sortentry 17, 0, 1,B11000,
\T	,*sortentry 11, 0,-1,B11000,
}

KV_main	= {
;	カーソル↑↓でPPcのカーソル↑↓。SpaceとShift+Spaceでマークを付けて↑↓
UP	,%KC"@UP@N"
DOWN	,%KC"@DOWN@N"
SPACE	,%KC"@SPACE@N"
\SPACE	,%KC"@\SPACE@N"

;	EnterでPPvを終了する
ENTER	= @Q
}

PPcとPPvのキーバインド
PPcのほうは基本あふっぽくしている。PPvの方は、カーソル上下でフォルダ内の別のファイルが閲覧できるようにしている。基本はこの記事と同じです。
ちなみに、「defaut1、image1、image3の順に表示形式をトグル」と「窓の大きさと位置を指定したとおりにトグル」は、PPXWIN.DLLとPPXTEXT.DLLが必要。

拡張子別判別実行
E_cr	= {	; [Enter]用判別
:TIB	,%M_Ccr,!"P&roperties"
INI	,%v %FCD
:LINK	,%M_Ccr,!"P&roperties"
URL	,%M_Ccr,!"Text &Edit"
VBS	,%v %FCD
JS	,%v %FCD
BMP	,%v %FCD
JPEG	,%v %FCD
PNG	,%v %FCD
JPG	,%v %FCD
HOWM	,%v %FCD
PY	= @V
H	= @V
CPP	= @V
.	,%M_Ccr,!N
BAT	,%M_Ccr,!X
EXE	,%M_Ccr,!X
COM	,%M_Ccr,!X
:EXE32C	,%M_Ccr,!X
:EXEDOS	,%M_Ccr,!X
:EXE	,%M_Ccr,"open"
:SCR	,%M_Ccr,"open"
:HELP	,%M_Ccr,"open"
DOC	,%M_Ccr,!N
TXT	,%v %FCD
:UTEXT	,%M_Ccr,!N
:DOC95	,%M_Ccr,!N
:DOC97	,%M_Ccr,!N
:DIR	= C_DIR
:LHA	= C_DIR
:PKZIP	= C_DIR
:CAB	= C_DIR
:XLF	= C_DIR
:XVBS	,%"Script" *script %{%R%|%}
:XJS	,%"Script" *script %{%R%|%}
:XPLS	,%"Script" *script %{%R%|%}
GZ	= C_DIR
7Z	= C_DIR
CAB	= C_DIR
RAR	= C_DIR
MAKEFILE.	,%{MAKE %|%}
MAK	,%{MAKE -f%C%}
}

Enterキーを押したときのファイル判別実行です。

個人的なの

ここまでが基本的な設定。以下は、僕の利用形態に依存しているので、あまり参考にならないと思う。

MoE
KC_main	= {	; PPcメイン窓
F6	,*script %0\Script\MakeComment.js
}

MC_celS	= {	; エントリ表示 書式([;]メニュー)
howmtitle	= M cF50,5 C z7 S1 tC"y-N-D" s1
}

E_cr	= {
HOWM	,%v %FCD
}

MoEでPPxの設定に必要な箇所。
詳しくはこちらでどうぞ。MakeComment.jsもそこにあります。

メニュー
;空ファイル作成メニューを作り、それをShift+Kに登録

KC_main	= {	; PPcメイン窓
\K	,%M_makefile
}

M_makefile	= {
PlainFile	= *makefile %1\%E
TextFile(&txt)	= *makefile %1\%E.txt
C++ Script(&cpp)	= *makefile %1\%E.cpp
C++ Script Header(&h)	= *makefile  %1\%E.h
Python Script(&py)	= *makefile %1\%E.py
AutoHotKey Script(&ahk)	= *makefile %1\%E.ahk
&VBScript	= *makefile %1\%E.vbs
&JScript	= *makefile %1\%E.js
--	= 
ディレクトリ(&D)	= *makedir %1\%E
}

;パスのコピーメニューを作り、それをShift+Nに登録

KC_main	= {	; PPcメイン窓
\N	,%M_ClipPath
}

M_ClipPath	= {
CopyFileName	= *cliptext %R
Copy&DirName	= *cliptext %1
Copy&FileName(拡張子無し)	= *cliptext %Y
CopyFilePath	= *cliptext %FCD
}
  • Shift+Kで空ファイル作成メニュー
  • Shift+Nでファイル名コピーメニュー

が出る。

スクリプト
KV_main	= {	; PPvメイン窓
^V_H44	,*script %0\Script\DialogHandler.js
}

PPvでCtrl+Dを押したとき、DialogHandlerが起動し、PPvが終了するようにしている。
DialogHandler.jsはこちらから。

その他
;susieplugin
P_susieP	= D:\bin\susie	; Susie plug-in があるディレクトリ(通常は自動検知)

;Shift+Enterでポチエス起動
KC_main	= {	; PPcメイン窓
\ENTER	,%Ob D:\bin\esExt5_c\esExt5_c.exe %FCD
}

;デフォルトのエディタをOEditに
A_exec	= {	; エイリアス
editor	= D:\bin\oedit\oedit.exe
}

;migemoを使う
XC_isea	= 2,1,3,1	; インクリメンタルサーチ動作 方法,位置,対象,ハイライト

;エントリ状態の選択色を青色、ハイライト表示を緑色に
C_eInfo	= _AUTO,_DRED,_AUTO,_DBLA,_DBLU,_DCYA,_DBLA,_BRO,_GRE,_WHI,_AUTO,H804000,_AUTO,H404000,_BRO,_CYA,_GRE 

;拡大縮小設定の倍率を変える
XV_imgD	= {	; 拡大縮小設定([=],*zoom,*reducemode) PPvID = 倍率、縮小方法
;倍率: -1:窓枠に合わせる -2:窓より小→等倍、大→縮小 0:100% 1-10000:%倍率
;縮小方法: 1:白地に黒文字 2:黒地に白文字 3:カラー高速 4:混合
VA	= -4,4
}

;txt、howmの表示桁数を変える
XV_cols	= {	; 表示桁数=該当拡張子、全てに一致しなければ80
66 = .txt,.howm
}

デザインいくつか

あまりデザインにこだわるほうではないのであれだが、一応いくつか晒してみる。

  • 透明


;	文字,背景,カーソル,マーク,書式
XC_celD	= _AUTO,_AUTO,3,7	; エントリ表示 文字,背景,カーソル,マーク

XC_celF	= {	; エントリ表示 書式(現在書式)
A	= M w40F16,5 L z10 L S1 T14 s1
}

MC_celS	= {	; エントリ表示 書式([;]メニュー)
;	表示形式のdefault1を上書き
default1	= M w40F16,5 L z10 L S1 T14 s1
}

X_bg	= { 
Bright	= 100
Opaque	= 80
Path	= 
Type	= 0
}
  • しましま


XC_celD	= _AUTO,_AUTO,1,7	; エントリ表示 文字,背景,カーソル,マーク
C_eInfo	= _AUTO,_DRED,_AUTO,_DBLA,_DBLU,_DCYA,_DBLA,_BRO,_GRE,_WHI,H40312E,H804000,_AUTO,_SBLU,_BRO,_CYA,_GRE 

PPxと一緒にインストールするもの

DLLなど

以下のものは、PPxと一緒にダウンロードしてきて、最初にPPxフォルダに入れてしまうというのがいいと思う。スクリプトやいくつかのコマンド、インクリメンタルサーチなどに利用します。上でもいくつか利用してます。
分かって無くてもとりあえず入れておいて損はないと思います。

  • TORO's Softwareから落とす
    • PPXETS32.DLL
    • PPXSCR.DLL
    • PPXWIN.DLL
    • PPXTEXT.DLL
  • gdiplus.dll
  • Bregexp.dll
スクリプト

以下は僕が入れているスクリプト。PPxフォルダの中にScriptフォルダを作り、その中にスクリプトを入れるようにする。

以上を入れると、PPxフォルダはこんな感じになる。