これからはSpider Monkey Panelの時代らしい

長い間WSHを使わずに使ってきたfoobar2000なのだけれど、いよいよ耐えられなくなってきたので、ちょっとお勉強しようかと思っていた矢先の出来事。

顛末

WSH Panel使おう

今はJScript Panelがメインらしい?

JScript Panelもバージョンアップで過去スクリプトが色々動かなくなってるらしい?

JScript Panelが2.1.8にバージョンアップされる。リリースノートにJScript Panelの更新終了とSpider Monkey Panelへの誘導が見つかる。(事実上のJScript Panelオワコン宣言)

Spider Monkey Panelの勉強を始める ←いまここ

JScriptパネルと何が違うのか

そもそもJScriptってのはMSの作ったJava Scriptモドキで、ほぼ文法が一緒なのだけれどちょっとだけ違う、みたいなものらしい。WSHを利用したパネルなのでJScriptを使わざるを得ないって感じだったのだろうけれど、なにせWeb上に情報が無いのなんのって。google先生には「もしかして:Java Script」される始末。まさに生ける屍言語。

そんなものいつまでも使ってらんねーよ!ということで、火狐のJava ScriptエンジンであるSpider Monkeyを使ってJScriptパネルを再実装したのがSpider Monkey Panelということらしい。

あと作者曰く「Blazing-fast performance!」らしいっすよ?

今までのコードは

「on_~」系の関数が呼ばれて動くのはJScriptパネルと変わっていない様子。つまりかなり簡単に移植できるってこった。

JScriptパネルにサンプルとして載ってたものはすべてSpider Monkey Panelに移植されているようなので、とりあえずそのあたり確認したら良さそう。というかサンプルをそのまま使っていた勢は何も考えずにSpider Monkey Panelへ移行出来る。

あとfb2kのパネルとしての変更点として、コメント内に配置する変なプリプロセッサが無くなって、普通に他の言語っぽくincludeが書けるようになった点も注意1

complete系の話

色々改造の種になるcomplete系だけれど少し実装が変わっているっぽ。

特に見た目で気になるのがhelpers.js系。元々lodash_min.jsのmixin関数で、helpers.js内の関数をすべてlodashに含めていたのが、全部helpers独自実装に変わってる。

ただ単なる名称変更だとややこしいと思ったのか、例えば今まで

 _.chrToImg(chars.stop, colours.buttons)

とかしてたのが

 _chrToImg(chars.stop, colours.buttons)

になった。lodashにchrToImgを含めるのではなく、最初から_chrToImgという名前で定義してる。余計ややこしいと思うんですがそれは…

まとめ

Java Scriptにほぼ触れたことの無かった自分は「_.charToImg」とかいう表現に困惑したのだけれど、lodashはJava Script界隈では常識レベルのライブラリらしく、知識の乏しさを痛感したのであった(あほ)

とりあえず難しいロジカルな部分は既にあるコードに任せるとして、見た目だけ弄るところから始めようと思う。JScriptじゃなくてJava Scriptってだけで幾分か気が楽だし。デバッグ環境がうんこなのは一緒だけれど…2

今からfb2kのカスタムするぞって人は是非Spider Monkey Panelから始めましょう。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です