何かくっつける系のGreasemonkeyが作りやすくなってます。 エントリごとに表示投稿日時が出てる箇所に追加されます。 window.entry_widgets.add("name", generator , "description"); generatorはfunction(feed,item){ ... }のように無名関数で記述できます。feedはフィードに関する情報、itemはその記事のリンクや記事本文が取れます。データ構造はまるごとPerlに書いてあります。 descriptionは省略可能ですが、将来的に何か気の利いたUIでも作ろうかと考えていたりするので入れておくと良いかも知れません。今のところtitle属性に使うようになってます。Greasemonkeyだと日本語が通らないのでエスケープする必要があります。 エントリにくっつけるサンプルエントリごとにlivedoorクリ
JavaScript 検討、全てのサイトでGM_xmlhttpRequestを使う 上記エントリのコードは脆弱で、GreasemonkeyのGM_xmlhttpRequestを予期しないコンテンツウィンドウから奪われる可能性があることを、Days on the Moonのnanto_viさんにメールにて教えていただきました。貴重なアドバイスを頂き、深く感謝しております。 具体的には、gmXMLHTTPRequestの__parent__プロパティから、Greasemonkeyスクリプトのコンテキストを取得され書き換え、APIキーをコンテンツウィンドウにコントロールし乗っ取ることができます。サンプルコードは以下です。 gmXMLHTTPRequest.__parent__.API_KEY = 'ABC'; GM_XHR_API_KEY = 'ABC'; gmXMLHTTPRequest({
expand-textarea.user.js flickr の textarea がいちいち小さいので作ってみた。textarea の右下のはじっこのほう (謎) をドラッグすると大きさが変わる。 なんで getElementsByTagName を使っていないのかというと、forEach が使いたかったから!! getElementsByTagName が返すのは NodeList であって、Array じゃない。 もうちょいまともにするように修正。 それと「左下」って書いてたのを修正した。ひだりもみぎもわかりませんがなにか? 拡張では Resizeable Textarea 0.1a, Resize textareas to your needs っていうのがあるみたい。ってことを IRC で klm さんに教えてもらった。 トップ js textarea の大きさの呪縛から逃れるた
GM_setValue / GM_getValue + unsafeWindow.eval を使って 永続的に外部スクリプトを利用する方法を考えてみた。 わざわざ DOM で script要素 を毎回注入するよりも 速いんじゃないかと思う。 Greasemonkeyには、GM_setValue / GM_getValue というのがあって、 GM_setValue("キー", "値") 上記のように入力してあげる事によって、たとえ、 Firefoxを終了させたとしても消えないデータを作成する事が出来る。 そして、それを利用して、 初回のみ XmlHttpRequest で外部スクリプトデータを取得して、 GM_setValue でスクリプトデータを永続化しておき、 二回目以降は、それを GM_getValue して eval するようにした。 以下は、永続的に prototype.js を
http://rails2u.com/misc/hatena_hotkeyword_graph.user.js はてなの注目キーワードではその日どんなキーワードを注目されているかが解って結構面白いです。視覚的に解るともっと面白いかもー、というわけで PlotKit + GreaseMonkey でサクッと作ってみました。 こんな感じで表示されます。1画面内のグラフに主だったキーワードが表示されるので、「あっ、そういえばこの日こんな事あったよー」というのが解って割と面白いと思います。もちろんジャンル事の表示などにも対応してます。また例えば先日の大停電の日のグラフですが このように、普段あまり使われてない「東電」というキーワードが一時的にめちゃくちゃ使われてる事が解って面白いです。 技術的なところでは、GreaseMonkey の開発ならヤツに丸投げまかせろ!でお馴染みな砂糖さん の外部ライブ
Web プログラマの方にアンケートです。現在仕事で使っている言語と、一番好きな言語を教えてください http://q.hatena.ne.jp/1155781580 という質問があったので、さくっとGreasemonkeyでビジュアライズするスクリプトを書いてみた。 http://la.ma.la/misc/userjs/hateqvisualcell.user.js 横軸に好きな言語で集計 python好きの人はpythonで仕事してるみたいです。 横軸に仕事で使ってる言語で集計 おおむね仕事で使ってる言語が好きみたいですが、JavaScript使いはPHPが好きみたいです。 使ってる言語の方は複数回答なので、PHPプログラマがついでにJavaScriptを書かされてるんじゃないかと予想。 沖縄ではPHPしか使われてないとか、C#使いはC#が好き(一名)とか、母数が少ないのでよくわかりま
Writing User Scripts Mark Pilgrim has given the Greasemonkey community Dive into Greasemonkey, the best reference imaginable. The stuff below might be slightly more up-to-date. You can write your very own shiny user script with just a few steps: 1. Create the file Open a new text file in your favorite editor and throw some javascript in there. Note that there are many good resources available if y
以前にも書いたとおり萌ディタとSleipnirAPIを駆使して、htmlその他ソースファイルをいじると保存のタイミングに合わせてSleipnirのアクティブタブがリロードされるようになっているわけなのですが、近頃Firefox1.5をメインに使うようになってしまったのでFirefoxでも上手く動くようにしようという話。 もちろん自動リロード機能を提供する拡張があるのは知ってるんだけど、編集のタイミングと関係なく1秒ごとにリロードさせたらせわしなくて仕方ない。あくまで保存のタイミングに合わせてブラウザを更新したい。 最初は萌ディタからFirefoxにコマンドラインでブックマークレットを渡すというのをやってみたのだけれど、どうにも手元の環境では上手く動かない。新しいタブでブックマークレットを開いてしまったりする。WSHでFirefoxにフォーカスを合わせてF5を送るとかもやってみたんだけど萌デ
5 月 12 日付追記。 本家 livedoor Reader のほうで、ピンの状態をサーバに保存できるようになった(livedoor Reader 開発日誌:ピンの保存、OPMLインポートの改善、Notifierのバージョンアップ - livedoor Blog(ブログ))ので、このスクリプトは役目を終えました。LDR 開発陣のみなさま GJ!!! livedoor Reader の大きな特徴のひとつである、ピンをつかって記事をまとめ読みする機能は激烈に便利です。しかし、いまのところピンの状態をサーバに保存することができない(参考:livedoor Readerでできないこと - livedoor Reader まとめサイト - livedoor Wiki(ウィキ))ので、ちょっと不都合な面があるのも事実。 たとえば、誤ってブラウザのタブを閉じたり、リロードしたり、はたまたブラウザがクラ
各ページ下部にはてなブックマークのコメントを表示します。 その場でコメントできます。 ダウンロード → (脆弱性が発見されたため、一時公開を停止しています。修正された時点でこの日記のRSSで通知します) コメント無しでもClipボタンは押せます。後からのコメント編集もOK。 動作環境 下記の環境で動作を確認しています。 Firefox 1.5.0.2 Greasemonkey 0.6.4 インストール方法 Firefoxをインストールします。 Greasemonkeyをインストールします。 「2. Install Greasemonkey.」ってとこから。 Firefoxを再起動します。 このリンクを右クリックして「Install User Script(S)...」を選択します。 注意事項 たまにページデザインを乱してしまう場合があります。そのような場合には一時的にGreasemonke
Greasemonkeyでprototype.jsやscript.aculo.usが使えたら便利だろうな、と考えたことのある開発者は少なくないのではないでしょうか。ちょっとそんなアイデアを試してみたことのある方ならわかると思うのですが、Greasemonkeyでそういった外部JavaScriptライブラリは簡単には使えません。案外ハードルが高いです。 Googleで調べていたら、面白い解決方法が見つかったので紹介します。 Loading External JavaScript Libraries in Greasemonkey このブログで解説されているアプローチを用いれば、Greasemonkeyで外部JavaScriptライブラリが使えるようになります。 ポイントは、 外部ライブラリがロードされるまで待ち続ける制御構造 unsafeWindowを経由して外部ライブラリにアクセス といっ
ブックマーク件数取得APIをリリースしました。 - naoyaのはてなダイアリー とのことなので今まではてなexist APIで控えめに使っていたものをいくつか書き直し。 ついでにE4Xにも挑戦。これ確かに楽です。 var method = 'bookmark.getCount'; var params = [ 'http://d.hatena.ne.jp/', 'http://b.hatena.ne.jp/', 'http://www.hatena.ne.jp/' ]; var call = <methodCall> <methodName>{method}</methodName> <params></params> </methodCall> ; for (var i = 0; i < params.length; i++) { call..params.appendChild( <
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く