2006-09-01から1ヶ月間の記事一覧

Align.vim を使った、コードレイアウトの自動化

Vim

連続する代入文は = の列を揃えるとコードの可読性が上がる。しかし、列を揃える作業は時間を取る上に、整列させたとしても、ある変数名の長さが変わる度に、他の行のスペースの数を調整しなければならない。 そこで、Align.vim を使う。Align.vim は、面倒…

ビット演算を使う

普段の仕事ではビット演算を使用する機会が無い。Flash 8 以降で凝った画像処理をするには必要なのだが、それはさておき……。身近な所では、偶奇を判定する方法にビット演算が使えそうだ。 通常「2 で割った余りが 0 ではない」数字を奇数と定義する。 functi…

Joel on Software

「ジョエル・オン・ソフトウェア」を読んだ。ブログを書籍化したものなので、全体的に軽快な口調で書かれていて読みやすい。辛辣な意見や強引な例え話が笑いを誘う。 前半は、プロジェクトの進め方や仕様書の書き方など下流のトピックが多めで、後半は、Amaz…

text-objects でショートカット

Vim

Development Environment Conference 以降、個人的に活躍しているのが text-objects だ。ビジュアルモードとカーソル移動で行っていた作業が大幅に楽になった。詳しくは、:he text-objects。または、オライリーの「入門 vi」170p に解説がある。 では、覚え…

true/false を切り替える

Vim

先日参加した Development Environment Conference で、secondlife 氏が Ctrl-a、Ctrl-x で true/false をトグルしていたのが気になったのでキャッチアップ。 デフォルトでは、Ctrl-a、Ctrl-x の機能は数値の増減のみだが、プラグインを入れることで文字列の…

You Are Here の実装方法

CSS

メニューを ul 要素と CSS で実装し、メニュー内のアイテムで、現在表示中のものをハイライトさせる際、パターン化された方法として 2 つ挙げられる。 一方は、li 要素の class に here 等を明示的に指定する方法 (here 法)。もう一方は、body 要素にコンテ…

removeEventListener の拡張

EventDispatcher.removeEventListener の第 2 引数には対象リスナへの参照が必要だが、ある関数内のローカル変数としてリスナを作成し登録してしまうと、関数を抜けた後、つまり参照を失った際に、そのリスナの解除が困難となる。 幸いにも (というか実装上)…