gotin blog

Whatever gotin wanna write

gmacsでGreasemonkeyスクリプトの実行

GreasemonkeyでEmacsチックなテキストエディタことgmacsで、Greasemonkeyスクリプトをインポート&実行する機能を追加しました。

スクリプト本体はこちら↓
gmacs.use.js

/plugins/ 直下にGreasemonkeyスクリプトを入れておくと、include / excludeの定義を加味して実行します。

今日は眠いので詳しいことはまた明日(以降に)。



すいません、現状バグってます。新規インストールの場合何も動かない状態です ><

今夜あたりに修正します。



ようやっと修正完了。ふぅ。。

[注意点]
ファイルの作成日時、修正日時も管理するように修正しつつ、旧版のファイルもうまいこと扱おうとしていたのですが、どうにもうまく作れなかったので、旧版のファイル形式には対応しないことにして、すべて新しいファイル形式で扱うことにしました。つまりファイル管理方式について下位互換性がありません。

従って、gmacsの旧版をお使いの方はそのまま上書きインストールしてもうまく動作しません。一旦「Also uninstall asociated preferences」にもチェックを入れた状態でアンインストールしてからインストールしてください。つまり残念ながら今までのファイルは捨てることになります。といってもそんな大事なファイルなんてないですよね^^;

[説明(というか言い訳?)]
なぜこんな機能を作ったか。
背景として、GreasemonkeyでEmacsチックなテキストエディタをちょっと更新 で作成した拡張機能スクリプト一発導入機能によって *.jsなリンクにすべて導入用アイコンがつくようになったため、当然*.user.jsなリンクにもそれがつくようになってしまったんですね。
だったら*.user.jsを導入した場合はGreasemonkeyスクリプトらしく動くようにしてあげたらいいじゃないか、
お、それなら「GreasemonkeyでGreasemonkey」もいらなくなる?、うぉ激しく便利なんでは?と思ってこんな機能を作りました、というわけです(まぁ実際はそんな激しくってほど便利じゃないですが(笑))。

greasemonkey自体の機能でスクリプトのエディットボタンがありますが、その代わりにgmacsでエディットする(し、実行もするし)、というように考えることもできます。ほんとはgreasemonkey自体にインストールされているスクリプトのエディットができたらいいんでしょうけど、greasemonkeyスクリプトであるgmacsにそんなことはできないわけで、まぁこんなところが妥協点かなと。



[今後の予定]
そろそろ(いい加減?)複数バッファ管理の機能を作りたいところです。

[雑記]
gmacsづくりをきっかけに、Emacsの本を引っ張りだしてきてちょこちょこと読むようになりました。へぇこんな機能があるのかぁ、なんて関心しております。calendarとかdiaryとか、なかなかこった機能がありますよねぇ。gmacs用にも誰か作ってくれないかなぁ。。^^;