64
WindowShade X 再訪

長年にわたり、優れた低価格ソフトウェアについて記事を書いてきましたが、読者とGemsライターの両方から最も人気を集めた製品の一つが、UnsanityのWindowShade Xです。Unsanityがシステム拡張ユーティリティを「ハクシー」と呼ぶこのツールは、Mac OS 9の人気機能の一つであるウィンドウシェード風のウィンドウ最小化を復活させます。WindowShade Xをインストールすると、ウィンドウのタイトルバーをダブルクリックしてもウィンドウがDockに最小化されなくなり、代わりにウィンドウ全体がオーディオエフェクト付きでタイトルバーに「巻き上げられ」、タイトルバーはそのまま残ります。

これは、画面上の他の項目の視界を遮ることなく、ウィンドウを表示したままアクセスできるようにする優れた方法です。また、ウィンドウの背後にあるものを素早く確認するのにも便利です。ダブルクリックして見やすくし、もう一度ダブルクリックしてウィンドウを復元します。Mac OS X 10.3 (Panther) で導入された Exposé により、このウィンドウシェード機能の有用性は多少低下しましたが、それでも依然として利点はあります。

残念ながら、Mac OS X 10.5 (Leopard) では WindowShade X が機能しなくなり、ファンはそれなしでやり過ごすしかありませんでした。確かに、ほとんどの人は問題なく使えていました。しかし、System 7.5 でこの機能が初めて登場した頃から「ウィンドウシェーディング」を始め(正確にはそれ以前、サードパーティ製の INIT 経由で)、OS X で長年 WindowShade を使ってきた私にとって、Leopard がリリースされた頃には、この機能を 20 年近くも使い続けていました。これは相当な筋肉の記憶力の衰えで、実際、つい数週間前まで、いまだにウィンドウを「ロールアップ」したいという衝動に駆られていました。

なぜ数週間前までだったのか?それは、Unsanityがついに WindowShade X 4.2をリリースしたからだ。これはLeopardで動作する初の公式リリースだ。以前のバージョンと同様に、バージョン4.2は標準のウィンドウシェードモードに加え、3つの「最小化」機能を備えている。「透明化」はウィンドウを半透明にして背後にあるものを確認できる機能、「最小化」はウィンドウを大きなアイコンサイズ(移動可能)に縮小する機能、「非表示」はウィンドウが属するアプリケーションを非表示にする機能だ。

ただし、これらのモードのいずれか1つだけを選択する必要はありません。WindowShade X の設定パネルで、各モードに異なるアクションを割り当てたり、標準の最小化から Dock への移動に必要なアクションを変更したりできます(複数のアクションから選択できます)。例えば、私の Mac では、ウィンドウのタイトルバーをダブルクリックするとウィンドウシェードがかかり、Control キーを押しながらダブルクリックするとウィンドウが半透明になります。独自のアクションやキーボードショートカットを作成することもできるはずですが、残念ながら、この機能は正常に動作していません。

これらの効果の多くはカスタマイズ可能です。例えば、「透明」ウィンドウの半透明度を選択したり、最小化されたウィンドウのサイズと動作を選択したり、アプリケーション固有の設定を設定したりすることも可能です。例えば、ウィンドウのメニューバーをダブルクリックした際に、Finder では別の動作、お気に入りの Web ブラウザでは別の動作、Photoshop では別の動作をさせるといった設定が可能です。

標準ウィンドウ (左上) と、WindowShade X のエフェクトを適用した同じウィンドウ: 標準ウィンドウシェード (右上)、透明化 (左下)、その場で最小化 (右下)。

WindowShade X 4.2は、Leopardとの互換性に加え、iTunesとの連携を改善し、いくつかのバグを修正しました。また、WindowShadeの旧バージョンに存在した、動作が不安定だったカスタムシャドウ設定機能も削除されました。

上で述べたカスタムアクションの問題に加え、WindowShade Xの最小化オプションは現在Mac OS XのSpaces機能では動作しません。また、ウィンドウを最小化する際に聞こえる「シューッ」という音の音量も調整できればと思っています。しかし、一部のOS Xユーザーにとって最大の問題は、WindowShade Xの魔法の仕組みでしょう。UnsanityのApplication Enhancer(現在Leopard対応バージョン2.5)を介して動作します。Application Enhancerとは何でしょうか?Unsanityは以下のように説明しています。

これはフレームワークとシステムデーモンを組み合わせたものです。Application Enhancerは、実行コードを含むプラグイン(Application Enhancerモジュール)を実行中のアプリケーションにロードすることでタスクを実行します。ロードされると、APEモジュールは起動されたアプリケーションのメモリ空間に対して必要な変更(ウィンドウの最小化アクションの再定義や標準のAppleメニューのカスタマイズなど)を実行します。ディスク上のファイルは一切変更せず、Application Enhancerフレームワークで定義された一連の関数を利用します。APEモジュールを新しく起動したアプリケーションにロードするために、Application Enhancerデーモン(aped)が使用されます。

言い換えれば、これは実行中のすべてのアプリケーションに影響を与えるシステムハックです(ただし、特定のアプリケーションをApplication Enhancer、ひいてはApplication Enhancerベースのシステムユーティリティによる変更から手動で除外することは可能です)。Macユーザーの中には、不安定さなどの潜在的な問題を懸念して、このようなハックをシステムで使用することを拒否する人もいます。もしあなたがそのような人であれば、WindowShade Xはあなたには向いていません。とはいえ、私はLeopard以前のMacで何年もWindowShade Xを問題なく使用しており、ここ数週間はバージョン4.2でも問題なく使用しています。

(関連メモ: Unsanity の説明には、WindowShade X をインストールした後、ログアウトして再度ログインするだけでよいと書かれていますが、私の場合は WindowShade X を有効にするために Mac を再起動する必要がありました。)

最後に、WindowShade Xの価格についてお知らせします。Unsanityは、以前のバージョンを購入したことがある人にはバージョン4.2を無料で提供しています。しかし、長年ご利用いただいている方には、7ドルの「任意アップグレード料金」の支払いをご検討いただくようお願いしています。名前の通り、この料金を支払う義務はありませんが、複数のOS XバージョンでWindowShade Xをご利用いただいている方には、「これまで無料アップグレードをご利用いただき、ありがとうございます。今後の開発に役立てていただくために、少しお礼申し上げます」という気持ちになります。

WindowShade X 4.2 には Mac OS X 10.4 以降が必要です。

2008年10月2日午前0時15分更新:ウィンドウシェーディングの登場時期に関する著者の記憶の誤りを修正しました。著者も年を取ったと感じています。