2013年11月28日木曜日

リムーバブルドライブの取り外しをPPxから行う


2chのPPxスレにリムーバブルドライブの取り外し方が載っていたのでそれを参考に。

KC_main = { ; PPcメイン窓
^U ,*freedriveuse %*name(HP,"%1") %: *launch D:\bin\UPLG\unplug.exe %*name(H,""%1"")
}

僕が使ってるWindows2000だとリムーバブルドライブのejectはできないっぽいので、それ用のツールを用いた(死んでゆく牛はモー)。
これで、現在ドライブがリムーバブルドライブの時、Ctrl+Uを押せば外すことができる。今までは一々タスクトレイアイコンをクリックして外してたから超便利だ

こういう系のちょっとした機能は、キーに割り当てても忘れるし煩雑になるので、あらかじめ他のコマンドと共に登録しておき、一行編集から自動補完して実行できるようにすれば、色々と捗りそうだなと思った。



ClaftLaunchとかBlueWindみたく、登録しておいたコマンドを補完して実行できるようにできればよさそうかなと。
うまいやりかたあるか探ってみようかな

2013年11月25日月曜日

PPxの拡張子判別

拡張子判別


今回は拡張子判別をする方法。
たとえば、Shift+Enterで画像ファイルを拡張子判別したい場合は、次のようにする。

E_scr = { ** comment **
JPG ,%M_Picture,A
PNG ,%M_Picture,A
JPEG ,%M_Picture,A
BMP ,%M_Picture,A
}
M_Picture = { ** comment **
&Azpainter = %Ob D:\bin\azpt\AzPainter2.exe %FCD
&MassiGra = %Ob D:\bin\MassiGra\MassiGra.exe %FCD
縮小専用(&S) = %Ob D:\bin\smahe\SmaHey.exe %FCD
-- = 
&DialogHandler = %Ob D:\bin\DialogHandler\DialogHandler.x86-32.exe %FCD
壁紙にする(&W) = *customize X_bg:Path=%FDC %: *customize X_bg:Type=10
}

E_scrというのは、デフォルトでShift+Enterに割り振られている拡張子判別。
これで、カーソル上の拡張子が.jpg .png .jpeg .bmp の時は、Shift+Enterを押せばM_Pictureメニューを表示するようになる。


パスによる判別と拡張子判別の組み合わせ


これと、前々回のパスによる判別を組み合わせてみる。

ShiftEnter.js

//!*script

aimp = "C:\\Program Files\\AIMP2\\AIMP2.exe";
folder = /D:\\data\\Music/;

if (PPx.GetFileInformation(PPx.Extract("%FCDN")) == ":DIR"  && PPx.Extract("%1").match(folder)){
  PPx.Execute ("%Ob \"" + aimp + "\"%#FCDN");
}else {
PPx.Execute("%ME_scr");
};

以下を編集して取り込み。

KC_main = { ; PPcメイン窓
\ENTER ,*script %0\Script\ShiftEnter.js
}

Shift+Enterで、パスがD:\Music内のフォルダの場合はそれをAimpに渡す。
パス判別に引っかからなかったものは拡張子判別E_scrに投げる。最後から二行目を前のから書き直したんだけどこれやってること同じで書き直した意味ないですね今気づいた。

使っている拡張子判別メニュー


今僕が使っているメニュー。ポチエスに投げてたのをすべてPPxのみでやってしまおうと思っている。

E_scr = { ** comment **
JPG ,%M_Picture,A
PNG ,%M_Picture,A
JPEG ,%M_Picture,A
BMP ,%M_Picture,A
TXT ,%M_Text,X
INI ,%M_Text,X
CFG ,%M_Text,X
L ,%M_Text,X
XYZZY ,%M_Text,X
HOWM ,%M_Text,X
TEX ,%M_Text,X
MP3 ,%Ob "C:\Program Files\AIMP2\AIMP2.exe" %FCD
OGG ,%Ob "C:\Program Files\AIMP2\AIMP2.exe" %FCD
MPG ,%Ob "C:\Program Files\AIMP2\AIMP2.exe" %FCD
WMA ,%Ob "C:\Program Files\AIMP2\AIMP2.exe" %FCD
FLAC ,%Ob "C:\Program Files\AIMP2\AIMP2.exe" %FCD
HTML ,%Ob "C:\Program Files\Crescent Eve\Eve.exe" %FCD
HTM ,%Ob "C:\Program Files\Crescent Eve\Eve.exe" %FCD
* ,%"Text edit"%Orib,editor %FDC
}
M_Picture = { ** comment **
&Azpainter = %Ob D:\bin\azpt\AzPainter2.exe %FCD
&MassiGra = %Ob D:\bin\MassiGra\MassiGra.exe %FCD
縮小専用(&S) = %Ob D:\bin\smahe\SmaHey.exe %FCD
-- = 
&DialogHandler = %Ob D:\bin\DialogHandler\DialogHandler.x86-32.exe %FCD
壁紙にする(&W) = *customize X_bg:Path=%FDC %: *customize X_bg:Type=10
}
M_Text = { ** comment **
&xyzzy = %Ob D:\bin\xyzzy\xyzzy.exe %FCD
&oedit = %Ob D:\bin\oedit\oedit.exe %FCD
xyzzyで印刷(&P) = %Ob D:\bin\xyzzy\xyzzy.exe -p %FCD
}

2013年11月19日火曜日

プログラムの実行履歴を再利用する

僕はexeファイルを実行するときには、Xキーで一行編集を出してから、実行するようにしている。



一行編集で実行したファイルのパスを蓄積し、再利用することができれば便利じゃないか、と思った。



このように、カーソル下のパスと併せて、過去に実行したファイルのパスも一覧表示したい。最近実行したファイルを何度も開き直すということはよくあるし、いちいちそのフォルダに行って実行するより効率がよくなるはず。

 やり方


KC_main = { ; PPcメイン窓
X ,%k"@F4" %: *set hoge=%eu%"プログラムを実行"%{%FDC%|%} %: *launch %'hoge' %: *addhistory u,"%'hoge'"
}

これを編集して取り込み。

*addhistoryで実行したパスをユーザー定義 u のパスヒストリに蓄積。%euで一行編集のパスヒストリをこれに指定してます。


 一覧表示不要の場合



KC_main = { ; PPcメイン窓
X ,*set hoge=%eu%"プログラムを実行"%{%FDC%|%} %: *launch %'hoge' %: *addhistory u,"%'hoge'"
}

一覧表示をせず、カーソル上下で最近実行したパスの履歴に切り替わるだけで十分という場合はこちら。

2013年11月18日月曜日

ファイルパスで判別して違うソフトに投げる

以前も記事にしたことがあったのだが、必要があって最近見返してみても煩雑でよくわからなかったので書き直し。

やりたいのは、パスで判別して違うソフトに投げること。
僕はMP3ファイルはすべてD:\data\Music以下にアルバム単位でフォルダ分けして置いている。Musicフォルダ内のフォルダを選択した場合は音楽プレイヤーに投げ、それ以外ならデフォルトの操作をする、ということを一つのキーでしたい。
要はフォルダ単位で音楽プレイヤーで再生というのをPPxから手軽にやりたい。けど、特定のキーに音楽プレイヤーに投げるコマンドを割り振るだけだと、間違って全然関係の無いフォルダを音楽プレイヤーに投げてしまってほえぇーってなりそうだからファイルパス判別を噛ませたい。

ShiftEnter.js

//!*script

aimp = "C:\\Program Files\\AIMP2\\AIMP2.exe";
folder = /D:\\data\\Music/;

if (PPx.GetFileInformation(PPx.Extract("%FCDN")) == ":DIR"  && PPx.Extract("%1").match(folder)){
  PPx.Execute ("%Ob \"" + aimp + "\"%#FCDN");
}else {
PPx.Execute("%K\"[@\\ENTER]\"");
};

これをShiftEnter.jsと名前を付けてScriptフォルダに保存した後、以下を編集して取込。

KC_main = { ; PPcメイン窓
\ENTER ,*script %0\Script\ShiftEnter.js
}


Shift+Enterに登録してます。この場合だと、パスにD:\data\Musicが含まれているフォルダであればAimp2に投げていますね。それ以外はデフォルトのShift+Enterと同じ動作をさせてます。


参考


2013年11月4日月曜日

無印良品版測量野帳?(手のひらサイズポケットノート)を購入

野帳っぽいダイアリーの販売予定とかそろそろあったりしないかなと適当に2chのスレとかブログとかを見回っていて、無印良品が野帳っぽい手帳を出しているらしいと知る。ファミリーマート限定で売ってるそうです。さっそく購入。



40枚の3mm方眼。大きさも作りもおなじ。カバー以外は全く同じものなんじゃねこれ、とさえ思える。商品情報の箇所はシールになってて、簡単にはがすことができる。

野帳と異なっているのはカバーの質感と色。野帳は布っぽい緑色だが、こちらはつぶつぶっぽい黒色です。モレスキンに近い。

らくがき帳みたいにどのファミマでも買えるのだったら、今までのように一々野帳をストックする手間が省けていいのだけれど、売ってないことも多そう。僕の場合は4店目でやっと見つけました。また、コンビニでしか販売してないので、一度に十冊とか大量に購入するのも難しそう。ストックがほしいなら、こまめに通って補充されるたびに買う、というのを繰り返すしか無さげ。

あとは、好みの問題とか、廃盤になったりしないかとか、そういった話になってくる。ただ、これの場合は大きさその他全部本家と同じだから、販売終了したとしても野帳に切り替えるだけでよさそうな。とりあえず、今の野帳を使い切ったら無印版を試しに使ってみようと思います。

個人的には無印版のつぶつぶっぽい質感よりは野帳の布っぽい質感のほうが好きかなあ。緑色の表紙とか金字とかも慣れたし、結局は野帳のほうを使い続ける気がする。僕は白とかオレンジとか水色とか青色とか、そういう明るい系の色が好きなので、そういう表紙の野帳が出たら速攻で乗り換えるんだけど