「Platypus」でメニューエクストラ常駐型アプリを自作

海上忍
2011-12-12 12:09:00
  • このエントリーをはてなブックマークに追加

 前回紹介したPlatypusは、早い話が「シェルスクリプトを一般的な(バンドル型の)アプリに変換する」ためのユーティリティだ。ユーザーにシェル/ターミナルの存在を意識させることがないうえ、Xcodeを使うほどでもない単機能なGUIプログラムを手早く作成できる。Automatorで作成したアプリのように、OSのバージョンに依存しない点もメリットだ。

 その基本的な機能から解説していこう。まず、起動後に表示されるダイアログには、生成するアプリケーション名を入力する「App Name」、スクリプトの種類を指定する「Script Type」、あらかじめ用意しておいたスクリプトの保存位置を指定する「Script Path」がある。この3カ所への入力は必須で、スクリプトの内容によってはこれだけで足りることもある。

 Platypusのユニークな点は、出力先にバリエーションがあることだ。デフォルトでは「Progress Bar」が選択されているが、標準出力をそのまま表示する「Text Window」、スクロール機能付きのウインドウを表示できる「Web View」など、なにも表示しない「None」を含め6種類が用意されている。

 そのうちの1つ「Status Menu」は、Mac OS Xらしい機能を提供してくれる。起動すると、メニューエクストラに常駐するタイプのアプリケーションになるのだ。

 たとえば、中身が「date +%r」だけのシェルスクリプトを用意して「Script Path」に登録し、OutPutに「Status Menu」を選択、アイコンとテキストの両方を表示する設定にする。アイコンは自由に変更できるので、オリジナルのものを用意してもいい。

 肝心のスクリプトは、メニューエクストラ上のアイコンをクリックするたびに実行される。作例に示した「date +%r」も都度実行されるため、クリックするたびに現在時刻が表示されるというしくみだ。工夫次第では、従来のシェルスクリプトの枠を超えた便利な使い方ができることだろう。

  • 「Status Menu」を選択し、表示する文字列とアイコンを指定する

  • このように、シェルスクリプトがメニューエクストラ常駐型のアプリケーションとして動作する

  • 新着記事
  • 特集
  • ブログ