coリ・ー・ン<2nd life

2008 07 24

gist.github.com で GreaseMonkey Script を管理しよう

最近 github にまた新しいサービスgist誕生しました。これはよくあるソースコードwebペーストして参照できるサービスgit 版、と云ったところです。

gist の良いところは、まず git を知らなくても使えるところが上げられます。普通ペーストサービスと同じで、ソースコード適当にはっつければOKで簡単です。編集ももちろん web 上からでき、インターフェイスから編集を行うと、git の履歴としてサーバサイドに保存されます。また、匿名による作成・編集も可能です。(匿名による編集cookie が切れるまでっぽいですが)

そして、git と同じく、githubログインしてれば、gist で誰かが貼り付けたソースコードを fork でき、自分の権限の元編集操作が可能になります。ので、誰かが貼り付けたコードを fork し、改良や改善すると云ったことも簡単にできます。大本のコードからは fork されたコードリンクが張られてるので、あとから来た人も誰かが改良したコード発見し、利用することも用意です。

そしてなにより、git なので、webペーストコードを簡単に clone で持ってきて編集し、commit push 等の操作が行えるので、gist へのコード断片の更新web インターフェイスを使わずとも、git の機能を利用して行うことができるのです。

で、この gist ですが、GreaseMonkeyuser.js と相性が良さそうだなぁ、と。user.js を作って gist にはっつければ公開完了。あとから機能追加やバグ修正したければ、web からの上書きはもちろん、手元の git から commit pushおk。また、別の人が fork して「このバグ直したよ」「OperaGM でも動くようにしたよ」等も簡単。オリジナルの作者は気に入れば pull で取り込めばよいし、もし放置してもオリジナルから fork されたというリンクが残ってるので、Opera で動く版が欲しい人はそこから参照でき、うまいこと情報の集約が可能になります。

ただ一つ問題があって、今ソースのプレーンのダウンロードにはファイル名がつかない(.user.js拡張子がない)ため、FirefoxGM でワンクリックインストールができません。しかしリンク

等、クエリパラメータで最後にファイル名をつけてやれば使えるようになります。ので、gistファイル名をつけて保存し、そのファイル名が*.user.js だった場合は先ほどのように、.user.jsクエリパラメータをつけて表示する GM を書きました。

(そのまんま)。上記URLクリックインストールできるかと思います。

というわけで、gist すごい便利だし、GM と相性良さそうだし、id:os0x さんなんかが広めてくれたらうれしいなー、とか思いました。



追記

早速 id:os0x さんが

で動くように修正してくれたよ!というわけで自分の手元に git で取り込んで push

git clone git@gist.github.com:1952.git gist-1952 # まずは clone で手元に持ってくる
cd gist-1952
git remote add os0x git://gist.github.com/2000.git # os0x さんの fork したレポジトリを remote に追加
git pull os0x # pull で持ってくる
git merge os0x/master # マージする
git push # gist に反映

ERRORERROR 2008/08/12 05:47 Hello, http://lab.rails2u.com/polaroize/ ERROR, help! It does not work, the image gives error when raising it and leaves a error.gif

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

プログラミングRuby 第2版 言語編
Ruby を始めようと思う人から玄人まで身近に置いておきたい一冊
Ruby on Rails入門―優しいRailsの育て方
Rails 入門書の決定版!あのくまくまーの独特な解説ですんなり読める!