<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>ykskはかしゆかのアナグラムではありません。



♥Tumblr
Twitter
煤 - Note
</description><title>less</title><generator>Tumblr (3.0; @carbonless)</generator><link>http://less.carbonfairy.org/</link><item><title>Firefoxを複数プロファイル同時起動</title><description>&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4400263723/"&gt;&lt;img src="http://farm5.static.flickr.com/4042/4400263723_8f64a82aec_o.png" alt="Firefox Tumblr Profile.app"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Firefoxを別プロファイルで同時に立ち上げたい。Macの場合はコンソールから起動します。「Tumblr」プロファイルで起動したい時はTerminal.appで&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/Applications/Firefox.app/Contents/MacOS/firefox-bin -P Tumblr &amp; exit 0
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;のように実行する感じ（Firefox 3.6時点）。何度も使いそうな時はAutomatorの「Run Shell Script」アクションを使ってそのままアプリにすると便利です。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4401055370/"&gt;&lt;img src="http://farm5.static.flickr.com/4050/4401055370_d3ed57846e_o.png" alt="Firefox Tumblr Profile Automator"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Automatorすごい。&lt;/p&gt;

&lt;p&gt;開発中にTumblrしたくなっても安心＼(^o^)／&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/421779017</link><guid>http://less.carbonfairy.org/post/421779017</guid><pubDate>Tue, 02 Mar 2010 18:56:12 +0900</pubDate><category>firefox</category><category>tumblr</category><category>osx</category><category>software</category><category>automator</category></item><item><title>ドコモの絵文字バイナリを画像化するメソッドと編集フォームを作るクラス。

RegExp.$1は非推奨です。すみません。</title><description>&lt;p&gt;ドコモの絵文字バイナリを画像化するメソッドと編集フォームを作るクラス。&lt;/p&gt;

&lt;script src="http://gist.github.com/315638.js"&gt;&lt;/script&gt;&lt;p&gt;&lt;code&gt;RegExp.$1&lt;/code&gt;は非推奨です。すみません。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/413101792</link><guid>http://less.carbonfairy.org/post/413101792</guid><pubDate>Fri, 26 Feb 2010 20:18:00 +0900</pubDate><category>javascript</category><category>emoji</category></item><item><title>arguments</title><description>&lt;p&gt;&lt;a href="http://subtech.g.hatena.ne.jp/cho45/20100221/1266680746"&gt;JavaScript、仮引数で宣言した変数へ代入したあとの arguments の挙動 - 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - subtech&lt;/a&gt;より。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;さて問題です。以下のコードで alert されるのは何でしょう!!&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;  (function (x) {
      x = 2;
      alert(arguments[0]);
  })(1);
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;p&gt;答えは2。この挙動については&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;(function(x) {
    arguments[0] = 2;
    alert(x); // 2
})(1);
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;のようなことが出来るので不思議に思わなかった（いかにも裏にオブジェクトがある風）のだけど、むしろ&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;(function (x) {
    x = 2;
    alert(arguments[0]);
})(); // 仮引数なし
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;の場合の結果が&lt;code&gt;undefined&lt;/code&gt;なのにびびった。仮引数が渡されなかった場合はバインドされない。でも&lt;code&gt;undefined&lt;/code&gt;を明示的に渡した場合はされる。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;(function (x) {
    x = 2;
    alert(arguments[0]); // 2
})(undefined);
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://less.carbonfairy.org/post/250546504/undefined"&gt;昔そのことについて調べた&lt;/a&gt;んだった・・。arguments面白い。手元にサイ本がないのが悔やまれる。&lt;/p&gt;

&lt;p&gt;ついでに&lt;a href="http://less.carbonfairy.org/post/171119027/ie"&gt;&lt;code&gt;arguments.callee&lt;/code&gt;はブラウザ差異があるよ&lt;/a&gt;。&lt;/p&gt;

&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://javascript.ru/blog/Dmitry-A.-Soshnikov/The-quiz"&gt;http://javascript.ru/blog/Dmitry-A.-Soshnikov/The-quiz&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;JSのクイズ。おもしろかった。6問不正解（#3、#4、#5、#6、#7、#9）。&lt;a href="https://developer.mozilla.org/ja/Core_JavaScript_1.5_Reference/Operators/Special_Operators/Comma_Operator"&gt;カンマ演算子&lt;/a&gt;を理解していないことが分かった。発見があるのは楽しい。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;(foo, bar) === bar // 常に後者を返す
&lt;/code&gt;&lt;/pre&gt;</description><link>http://less.carbonfairy.org/post/410272327</link><guid>http://less.carbonfairy.org/post/410272327</guid><pubDate>Thu, 25 Feb 2010 11:49:00 +0900</pubDate><category>javascript</category></item><item><title>Tumblrで誰に多くリブログされたかをグラフ化してみた</title><description>&lt;p&gt;以前Twitterで&lt;q&gt;&lt;a href="http://twitter.com/yksk/status/7092899753"&gt;tumblrのアクティビティをメールに流しておくとスレッド表示で誰にどれくらいリブログされてるのかが分かる。&lt;/a&gt;&lt;/q&gt;とつぶやいたのですが、スレッド表示だと感覚でしか分からないので&lt;a href="http://yksk.tumblr.com/"&gt;yksk.tumblr.com&lt;/a&gt;の被リブログ数を実際に集計してグラフにしてみました。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4351781244/"&gt;&lt;img src="http://farm5.static.flickr.com/4011/4351781244_98f134aa43_o.png" alt="Reblogged from 2009-12-21 to 2010-02-13"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;自分の場合少数の近い人がリブログしまくっていて、ほとんどは1人1リブログ。もう少しきれいなロングテールになるかと思っていたけど、だいぶ極端な結果になりました。誰に多くリブログされたかとかは伏せておきます・・。もう少し安定してくると面白いかな。&lt;/p&gt;

&lt;p&gt;グラフの作り方。MacなのでMacです。流れは&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Tumblrからリブログ通知メールを送るように設定&lt;/li&gt;
&lt;li&gt;Mail.appで受信。ルールからAppleScript（から実行したRuby）を走らせてデータを集計&lt;/li&gt;
&lt;li&gt;作ったデータから&lt;a href="http://code.google.com/intl/ja/apis/chart/docs/making_charts.html"&gt;Google Charts API&lt;/a&gt;を使ってグラフを作成&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;です。&lt;/p&gt;

&lt;p&gt;まず&lt;a href="http://www.tumblr.com/preferences"&gt;Tumblrの設定画面&lt;/a&gt;を開き、Email notificationsで集計したいTumblelogのリブログにチェックを入れてメールを受け取るようにします。メールがある程度溜まらないとグラフにならないよ。&lt;/p&gt;

&lt;p&gt;グラフを作るスクリプトを準備。以下のようなスクリプトを使いました。&lt;/p&gt;

&lt;script src="http://gist.github.com/302768.js"&gt;&lt;/script&gt;&lt;p&gt;全部同じフォルダへ。このAppleScriptはいろんなメール処理の雛形に出来そう。おまけとして受信時にGrowlで通知を出すようにしました。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4351273967/"&gt;&lt;img src="http://farm5.static.flickr.com/4022/4351273967_3674acfc35.jpg" alt="Tumblr Reblogged Notifier"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;どばーー。&lt;/p&gt;

&lt;p&gt;準備が出来たらMail.appの設定をします。Tumblrからリブログの通知メールを受信したら内容をAppleScriptに渡す（ついでに既読にする）ルールを追加しました。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4351166225/"&gt;&lt;img src="http://farm3.static.flickr.com/2742/4351166225_8a9bc4799c_o.png" alt="Mail.app Tumblr Stats Rule"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;こんな感じ。&lt;/p&gt;

&lt;p&gt;これでメールの受信時にリブログ数がデータベースに集計されるようになりました。あとはグラフを作りたい時にcreate_chart.rbを実行すればグラフ画像が生成されます。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/385861284</link><guid>http://less.carbonfairy.org/post/385861284</guid><pubDate>Sat, 13 Feb 2010 04:10:00 +0900</pubDate><category>tumblr</category><category>stats</category><category>ruby</category><category>applescript</category><category>mail.app</category><category>osx</category></item><item><title>iTunesにFLVをインポートするサービス</title><description>&lt;p&gt;Macの話。iTunesでFLVファイルを管理しようと思っても普通はFLVファイルをiTunesに追加することは出来ませんが、動画のファイルタイプを&lt;code&gt;MooV&lt;/code&gt;に書き換えるとQuickTimeファイルとして扱われ、追加出来るようになります。&lt;/p&gt;

&lt;p&gt;Automatorで簡単に変換サービスを作ることが出来ます。予め&lt;a href="http://perian.org/"&gt;Perian&lt;/a&gt;を入れてQuickTimeでFLVを再生出来るようにしておきましょう。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4342630503/"&gt;&lt;img src="http://farm3.static.flickr.com/2689/4342630503_10bf9f2e4e_o.png" alt="Import Flash Video to iTunes"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Automatorを開いてテンプレートからサービスを選ぶ&lt;/li&gt;
&lt;li&gt;画像のように組み立てる&lt;/li&gt;
&lt;li&gt;適当な名前を付けて保存&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;保存するとFinderのファイル、フォルダのコンテキストメニューに項目が追加されます。項目を選択するとファイルタイプを&lt;code&gt;MooV&lt;/code&gt;に書き換えてiTunesに送るようになっています。テンプレートの種類を変えればドロップレットやフォルダアクションも作れますね。&lt;/p&gt;

&lt;p&gt;スクリプトはこちら。&lt;/p&gt;

&lt;script src="http://gist.github.com/299086.js?file=gistfile1.scpt"&gt;&lt;/script&gt;</description><link>http://less.carbonfairy.org/post/379799318</link><guid>http://less.carbonfairy.org/post/379799318</guid><pubDate>Tue, 09 Feb 2010 20:06:00 +0900</pubDate><category>osx</category><category>automator</category><category>itunes</category><category>flv</category><category>video</category></item><item><title>10020801</title><description>&lt;img src="http://29.media.tumblr.com/tumblr_kxho52P0gE1qztjyuo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;10020801&lt;/b&gt;&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/376635769</link><guid>http://less.carbonfairy.org/post/376635769</guid><pubDate>Mon, 08 Feb 2010 05:41:28 +0900</pubDate></item><item><title>Photo</title><description>&lt;img src="http://27.media.tumblr.com/tumblr_kxcy7dVgQ31qztjyuo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;</description><link>http://less.carbonfairy.org/post/371996352</link><guid>http://less.carbonfairy.org/post/371996352</guid><pubDate>Fri, 05 Feb 2010 16:30:48 +0900</pubDate><category>cat</category></item><item><title>ファイル整理期。


画像: Tumblr（アップロード後Tumblr Backupで再びローカルへ）
コード: GitHub

写真ライブラリ: 外付けHDD
絵、テキストとか:...</title><description>&lt;p&gt;ファイル整理期。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;画像: Tumblr（アップロード後&lt;a href="http://staff.tumblr.com/post/286303145/tumblr-backup-mac-beta"&gt;Tumblr Backup&lt;/a&gt;で再びローカルへ）&lt;/li&gt;
&lt;li&gt;コード: &lt;a href="https://github.com/"&gt;GitHub&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;写真ライブラリ: 外付けHDD&lt;/li&gt;
&lt;li&gt;絵、テキストとか: &lt;a href="https://www.dropbox.com/"&gt;Dropbox&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Tumblrについてはフォルダアクションを使って特定のフォルダに入れたら自動的にTumblrに上がるようにしてる。毎日アップロード制限に引っかかる。後で詳しく書こう。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/364836715</link><guid>http://less.carbonfairy.org/post/364836715</guid><pubDate>Mon, 01 Feb 2010 17:57:00 +0900</pubDate><category>tumblr</category></item><item><title>リブログした際にローディング画像を表示するようにしてみた。



あとDOMNodeInsertedの範囲を狭めて少し速くした。


Tumblr Dashboard Quick...</title><description>&lt;p&gt;リブログした際にローディング画像を表示するようにしてみた。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4289626892/"&gt;&lt;img src="http://farm5.static.flickr.com/4023/4289626892_04458bd6ec_o.png" alt="Tumblr Dashboard Quick Reblog loading animation"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;あと&lt;code&gt;DOMNodeInserted&lt;/code&gt;の範囲を狭めて少し速くした。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://userscripts.org/scripts/show/59330"&gt;Tumblr Dashboard Quick Reblog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/yoko/userscripts/blob/master/tumblr_dashboard_quick_reblog.user.js?"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><link>http://less.carbonfairy.org/post/343579145</link><guid>http://less.carbonfairy.org/post/343579145</guid><pubDate>Wed, 20 Jan 2010 11:20:00 +0900</pubDate><category>quickreblog</category><category>greasemonkey</category><category>javascript</category><category>tumblr</category><category>greasekit</category><category>safari</category></item><item><title>Tumblr Dashboard Quick Reblogをendless scrollingに対応</title><description>&lt;p&gt;&lt;a href="http://less.carbonfairy.org/post/207603949/safari-greasekit-reblogcommand"&gt;Tumblr Dashboard Quick Reblog&lt;/a&gt;にendless scrollingのサポートを追加しました。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://userscripts.org/scripts/show/59330"&gt;Tumblr Dashboard Quick Reblog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/yoko/userscripts/blob/master/tumblr_dashboard_quick_reblog.user.js?"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://www.tumblr.com/preferences"&gt;TumblrのPreferences&lt;/a&gt;から「Enable endless scrolling」していれば&lt;a href="http://d.hatena.ne.jp/os0x/20071202/oautopagerize"&gt;oAutoPagerize&lt;/a&gt;を入れていなくてもボタンが出ます。&lt;kbd&gt;t&lt;/kbd&gt;キーボードショートカットについては&lt;a href="http://d.hatena.ne.jp/os0x/20080110/ldrize_minibuffer"&gt;Minibuffer&lt;/a&gt;を入れていないと動きません。サポートしたいけど現在のアイテムを取るのが難しいのでどうしようか考え中。&lt;/p&gt;

&lt;p&gt;あと、&lt;em&gt;Greasemonkeyでは動きません&lt;/em&gt;。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/340631506</link><guid>http://less.carbonfairy.org/post/340631506</guid><pubDate>Mon, 18 Jan 2010 17:54:00 +0900</pubDate><category>greasemonkey</category><category>quickreblog</category><category>tumblr</category></item><item><title>足がやわらかそうに見えないー。</title><description>&lt;p&gt;足がやわらかそうに見えないー。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/336496618</link><guid>http://less.carbonfairy.org/post/336496618</guid><pubDate>Sat, 16 Jan 2010 09:21:00 +0900</pubDate></item><item><title>10011601</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_kwb5v3WNMz1qztjyuo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;10011601&lt;/b&gt;&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/336306941</link><guid>http://less.carbonfairy.org/post/336306941</guid><pubDate>Sat, 16 Jan 2010 06:46:08 +0900</pubDate></item><item><title>Skip RedirectorのSITEINFOフォーマット</title><description>&lt;p&gt;少しずつパラメーターが増えているので組み立て方をまとめ。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://wedata.net/databases/Redirector/items"&gt;Item - データベース: Redirector - wedata&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;var&gt;url&lt;/var&gt;&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;必須&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;スキップするURLの正規表現を指定します。&lt;code&gt;()&lt;/code&gt;でグルーピングすると&lt;var&gt;replace_url&lt;/var&gt;で後方参照を利用出来ます。&lt;/p&gt;

&lt;h3&gt;&lt;var&gt;link&lt;/var&gt;&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;var&gt;replace_url&lt;/var&gt;を指定しない場合必須&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ページのa要素、input、button要素を始めとするクリックイベントを付加された要素をXPathで指定します。指定された要素を自動的にクリック（クリックイベントをトリガー）して遷移します。&lt;/p&gt;

&lt;h3&gt;&lt;var&gt;replace_url&lt;/var&gt;&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;var&gt;link&lt;/var&gt;を指定しない場合必須&lt;/li&gt;
&lt;li&gt;両方指定されていた場合は&lt;var&gt;replace_url&lt;/var&gt;を利用&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;httpまたはhttpsで始まるURLを指定します。ページの内容はチェックせず、URLのみで遷移します。&lt;var&gt;url&lt;/var&gt;で指定した後方参照を利用することが出来ます。&lt;/p&gt;

&lt;h3&gt;&lt;var&gt;site_url&lt;/var&gt;&lt;/h3&gt;

&lt;p&gt;リダイレクトページのサイトのURLを指定します。Chrome拡張で対応ページのリストを作る際のリンクなどに利用されます。&lt;/p&gt;

&lt;h3&gt;&lt;var&gt;fixme&lt;/var&gt;&lt;/h3&gt;

&lt;p&gt;指定が間違っていたり既に古くなっていて動かない、調査が必要な定義に対して&lt;code&gt;1&lt;/code&gt;を設定するとその定義は利用されなくなります。誰かが原因を調べます（たぶん）。サイトの構造が変わるなどして、もはや対応出来ないことが確認された場合、定義は消去されます。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/331739866</link><guid>http://less.carbonfairy.org/post/331739866</guid><pubDate>Wed, 13 Jan 2010 13:10:00 +0900</pubDate><category>greasemonkey</category><category>chromeextension</category><category>skipredirector</category></item><item><title>Chrome拡張版のSkip Redirector作りました</title><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/extensions/detail/khepipohfophddcdkcebejoglgfdibja"&gt;Google Chrome Extensions: Skip Redirector&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;機能的には&lt;a href="http://userscripts.org/scripts/show/57806"&gt;Greasemonkey版&lt;/a&gt;と全く同じです。ソースは&lt;a href="http://github.com/yoko/skip-redirector-chrome-extension"&gt;GitHubに置きました&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;クロスドメイン越えるためと、キャッシュを保持するために拡張にしました。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;permissionsでwedataを許可&lt;/li&gt;
&lt;li&gt;content_scriptからbackgroundにアクセス&lt;/li&gt;
&lt;li&gt;backgroundで通信、レスポンスをキャッシュしつつcontent_scriptにコールバック&lt;/li&gt;
&lt;li&gt;content_scriptでリダイレクト判定&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;きれいに分けて書けた:)&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/320654369</link><guid>http://less.carbonfairy.org/post/320654369</guid><pubDate>Thu, 07 Jan 2010 10:27:00 +0900</pubDate><category>skipredirector</category><category>greasemonkey</category><category>javascript</category><category>chromeextension</category></item><item><title>iframeの挙動メモ</title><description>&lt;ul&gt;
&lt;li&gt;IEはiframeのsrcが空の場合でも遅延するような挙動。直後だと内容の取得が出来ない。Safari、Fxでは問題ない。動作的は同期扱いなので強制的に非同期にするといい？&lt;/li&gt;
&lt;li&gt;IEで直後に&lt;code&gt;iframe.contentWindow.document.body&lt;/code&gt;とかするとブラクラ&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;iframe内に書き込む処理が非同期だと上手く行かないようなので、とりあえず確実に取得することは保証しないことにした＞＜&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;var doc = iframe.contentWindow.document;
doc.open();
doc.write('foo');
doc.close();
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</description><link>http://less.carbonfairy.org/post/301105200</link><guid>http://less.carbonfairy.org/post/301105200</guid><pubDate>Sat, 26 Dec 2009 18:35:00 +0900</pubDate><category>javascript</category><category>ie</category><category>iframe</category></item><item><title>VMWare Fusionで起動時に共有フォルダのショートカットが作られるのを防止する</title><description>&lt;p&gt;VMWare Fusion 3の共有フォルダのショートカットは消しても再起動すると復活する。デスクトップに何も置きたくないので設定で無効にした。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://communities.vmware.com/thread/178942"&gt;http://communities.vmware.com/thread/178942&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;仮想OSをシャットダウン、VMWareを終了&lt;/li&gt;
&lt;li&gt;仮想ファイル（~/Documents/Virtual Machines/Windows XP Home Edition.vmwarevmなど）のパッケージを開く&lt;/li&gt;
&lt;li&gt;中に入っている.vmxファイル（例えばWindows XP Home Edition.vmx）をTextEditなどで開く&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;hgfs.linkRootShare = "TRUE"&lt;/code&gt;を検索。&lt;code&gt;hgfs.linkRootShare = "FALSE"&lt;/code&gt;に書き換えて保存&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;再び起動すればもう作られなくなっているはず。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/294236379</link><guid>http://less.carbonfairy.org/post/294236379</guid><pubDate>Tue, 22 Dec 2009 10:52:00 +0900</pubDate><category>vmware</category><category>windows</category><category>osx</category><category>software</category></item><item><title>QUnit TextMateバンドルをCommonJS APIに準拠したQUnitに対応させた</title><description>&lt;p&gt;&lt;a href="http://github.com/jquery/qunit/commit/e88049a0ddb26c244d9359c9b614cf70c877f5e4"&gt;最新版のQUnit&lt;/a&gt;が&lt;a href="http://wiki.commonjs.org/wiki/Unit_Testing"&gt;CommonJSのAPI&lt;/a&gt;（初耳！）に対応したようなので、バンドルも合わせて変更しました。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/yoko/javascript-qunit-tmbundle"&gt;JavaScript QUnit.tmbundle&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;名前が変更されたメソッド（旧名はエイリアスとして残る）:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;equals&lt;/code&gt; → &lt;code&gt;equal&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;same&lt;/code&gt; → &lt;code&gt;deepEqual&lt;/code&gt; （&lt;code&gt;===&lt;/code&gt;比較は&lt;code&gt;strictEqual&lt;/code&gt;へ）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;追加されたメソッド:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;notEqual&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;notDeepEqual&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;strictEqual&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;notStrictEqual&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;バンドルでも一応&lt;code&gt;equals&lt;/code&gt;、&lt;code&gt;same&lt;/code&gt;を残しました。非推奨のコメント付き。否定系のメソッドが入って分かりやすくなった気がしますね。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4183931566/"&gt;&lt;img src="http://farm3.static.flickr.com/2755/4183931566_b988eac73c_o.png" alt=""/&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/282718389</link><guid>http://less.carbonfairy.org/post/282718389</guid><pubDate>Mon, 14 Dec 2009 13:37:00 +0900</pubDate><category>qunit</category><category>jquery</category><category>textmate</category><category>bundle</category><category>osx</category><category>software</category><category>testing</category></item><item><title>BathyScapheからTumblrに投稿するAppleScript</title><description>&lt;p&gt;試しに書いてみた。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/clothfairy/4174344758/"&gt;&lt;img src="http://farm3.static.flickr.com/2787/4174344758_80ae0de227_o.png" alt="Post to Tumblr BathyScaphe AppleScript"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;BathyScapheのスレで選択した文字列をTumblrのブックマークレットに送ります。3ペインモード（ブラウザを垂直方向に分割）で実行すると止まります。&lt;a href="http://bathyscaphe.sourceforge.jp/cgi-bin/wiki.cgi?p=AppleScript+%BC%AD%BD%F1#P8"&gt;BathyScapheの仕様&lt;/a&gt;で情報が取れないっぽい。~/Library/Application Support/BathyScaphe/Scriptsに入れると動きます。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://gist.github.com/253316"&gt;http://gist.github.com/253316&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;script src="http://gist.github.com/253316.js?file=Post+to+Tumblr.scpt"&gt;&lt;/script&gt;&lt;p&gt;Gist色付かねー。&lt;/p&gt;

&lt;p&gt;AppleScriptはスコープの扱いが変わってるのかな。作法が謎だけど少し分かって楽しくなった。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/277517871</link><guid>http://less.carbonfairy.org/post/277517871</guid><pubDate>Thu, 10 Dec 2009 22:27:00 +0900</pubDate><category>applescript</category><category>tumblr</category><category>bathyscaphe</category><category>2ch</category></item><item><title>iviewは画像リダイレクトをサポートしない</title><description>&lt;p&gt;&lt;a href="http://wedata.net/databases/iview/items"&gt;iviewのSITEINFO&lt;/a&gt;に&lt;a href="http://www.age2.tv/"&gt;age2&lt;/a&gt;を追加した。&lt;/p&gt;

&lt;p&gt;iviewではSITEINFOで指定する&lt;code&gt;imageSource&lt;/code&gt;と&lt;code&gt;imageSourceForReblog&lt;/code&gt;のURLがリダイレクトする場合、上手く画像を取得出来ないので注意。「302 found」のように表示される。今回はURLがページから組み立てられたので&lt;code&gt;concat&lt;/code&gt;で合成したけど、ランダムだったりする場合は困りそうだ。&lt;/p&gt;

&lt;p&gt;この記事のiviewのバージョンは1.1.3.0.20090714です。&lt;/p&gt;</description><link>http://less.carbonfairy.org/post/268636333</link><guid>http://less.carbonfairy.org/post/268636333</guid><pubDate>Fri, 04 Dec 2009 14:01:00 +0900</pubDate><category>iview</category><category>siteinfo</category></item><item><title>関数の最後のパラメータにundefinedが指定されているかを判別する</title><description>&lt;p&gt;全部で判別は出来なそうだけど、最後のパラメータに関しては&lt;code&gt;arguments&lt;/code&gt;を使うと判定出来るようだ。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;var foo = function(arg) {
    console.log(
        typeof arg == 'undefined',
        arguments.length
    );
};

foo(); // true, 0
foo(undefined) // true, 1
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;明示的に&lt;code&gt;undefined&lt;/code&gt;を指定した場合は&lt;code&gt;arguments&lt;/code&gt;に入る。&lt;/p&gt;

&lt;p&gt;jQueryっぽくゲッターとセッターを1つの関数に書く時、普通は削除フラグに&lt;code&gt;null&lt;/code&gt;を使う。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;attr('a', 1);
attr('a'); // 1

attr('a', null);
attr('a') // undefined
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;みたいな。&lt;code&gt;JSON.stringify&lt;/code&gt;のように&lt;code&gt;undefined&lt;/code&gt;で値を削除するものと組み合わせる場合、関数もそれに合わせて&lt;code&gt;undefined&lt;/code&gt;で削除したかったので調べました。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;attr('a', { a: 'foo' });
attr('a').a; // "foo"

attr('a', { a: undefined });
attr('a').a; // undefined

attr('a', undefined);
attr('a'); // undefined
&lt;/code&gt;&lt;/pre&gt;</description><link>http://less.carbonfairy.org/post/250546504</link><guid>http://less.carbonfairy.org/post/250546504</guid><pubDate>Fri, 20 Nov 2009 15:38:02 +0900</pubDate><category>javascript</category></item></channel></rss>
