Konfabulator for Windows
ちょっとした小物を置くのに便利なKonfabulator。MacOS X TigerだとDashboardってのが入って、揉めたっけね。
なんとなく、これのwidgetってどうやって作るんだろと調べてみたら。これってUnxUtils(http://unxutils.sourceforge.net/)が中にバンドルされてて、javascriptからrunCommand("foo")を実行すると、それにあるsh.exe経由で実行するんだね。へええ。そんな訳で、たまたまCygwin入れてたりすると、
ret = runCommand("gcc -v");
でも動く。shがHOMEみて.bashrc読んでるっぽい。あれまあ。あ、UnxUtilsに加えてcurlまで入っとる。
最低限必要な.konファイルはXMLでこれくらい。Webをぐるぐるしたが、今はどうも
<?xml version="1.0" encoding="UTF-8"?> <widget> <debug>on</debug> <!-- Turn on debugging console --> <window title="MyFirstWidget"> <name>main</name> <width>100</width> <height>100</height> <visible>false</visible> </window> <action trigger="onLoad" file="main.js"> <!-- // Or put your js code here like this main.visible = true; --> </action> </widget>
コードはmain.jsに書くか、
で、これをMyFirstWidget.konに保存して、ダブルクリックで起動。デバッグコンソールにはprint()で文字列が出せて、evalさせることもできる。
テストとデバッグはそのダブルクリックだけで済むんだが、そのあとにひっかかったのがパッケージング。ファイル配置は
MyFirstWidget.widget/Contents/MyFirstWidget.kon main.js Resources/foo.png
とかなんとかにして、これをzipで固めて拡張子を.widgetに変更する。そのとき、このMyFirstWidgetってところは全部同じにして、zipで固める前のディレクトリ名も固めた後のファイル名も.widgetにする。らしい。
参考にしたのはこのへん。皆さんありがとうございます。