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

特定のサイトでブラウザがクラッシュする

最近、Flash を使用している特定のサイトでブラウザがクラッシュすることが多い。IE と Firefox で起こり、それぞれ Flash Player のバージョンが違っていても起こる。Adobe には問題として報告されている。 Windows XP/IE 7/9,0,151,0 (Debug player) -----…

教師のための読書の技術

『教師のための読書の技術―思考量を増やす読み方』を読んだ。様々な文章をネタに、香西先生お得意のレトリックが炸裂していて面白い。タイトルの「思考量を増やす読み方」とは、 読んだことを積極的に模倣し、転用する 書いてあることに対して反論する こと…

エクスプローラで選択された 2 つのファイル名を入れ替える JScript を書いた

エクスプローラで選択された 2 つのファイル名を入れ替える JScript を書いた。 使い方 swapNames.bat と swapNames.js を適当なフォルダに置く %HOMEPATH%/SendTo に swapNames.bat のショートカットを置く 名前を入れ替えたい 2 つのファイルを選択して、…

Fiddler で crossdomain.xml を書き換える

データ取得先のサーバに crossdomain.xml が無い、または自ドメインが許可されていない場合、プロキシサーバ (Fiddler) で crossdomain.xml を以下のように書き換えればよい。 <cross-domain-policy> <allow-access-from domain="*" /> </allow-access-from></cross-domain-policy>

Excite 翻訳のページでテキストエリアにフォーカスを当てる Greasemonkey スクリプト

Excite 翻訳のページでテキストエリアにフォーカスを当てる Greasemonkey スクリプト。 ExciteTranslationFocusTextField.user.js // ==UserScript== // @name Excite Translation Focus TextField // @namespace http://bitmap.dyndns.org/ // @description…

キーフレーム毎に同じインスタンス名を付ける JSFL

同一レイヤのシンボルに同じ名前を付ける JSFL を書いた。トゥイーンアニメーションしている MovieClip があるとき、キーフレーム毎に名前を付けるのが面倒なので。 /** * 同一レイヤー上のオブジェクトに同じ名前を付ける */ var instanceName = prompt("se…

JavaScript: The Good Parts のメモ

JavaScript: The Good Parts より、コード断片のメモ。 p.39 Closure 以下のような HTML において、a ~ b をクリックしたときに、0 ~ 3 を出力したい。 <ol> <li>a</li> <li>b</li> <li>c</li> <li>d</li> </ol> 何も考えないで書くとこうなる。nodes には li のコレクションが渡っている。 var addHanld…

検索にマッチしたテキストを取り出す

検索にマッチしたテキストを取り出す (= マッチしなかったテキストを削除) する Vim 的なやりかたがわからなかったので rubydo で。 rubydo VIM::Buffer[1].append(VIM::Buffer[1].count, $_.scan(/regex/).join(" "))

テスト用コードの消し忘れ防止

テスト用のコードを書くときは、末尾に trace を入れておくと消し忘れ防止になる。 hoge();trace("テスト用のコードが含まれています。");

Google の検索結果ページに 10 キーのショートカットをつける Greasemonkey スクリプト

Google の検索結果ページに 10 キーのショートカットをつける Greasemonkey スクリプトを書いた。 GoogleResults10KeyShortcut.user.js // ==UserScript== // @name Google Results 10Key Shortcut // @namespace http://bitmap.dyndns.org/ // @description…

img や br タグを閉じる

Vim

img や br タグを閉じる正規表現メモ。 :%s@\(<img[^>]\+[^/]\)\(>\)@\1 />@g :%s@\(<input[^>]\+[^/]\)\(>\)@\1 />@g :%s@<br>@<br />@g</input[^></img[^>

svn:externals を設定したら branch/tag を作った後に再設定すること

svn:externals の設定があるディレクトリで branch や tag を打っても、svn:externals の設定はよしなに再設定されない (例えば trunk のまま)。これを忘れてハマってしまった。Subversion 1.5 からは svn:externals で相対パスをサポートしている。機会があ…

巨象も踊る

『巨象も踊る』を読んだ。ガースナー凄い、の一言。本人が書いているので多少の誇張はあるだろうが、現実に IBM は再生した。とにかく、ガースナーの意思決定が正確で早いことがわかる。 以下、付箋を貼った箇所のまとめ。 ガースナーの経営哲学 手続きによ…

AS 3.0 版、Date クラスの直感的なインタフェース

flash.utils.Proxy の習作として、以前書いた Date クラスの拡張を ActionScript 3.0 で書いてみた。 var d:SmartDate = new SmartDate(); trace(d); //Mon Sep 1 13:58:51 GMT+0900 2008 trace(d.yesterday()); //Sun Aug 31 13:58:51 GMT+0900 2008 trace(…

ビジネス交渉と意思決定

『ビジネス交渉と意思決定―脱“あいまいさ”の戦略思考』を読んだ。ハウツーものではなく、交渉における理論や概念を解説している。これで、印南一路さんの著書は一通り読んだ (身に付いているかは別として)。 以下、付箋を貼った箇所のまとめ。 BATNA (Best A…

vimrc を即座に開く

Vim

vimrc/gvimrc を即座に開く (元ネタ)。 :e $MYVIMRC :e $MYGVIMRC

smartchr を入れた

Vim

smartchr を入れた。元ネタと同じ設定をしてみた。 autocmd FileType actionscript,javascript inoremap <buffer> <expr> = smartchr#one_of(' = ', ' == ', ' === ', '=') 例えば function hoge() { var foo } foo の直後に = を入力すると function hoge() { var foo= } </expr></buffer>…

バッファ内検索のマッチ数を調べる

Vim

バッファ内検索のマッチ数を調べる方法。 :%s/pattern//n

HTML タグのペアにジャンプする

Vim

xml.vim を入れた。HTML タグのジャンプをするのが目的。 タグにカーソルを移動して \5 でジャンプできる。ただし、ネストが複雑だと少し時間がかかる。

"ライブラリの中でASが書いてあるやつを調べる" を改良した

「ライブラリの中でASが書いてあるやつを調べる」を勝手に改良して、ルートのタイムライン (現在開いているタイムライン) の ActionScript も出力するようにした。 また、出力された ActionScript に余計な空行が入っていた (Windows の Flash CS3) のを削除…

Fiddler を Firefox で使用する 2

以前 Firefox で Fiddler を使う方法をメモしたが、PAC ファイルを使用せずとも設定できた。 Firefox で "オプション" -> "詳細" -> "ネットワーク" タブを開く。 接続設定ウィンドウを開く。 "手動でプロキシを設定する" を選択し、HTTP プロキシに "localh…

窓使いの憂鬱を入れた

窓使いの憂鬱を入れた。AltIme からの乗り換え。 とりあえずやりたいことだけを設定した。アプリケーション毎に設定できるのは素晴らしい。 include "109.mayu" # 109 キーボード設定 keymap Global # CapsLock と 左Ctrl 入れ替え mod control += 英数 key …

静的クラスにイベントを送出させる

静的クラスにイベントを送出させるには、コンポジションを適用して、イベント周りの振る舞いを EventDispatcher インスタンスに委譲すればよい。これは静的クラスに限らず、既存のクラスを拡張する際に使えるテクニック。 以下、サンプルクラス。 package { …

Ajaxアプリケーション & Webセキュリティ

『Ajaxアプリケーション & Webセキュリティ』を読んだ。タイトルに Ajax とあるが、内容は Ajax にフォーカスしているのではなく、浅く広いインターネットセキュリティの解説書となっている (TOC)。 得た知識に、脅威を分類する STRIDE モデルがあった。 STR…

Craft Launch でサウンドの ON/OFF をトグルする

Craft Launch でサウンドの ON/OFF をトグルする方法。 以下の設定で新規コマンドを作成する。 Link: &SubCommand Arg: &Key;173 仮想キー 173(VK_VOLUME_MUTE) を送っている。

IE に表示した Flash でリファラが取れない問題の回避方法

IE 6/7 に表示された Flash で navigateToURL を呼ぶとリファラが取れない (document.referrer === "" //true) 問題の回避方法。 アンカーエレメントをクリックしたことにする アンカーエレメントを作って click イベントを呼べば、リファラを取ることができ…

コンストラクタと初期化メソッドの書き方で悩む

コンストラクタと初期化メソッドの書き方で悩む。パラメータの初期化をコンストラクタで行い、その他の振る舞いを初期化メソッドで行う (下の例で 1 + 2) のがベストか? 1. コンストラクタ内完結型 恐らく最も一般的な書き方。 public function Hoge(p0:int…

パブリッシュ時にブラウザをリロードする

Vim で .as ファイルを保存時に、Flash をパブリッシュしつつブラウザをリロードするようにしてみた。元ネタは ||_koba_|| さんの発言。ちなみに Windows 限定。 手順 JSFL FileSystem API を入れる ブラウザをリロードする JScript を書く JScript を実行す…

JavaScript ライブラリのブラウザ判定ロジックを調べてみた

幾つかの JavaScript ライブラリから、ブラウザ判定部分だけを抜き出してみた。判定基準が userAgent だったり、ブラウザの実装だったり、多種多様で面白い。MooTools はレンダリングエンジンを返す所が他と違う。 Prototype (prototype-1.6.0.2.js) Browser…

複数版 Singleton パターン

リファクタリングを再読していて発見。P.179 に Singleton の複数版パターンがあった。抽象化すると単なる Hash なのだが、何かと使えそう。 以下、簡単なコード。 package { import flash.utils.Dictionary; public class Hoge { private var name:String; …