Inside TextEdit #1 - まずは README から
「あなたがMacを使うべき10の理由」で TextEdit についての言及があって興味を持ったので、久しぶりにコードをながめてみよう。通常であれば、 /Developer/Examples/AppKit/TextEdit/ にインストールされている。
「Document base Application で ドキュメントウィンドウに NSTextView 貼ればできるんじゃないの?」と思ってる人もいるかもしれないけれど、それがそうでもないのだ。AppleScript に対応させたり、印刷の制御したり。なによりも、NSDocument を使っていない。NSDocumentController は使ってるから、Document base のとそんなに変わらなくもあるのだけど。
コ−ドにはいる前に、README.rtf を見ておく。けっこうていねいに書いてあって、OS のバージョンが変化したときに Cocoa にどんな機能が追加されたかもわかったりしておもしろい。
「Changes in TextEdit 1.4 (Tiger)」で、いくつか目をひいた点としては、
- Spotlight 検索のためのドキュメントプロパティを追加したよ
- WordML, Safari WebArchive 形式での保存ができるよ
- 「編集」メニューに「改行」「段落区切り」「改ページ」の挿入を追加したよ。改行と段落区切りは区別されてて、 Return キーの入力は段落区切りになるよ。
- Cocoa のテキストシステムが変わったから、複数選択や矩形選択ができるようになったよ
最後のはぜんぜん知らなかった。NSTextView レベルでそうなってるので、CotEditor や JTerminal でもできる。複数選択は Command-ドラッグで、矩形選択は、Option-ドラッグだ。
今日はここまで。本格的なコードについては(たぶん)次回以降に。