2007-07-01から1ヶ月間の記事一覧

ATOK の推測候補モードが便利

ATOK の推測候補モードが便利。有効にすると、入力中の文字をインクリメンタル補完してくれる。無効状態でもタブを押せば補完できるが、インクリメンタルの方が圧倒的に快適。 推測候補モードを有効にするには「CTRL-変換」を押す (起動時に有効にすることも…

シングルトンをグローバル変数の代わりにしない

現在作業中の Flash 案件で、画面上にユニークなものを全てシングルトンにしていたら、案の定「これはひどい」コードになりつつある。免罪符として、コメントに「これはひどい」と記しておいた。結論を言うと、意思決定力が弱いのに、設計しながらコーディン…

ノーマルモードに戻るキーの流派

Vim

ノーマルモードに戻る方法はいくつかある。 ESC CTRL-[ CTRL-C 自分は CTRL-[ 派。ホームポジションで押せるし、左小指と右小指で小気味がよいから。ただ、焦っているときは ESC を連打する。

ウィンドウを最大化して起動する

Vim

Vim 起動時に、儀式的な行動としてウィンドウを最大化している。 :simalt ~x これを毎回入力するのが面倒なので、F12 にマップしたのだが、調べてみると、起動時に最大化する設定があるようだ。 au GUIEnter * simalt ~x vimrc に追加しておこう。

Realforce を買った

会社用に REALFORCE91UBK を買った。タイピングが非常に心地よく、いくら打っても疲れない。……気がする。

レイヤーを追加して this.stop(); を書く JSFL

デザイナから渡された .fla ファイルに「ラベルはついているが、stop() が書かれていない MovieClip」が大量にあった。これらの MovieClip をステージに配置した途端、アニメーションのループが始まってしまう。なんとしても、stop() を入れたい。 そこで、…

Reference 型が欲しい

Reference 型を使いたいシーンが多々ある。例えば以下のようなコード。 var hoge:Hoge = new Hoge(); var task:HogeInitTask = new HogeInitTask(hoge); これは、タスクで、Hoge 型の hoge を初期化するもので、タスクは任意のタイミングで実行される。タス…

Flash IDE の「ダウンロードのシミュレート」は使い物にならない

ダウンロードのシミュレートを行うと、グローバル変数やシングルトンがリセットされない。これは致命的。CS3 では解決したのだろうか。 5 1/2 blog のコメントを見ると、解決策が 2 つ上がっている。 System.capabilities.playerType で振り分ける delete 文…

行を補完する

Vim

インサートモードで CTRL-X を押し、続けて CTRL-L を押すと行補完を行うことができる。ヘルプは :he compl-whole-line ActionScript の長いパッケージ名を補完する たとえば、幾つか .as ファイルのバッファを開いた状態で、 import org.dyndns.bitmap. こ…

Align.vim のバグ

Vim

Align.vim に落とし穴が。 var a = 100; var hoge = (a == 100) ? "bar" : "baz"; このような、連続する = が行に含まれたコードを \t= で整列すると、== の部分が文字化けを起こし、文字コードによってはファイルを保存できなくなる。要注意。

略語で始まる変数の命名法

たいした問題ではないが、lowerCamelCase ルール下で、略語で始まるクラスのインスタンスの命名に数秒悩まされる。例えば HTMLParser クラスのインスタンス名。 var myHTMLParser = new HTMLParser(); var parser = new HTMLParser(); var htmlParser = new …

議論のレッスン

『議論のレッスン』を読んだ。議論という語感からディベートなどの討論を想像しがちだが、内容はもっとくだけていて、自分の言いたいことを正しく伝える/相手の主張を正しく理解するための方法を、身近な例や練習問題を通してわかりやすく解説している。 面…

改行が崩れ、大量の ^M が表示されるときの対処法

Vim

改行が崩れ、大量の ^M が表示されるときの対処法。 :e ++ff=mac カレントファイルの fileformat を mac にするという意。よく忘れるので文法で覚えておこう。

ランダムな平仮名の文字列を生成する

Ruby でランダムな平仮名の文字列を作る方法で悩む。別に、Ruby ではなく JavaScript 等でもいいのだが、せっかくだから Ruby で……と思っていたら詰まってしまった。 puts 12354.chr => RangeError Integer#chr は 0 から 255 の範囲しかとらない。ではどう…

起動時に SuperDrive Update 2.1 のエラーが出る

Mac

Macbook (OSX 10.4.10/C2D 2GHz) に最近当たったアップデートに、SuperDrive Firmware Update 2.1 というものがある。これが当たってから起動時にダイアログが出るようになってしまった。 アップデートできる装置が見つかりません このファームウェア・アッ…

コマンド入力の履歴を一覧表示する

Vim

Vim の終了時に q: と typo したら見慣れぬウィンドウが現れた。コマンドラインウィンドウというらしい。 このウィンドウには、過去数十件のコマンド履歴が表示されていて、Enter を押すとカーソル下のコマンドが即座に実行される。 何も実行せずにコマンド…

環境設定をどこに書くか

Flash で環境に依存する設定を行いたいときのベストプラクティスは無いだろうか。 というのは、Flash が CGI や、リモーティングなどの API に接続する際、その接続先 URI などの環境設定を、どこに持たせるかが悩みどころなのだ。ローカル、ステージング、…