タグ

ブックマーク / la.ma.la (4)

  • 最速インターフェース研究会 :: livedoor Readerに何かくっつけるGreasemonkeyの書き方

    何かくっつける系のGreasemonkeyが作りやすくなってます。 エントリごとに表示投稿日時が出てる箇所に追加されます。 window.entry_widgets.add("name", generator , "description"); generatorはfunction(feed,item){ ... }のように無名関数で記述できます。feedはフィードに関する情報、itemはその記事のリンクや記事文が取れます。データ構造はまるごとPerlに書いてあります。 descriptionは省略可能ですが、将来的に何か気の利いたUIでも作ろうかと考えていたりするので入れておくと良いかも知れません。今のところtitle属性に使うようになってます。Greasemonkeyだと日語が通らないのでエスケープする必要があります。 エントリにくっつけるサンプルエントリごとにlivedoorクリ

  • 最速インターフェース研究会 :: JavaScriptにおけるdeep clone

    http://blog.livedoor.jp/dankogai/archives/50957890.html まず、Object.prototypeにメソッドを生やしてしまうとfor inでキーを列挙するときにいちいちhasOwnPropertyを使わないといけなくなるので普通は使いません。影響が大きすぎるので、よっぽど変態的なライブラリじゃないと使わない。他のライブラリと組み合わせるとほぼ確実に問題が起きる。それから、deep_cloneが欲しい場合はJSONを作ってevalすればよい。パフォーマンスを気にする場合とか、浅いコピーが必要な場合はそれなりに工夫する必要があるけど。 で、JSONにするのにFirefoxだとtoSourceというのが使える。unevalというラッパーがあって、これだとnullでも平気。 http://subtech.g.hatena.ne.jp/cho45/

  • 最速インターフェース研究会 :: Sledge::Plugin::DebugTemplateで開発効率が135倍になるデモ

    フォームポストでテンプレートを送りつけると、それを使ってページを表示してくれるSledge::Plugin::DebugTemplateというのを作った。これによりJavaScriptCSSのみならず、HTMLテンプレートすらローカルファイルと差し替えて開発ができるようになった。 ソース(nopasteが24時間で消えるの知らんかった) http://rafb.net/paste/results/Ohpek040.html http://la.ma.la/misc/src/DebugTemplate.pm Winkで作ったデモ http://la.ma.la/misc/demo/debug_template.htm ブラウザを制御してページの内容をダミーのフォームに置き換えて現在のバッファの内容をペーストしてフォームポストしています。どちらかというとこっちの方が肝で、このデモは萌ディタと

    serian
    serian 2006/10/03
    「これによりJavaScriptやCSSのみならず、HTMLテンプレートすらローカルファイルと差し替えて開発ができる」
  • 最速インターフェース研究会 :: Firefoxの拡張MozLabの中に含まれるMozReplがヤバすぎる件について

    MozLabという拡張を昨日知ったのですが http://dev.hyperstruct.net/trac/mozlab この中に含まれているMozReplというのがヤバい。Firefoxにtelnet接続できるようになる。 とりあえずRubyで書いた簡単なサンプル、今見ているページをリロードするだけ。 require 'net/telnet' telnet = Net::Telnet.new({ "Host" => "localhost", "Port" => 4242 }){|c| print c} telnet.puts("content.location.reload(true)") telnet.close ひたすら自分が見ているURLとページタイトルを記録する系とか簡単に作れそう。 今見ているページのURLとタイトルを取得するサンプル。 require 'net/telnet'

    serian
    serian 2006/09/28
    Fxにtelnet接続して操作できる。feedが来たらページを開くとかできる??
  • 1