2007-01-01から1年間の記事一覧

論理演算子で関数の引数を入れ替える

論理演算子(&& と ||)を応用する - てっく煮ブログについて、まとめに違和感があった。というか、そもそも普通は逆にするよなぁと思ったので。 function add(a, b){ addImpl(b && a, b || a); } function add2(a, b){ addImpl(a || b, a && b); } function…

はてなハイク用GreasemonkeyをOpera対応に

g:subtech:id:cho45 さん作の Haiku の Reply を全部展開する Greasemonkey - 冬通りに消え行く制服ガールは✖夢物語にリアルを求めない。 - subtechがよさげだったので、Opera対応にしてみた。 http://ss-o.net/userjs/hatena.haiku.expandrepliestree.user.…

FirefoxとOpera対応のUser Scriptを書くときのunsafeWindow

煤 - Note : 各ユーザスクリプトツールの window、unsafeWindowの件。 今までは、 var w = typeof unsafeWindow != "undefined" ? unsafeWindow : window; こう書いてた。typeofや"undefined"が嫌な感じ。 でも、 var w = this.unsafeWindow || window; これ…

oAutoPagerizeの自動更新始めました

[追記:2008/01/12] 当たり前といえばそうなんですが、自動更新されるのはサーバー上のファイルだけなので、一度ローカルに保存したファイルは更新されません(なので、更新チェックしてくれるツールがほしい!)。説明不足でごめんなさい。 [/追記]oAutoPageriz…

Firebug Command Line APIを弄る($xのコンテキスト)

[追記] id:amachangがもっとスマートな方法を書いてくれました。 Firebug を「カクカク化」して $x の第 2 引数でコンテキストノードを指定できるようにする。 - IT戦記 [/追記]kuさんの$xの第二引数にコンテキストを指定できるようにするハックをという発言…

ObjectからDOM Treeを作る関数

hashを渡すと、その構造をなるべく再現してくれるinnerHTMLに近い直感的なDOM構築関数があったら便利かなーと思って書いてみた。 /* * DOM Tree Builder */ function $T(nodes,node,parentId) { var parent, prefix = parentId ? parentId + '_' : ''; if (!…

oAutoPagerizeのバグ修正と改良、そして今後

修正 2007/12/05 19:58 SITEINFOのマッチングを高速化 一件ずつurlのマッチをする方法の前にurlをまとめた正規表現を作成し、matchを一回実行して対象サイトか否かを判定する処理を加えました。これにより、非対応サイトでの処理時間がそれなりに改善されて…

時間差を設定し、最後にセットした関数だけを実行する

重たい処理があるんだけど、連続して実行したい場合にメイン処理の実行を遅延させて、最後にセットされた処理だけを実行するようなメソッドを書いてみた。例えば、コマンド入力にも使えるかも? 追記:使えそうなケース はてなスターを連打している間はカウン…

JavaScriptで数値を3桁ごとに区切る

3桁ごとに区切る - Higé au lait iandeth. - javascriptで数値をカンマ区切り文字列に変換する関数メモとりあえず書いたの。Array#spliceで後ろから三桁ずつ切る。 Number.prototype.split3=function(){ var arr = String(this).split(''), len = Math.ceil(…

oAutoPagerize

AutoPatchWorkがOpera、Chrome、Safariそれぞれの拡張機能として利用できるようになったので、oAutoPagerizeの更新は停止しました。ご了承ください。id:swdyh氏のAutoPagerize for GreasemonkeyをOperaやSafari,Google Chromeなどで動作するように移植*1しま…

MinibufferベースのTwitter Post&Favorites Command Greasemonkey

MinibufferにTwitterへの投稿コマンドを追加するGreasemonkeyを書きました。 とりあえず動いているので公開してみます。Greasemonkey専用だし、あとでuserscripts.orgに上げるかも。 POST用 http://ss-o.net/userjs/twitcommandminibuffer.user.js http://co…

グッとガッツポーズ...だけでは無理だけど

Sbox Error グッとガッツポーズ...だけでは無理だけど - ロックスターになりたい グッとガッツポーズ...だけでは無理だけど | 3.14 に便乗。 // ==UserScript== // @name AutoPagerize hack // @namespace http://ss-o.net/ // @include * // ==/UserScript=…

さて、XPathはどこで使う?

XPath は jQuery や Prototype.js と競合する技術ではなく、むしろ共存する技術です - IT戦記について軽く。僕はGreasemonkeyを書くときに必ずといっていいほどXPathを使っている。XPathなしでいろんなサイトのHTMLを弄ることは最早苦痛でしかなくて、XPath…

Twitter本の献本いただきました。と大人失格

Caramel-Tea.comのlomoさんが、Caramel-Tea.com。 twitterコミュニケーション・バイブル作者: 菊地芳枝出版社/メーカー: 秀和システム発売日: 2007/11メディア: 単行本購入: 3人 クリック: 155回この商品を含むブログ (41件) を見る 内容は、*1 本書は、「Wh…

Twitter上で色々閲覧できるTwitter MultiPlayer(+Tinyurlの展開)

id:ono_matope作のTwitter_foto_expanderをOpera対応にしつつ、機能拡張をしてみました。Twitterのタイムラインに貼られたURLのうち、 画像リンク はてなフォトライフ Flickrの個別ページ YouTube kichikutter (2007/11/01 23:06追加)(Opera以外では画像だけ…

twitterの画面に「twitter検索」の検索窓(Twitter Search追加)

twitterの画面に「twitter検索」の検索窓をつけるグリースモンキー - hayashihのついつい - はてなグループ::ついったー部を勝手に改良したバージョンです。 Add TwitterKensaku for Greasemonkey サイドバーに自然すぎるほどにTwitter検索フォームが表示さ…

はてなプラネタリウム

Array.prototype.eachLaterのサンプルとして書いてみたんだけど、結構いい感じになった。 はてなスターのあるページで、下記のBookmarkletを実行してみてください。 javascript:(function(){var s=document.createElement("script");s.src="http://ss-o.net/…

Array.prototype.eachLater

LDRで使われている、Function.prototype.later(via *「ふっかつのじゅもんがちがいます。」)にインスパイアされて、Array.prototype.eachLaterを書いてみました。 Array.prototype.eachLater = function(ms,call,callback,ob){ var self = this; var obj = …

ページ内のはてなスターをまとめて消すBookmarklet

☆を削除できる機能を追加しました - はてなスター日記の件。 やっつけなので、prototype.js依存。自分のidは手入力という仕様。 javascript:(function(User){Hatena.Star.EntryLoader.entries.each(function(entry){entry.stars.each(function(s){if(s.name=…

OperaのユーザーJavaScriptをFirefoxのGreasemonkeyと同じタイミングで実行する

詳しい話は Opera のユーザーJavaScript は「.js」か「.user.js」かで実行されるタイミングが違う - m2O - チーム俺等におまかせするとして、結論を書くと。 OperaのUserJSはファイル名をuser.jsではなく、.jsにする DOMContentLoadedにaddEventListenerする…

コメントアウトの書き方(オンオフ切り替え)

縁側でお茶を参考に、少し改良してみた。 /* (function(){})(); //コメントアウトされたコード /*/ (function(){})(); //*/ //* (function(){})(); /*/ (function(){})(); //コメントアウトされたコード //*/ 先頭の/を1個or2個に切り替えることで、コメント…

AutoPagerize_OperaのFORCE_TARGET_WINDOW

ちょくちょく話題に上がっている AutoPagerizeのFORCE_TARGET_WINDOW - 準二級.jpの件。 私が手を入れたAutoPagerize_Operaでは、新たに追加された要素内のリンクだけ別タブで開くようにしました。 当然、追加された要素だけ処理するほうが全要素を走査する…

リンク先画像をそのリンク内に表示してしまうブックマークレット

ありがちなネタだけど、一応クロスブラウザで、なるべくスッキリ書いたつもり。 javascript:(function(a){for(var i in a){if(String(a[i]).match(/\.(jpe?g|png|gif)$/i))a[i].appendChild(document.createElement('img')).src=a[i].href;}})(document.getE…

TwitterPostAnywhreを新レイアウト対応&Tinyurl/Reblogの設定機能追加

TwitterPostAnywhre - 0xFFを更新しました。 Twitter Post Anywhere for Greasemonkey (今までReblog版を分けていましたが、コマンドから設定できるので統合しました。お手数ですが、Reblog版を入れている方はReblog版をアンインストールしてからインストー…

ページ内のJavaScriptを表示するJavaScript

Tweener Example(XHTML)用にサクッと書いてみた。 既出ネタかもしれないけど。 <script type="text/javascript"> //

JSTweenerを触ってみたけどXHTMLで動かなくて手を入れてたら遊んでしまった結果

はい、やや長いタイトルの通りで半分ネタです。 JSTweener - JavaScript でモーショントゥイーンするライブラリ - 2nd lifeを弄ってみました。 こんな感じになりました。 Tweener Example(XHTML) http://ss-o.net/jstweener/js/JSTweener.js (そういえばSafa…

tinyurlapiが落ちている件のとりあえず対応

TwitterPostAnywhreには、Tinyurlの展開機能をつけてあるのですが、これにはremysharp.comで提供されているAPIを使用しています。 しかし、 http://remysharp.com/tinyurlapi がサーバーごと落ちてしまっているようで、展開に見事に失敗しています。復活した…

はてなスターの誤送信防止にConfirm(確認フォーム)を出すGreasemonkey Script

はてなスターを誤って押してしまう件の防止用です。デフォルトでは、はてなドメイン上でしか動作しません。 http://ss-o.net/userjs/confirmhatenastar.user.js Opera、Firefox対応。まだ確認してないけど、Safariでも問題ないはず。 以下、動作説明だけど、…

Twitterの罠

思い出せるだけ書き出してみる。 コメントに投稿されたモノを追記。あと、[]で囲ったものは私の超推理なので、信用はしないでください。 追記:2007/10/30 1.2にfollowする裏技を追記 困ってるの 投稿できない発言がある それ、Twitterコマンド。(ついったー…

Twitterのhomeで11ページに行くとolderへのリンクがなくなっている件について

現状、Twitterでは11ページ以降へのリンクがないため、それ以前のログを閲覧することが難しくなっています。 http://twitter.com/home?page=11のページ。リンクはないものの、直接page=13などを指定すると基本的には*1表示できるので、ログを読めないことは…