A Django site.
5月 26, 2008
» MacPortsのmysql5でreadlineが組み込まれない

MacPortsのmysql5パッケージに含まれるmysql5コマンドが、readlineの組み込まれていない状態でビルドされてしまい不便だったので、強引にPortfileにvariantを追加してビルドしなおした。

--- /opt/local/var/macports/sources/rsync.macports.org/release/ports/databases/mysql5/Portfile.orig     2008-05-05 13:56:36.000000000 +0900
+++ /opt/local/var/macports/sources/rsync.macports.org/release/ports/databases/mysql5/Portfile  2008-05-26 15:53:07.000000000 +0900
@@ -68,6 +68,12 @@
     startupitem.stop    "${prefix}/share/${mysql}/mysql/mysql.server stop"
 }
 
+variant readline {
+    # enable readline
+    depends_lib-append  port:readline
+    configure.args-append  --with-readline
+}
+
 pre-destroot {
     # Some directories we must have in all cases
     xinstall -m 755 -d ${destroot}${sysconfdir}

インストールは以下のように。

$ sudo port install mysql5 +server +readline

今回はreadlineを使ったけど、libeditを使う場合はeditlineマルチバイト不具合の修正 - mir the affiancedを参考に。

5月 24, 2008
» MacPortsのphp5でgdサポートがデフォルトで有効に

MacPortsのphp5パッケージは5.2.6_1から、–with-gd が常に付いた状態でビルドされるようになりました(#13988 (RFE: php5 +macports_gd2) - MacPorts - Trac)。ビルド時にはPHPのソースに同梱のgd2ではなく、MacPortsのgd2が使われる模様。

4月 29, 2008
» Carbon Emacsをフルスクリーンで使う

Desktop (Coding) Apr, 2008

以前、Emacsをフルスクリーンで使っている人のスクリーンショットを見かけたことがあり、WriteRoom的でちょっといいなあと思っていたのだけど、その時点ではタイトルバーやメニューバーまで非表示にするのはCarbon Emacsでは難しいということだったので諦めていました。

が、いつの間にかCarbon Emacsで完全なフルスクリーン表示を可能にするパッチを作成された方がいて([carbon-emacs:622] Re: “True” full-screen (patch announcement))、Carbon Emacs (2008年春版)では無事に取り込まれていました。

追加されたのは、フルスクリーン表示と通常表示をトグルするmac-toggle-max-window関数と、フルスクリーン時にメニューバーを隠すかどうかを表すmac-autohide-menubar-on-maximizeという変数。mac-autohide-menubar-on-maximizeが非nilの場合は(デフォルト値はt)、フルスクリーンにした際にメニューバーが隠れます。

;;フルスクリーン時にメニューバーを隠さない場合は以下を有効にする
;;(setq mac-autohide-menubar-on-maximize nil)
(mac-toggle-max-window)

そんなわけで、先週から仮想デスクトップの1番をCarbon Emacsが占有するようになりました。いやー、このストイックな感じがいいなあ。

1月 16, 2008
» 今週買った本

なぜ、週4時間働くだけでお金持ちになれるのか?

「なぜ、週4時間働くだけでお金持ちになれるのか?」。内容が薄いので、1〜2時間もあれば読めそう。

夢をかなえるゾウ

「夢をかなえるゾウ」。話題なのでとりあえず買っておいた。

「超」整理法1 押出しファイリング (中公文庫)

「「超」整理法1 押出しファイリング」。昔、流行ったときには中学生くらいだったのであまり興味を持たなかったけど、文庫版が安く出ていたので買ってみた。

「1日30分」を続けなさい!人生勝利の勉強法55

「「1日30分」を続けなさい!人生勝利の勉強法55」。わりと読みやすく、内容も合理的で言っていることもまとも。

論争する宇宙―「アインシュタイン最大の失敗」が甦る (集英社新書)

1月 14, 2008
» LeopardでDvorak配列を使う

2007年の1月からメインのMacBookをDvorak配列に変え、

1年余り使ってきました。

最初の1〜2ヶ月はタイピング速度が60%くらいになった感じがしましたが、その後は順調に手に馴染んでいき、今のところは「死ぬまでメインマシンのキー配列はDvorakだなあ」と思っています。とにかく指の動きが最小限で済みますし、プログラマのように英文を多く入力する職業では身体的負担もだいぶ軽減されます。たまにQwertyでタイプしている人の手元を見ると、指があっちこっちに行ったり来たりしていて「まるで苦行だな」と思えてきます。

ということで、今回は、Dvorak配列に興味のあるMacユーザー向けに私の経験談を少しばかり書いてみます。

デメリット

Dvorak配列にして直面したデメリットは、

  • 他人のキーボードが使えなくなる
  • ショートカットキーは憶え直し
  • QwertyをサポートしていないPDAが使いづらい
  • OSが起動するまでDvorakが使えない

といったところでしたが、実際の所これらはたいして問題ではありませんでした。

他人のキーボードが使えなくなる

職種にもよりますが、キーボードにこだわるプログラマならそんな機会はほとんどないだろうし、あったとしても猛烈にタイプしなければならないようなシチュエーションは考えられないので、意外となんとかなります。唯一の例外はペアプログラミングの時なんだけど、これもバトンタッチの時にキーボードを繋ぎ変えるなりキー配列を変えればいいだけです。

そもそも、プログラマという人種はキー配列に関係なく他人のキーボードなんか使いたくないものだし、個人的にはキーボードや配列に選択の余地がない職場でプログラマなんかやってられません(そんな非効率な職場の業務にも興味は持てそうにない)。

ショートカットキーは憶え直し

これには、移行した当初は結構悩まされます。

Mac OS Xの場合は「Dvorak - Qwerty」というキー配列を選ぶことで、コマンドキー押下時のショートカットはQwertyのままにすることができるので、これで乗り切ることもできます。私の場合はメインのエディタがEmacsであり「Dvorak - Qwerty」の恩恵があまり得られなかったのと、キートップと実際のショートカットの食い違いが気持ち悪かったので、すべてDvorak配列で憶え直しました。EmacsのキーバインドはDvorakでもそれほど違和感なく憶えられましたが(それまでのEmacs歴は7年くらい)、唯一の鬼門は「hjkl」。vimやnethackは格段に操作しづらくなります。vimの場合はたぶんDvorak向けのソリューションがあるんでしょうけど、必要に迫られていないので未調査です。これは、是非ともDvorakなvimユーザーさんの声を聞きたいところ。

QwertyをサポートしていないPDAが使いづらい

iPod touchとか(PDAじゃない)。とは言うものの、そもそも満足にタッチタイプのできるPDAが少ない現状では問題にはなり得ません。それに、PDAよりもメインマシンでの作業効率のほうがよっぽど大切です。

OSが起動するまでDvorakが使えない

Mac OS Xをシングルユーザーモードで起動する時や、ブートデバイスを選択するとき、PRAMリセットする時などにQwerty配列で操作する必要があります。私のようにキートップまで入れ替えてしまうと緊急時に結構ハマりますので要注意です。

実際に1年間Dvorakだけで過ごしてきて直面したデメリットはこんなところです。これらの点が気になるようでしたらQwerty配列を使い続けるという選択肢もありだとは思いますが、実際のところこんなのは些細な問題です。より効率的にラクにタイプできる方法があるのなら、プログラマとしてそれを試さない手はありません。

移行手順

Mac OS XではDvorak配列が標準でサポートされているので、「システム環境設定」の「言語環境」を開き、「Dvorak」または「Dvorak - Qwerty」を選択すればOKです。「U.S.」がチェックされている場合は、チェックを外しておきます。

International preferences (Mac OS X)

このままでも英語入力はDvorakで行なえますが、ことえりやEGBRIDGEのようなInput Method経由での入力はQwertyになったままなので、そちらもDvorakに切り替えましょう。

ことえりの場合は「ことえり環境設定」を開き、「英字入力時のキーボード配列」を「Dvorak」または「Dvorak - Qwerty」に変更すればOKです。

Kotoeri preferences

EGBRIDGE(私はこちらを常用しています)の場合は「環境設定ツール」を起動し、「英数配列」を「Dvorak」または「Dvorak - Qwerty」にすれば設定完了です。

EGBRIDGE preferences

Tips

ログインウィンドウの設定

自動ログインを無効にしてログインウィンドウが表示されるようにしている場合は、ログインウィンドウのキーバインドがQwertyのままなので、「システム環境設定」の「アカウント」を開き、「ログインオプション」の「ログインウィンドウに入力メニューを表示」をチェックしておきましょう(これはLeopardの場合ですが、Tiger以前の場合も似たような設定項目があったはず…)。

Account preferences

日本語入力向けの拡張入力方式

Dvorak配列は英文入力を考慮して設計されているので、いわゆるローマ字入力の際には最大限に効率を活かせない場面があります。幸いなことにそれらの問題を克服するためにDvorakJPACT (AZIK on Dvorak)といった拡張入力方式も考案されているので、環境が許すのならこれらの導入もおすすめです。

私は、egbridge for Macで使うキー配列定義ファイル集で配布されているファイルをカスタマイズして、DvorakJPを使っています。こちらのサイトでダウンロードしたファイルは、拡張子が「.egbrset」になっていることを確認してからダブルクリックすれば、EGBRIDGEの「ローマ字ルール編集ツール」が起動し、EGBRIDGEの「環境設定ツール」の「ローマ字」タブで「ルール」から選択できるようになります。

1月 13, 2008
» iPodを作った男

iPodをつくった男 スティーブ・ジョブズの現場介入型ビジネス (アスキー新書 48)

昨年出版された林信行さんのiPhoneショック ケータイビジネスまで変える驚異のアップル流ものづくりと同じく「Appleらしいプロダクトとはどのように生まれるのか」にフォーカスした内容。

本書でも林さんの本でも共通して主張されているのが、アップル製品のデザインが支持されているのは「装飾・装丁が優れているから」だけではなく、その製品によってもたらされる新しいライフスタイルや概念が魅力的だからなのだ、ということ。それはつまり、

  • iPodやiMacの筐体を真似る
  • パッケージからキャッチコピーを無くし、シンプルな化粧箱にする
  • 音楽配信サービスだけを手がける(ソフトや再生機器との連携には無頓着)

といった表層的な追従ではアップルの製品を脅かすものは創れないということであり、「iPodやiTunes Storeのライバルが消費者の支持を得られなかった」ことの答えでもある。

トピックのひとつひとつはアップルフリークならば既知のものが大半だけど、第四章「キャッチコピーから見るアップル社」は、

Welcome, IBW. Seriously.

The Computer for the Rest of Us.

Think Different.

といった有名なコピーやスローガンの生まれた背景やその意味に触れていて、面白かった。

1月 6, 2008
» MacPortsと格闘

Leopardでapache2のビルドにコケる問題がなかなか修正されないので、パッチを作りました。portsの仕組みをあまり理解していないので最適な対策にはなっていない気がしますが、これをもとに早いところチケットがクローズされればいいなあ。

作業にあたっては以下のページにお世話になりました。

12月 19, 2007
» Railsを2.0.2にアップグレード

MacBookにインストールしてあるRailsを2.0.2にバージョンアップしようとしたら、エラーが発生した。

ERROR:  While executing gem ... (OpenURI::HTTPError)
    404 Not Found

色々調べてみたところ、以下のようにしてrubygems自体をアップデートしておく必要があるみたい。

$ sudo gem update --system
$ sude gem update

ちなみにrubygemsはMacPortsで入れたものです。

11月 17, 2007
» RecentApplications Stacks

RecentApplications Stacks

Tip: Stack your Recent Items in Leopard | MacApperに、DockのStacksに “Recent Applications” や “Recent Documents” を登録する方法が紹介されていたので早速試してみた。

Recent Documentsは重宝しそう。

10月 3, 2007
» どの国のiTunes Wi-Fi Music Storeを使うか

iPod touchのiTunes Wi-Fi Music Storeを使ったときにどの国のiTunes Storeに接続するかは、「Macと同期した時点でどの国のiTunes Storeにログインしているか」で決まるのね。アカウントが共用だから当然か。

というわけで、USのiTunes Storeも問題なく利用できた。

10月 2, 2007
» Apple Wireless Dvorak Keyboard

Apple Wireless Dvorak Keyboard
Apple Wireless Dvorak Keyboard (originally uploaded by juno_)

新しいApple Wireless Keyboardは非常にMacBookに近いフィーリングでよいのだけど、MacBookのほうはキーボードのキー配置をDvorak化してあるため微妙に使い心地が違っていた(FとJの突起とか)。微妙な違和感ではあるけどどうにも気になるので、Wireless KeyboardのキートップもDvorak化することに。

キーの構造がMacBookと同じなので思ったよりも簡単だった。

9月 26, 2007