ぐる式 (貳) より引っ越し作業中.未完.

2005年1月8日土曜日

Mac de Eclipse #5

$ECLIPSE_HOME/configuration/を作り直せば良いのか。「eclipse.exe -clean」でも大丈夫かもしれません。

[ Ryo.Matsudaのほろ酔い徒然 2005/01/06 (木) [Eclipse] 国際化フラグメント より ]

アプリケーションの振りをするフォルダ

Finder 上で見えてる Mac OSX のアプリケーションって,ターミナルから見ると特定の構造をしているけど実は単なるディレクトリで,それを単に一個のファイルのように見せ掛けちょるだけ.その証拠に「foo」というディレクトリを掘ってみる.ダブル・クリックでちゃんとウィンドウが開くことを確認後,「foo.app」とリネームすると,ディレクトリのアイコンを持ったアプリケーションになる (笑).追加した「.app」の部分は見えなくなる.ドラッグ & ドロップは機能しないけど,クリップボードを経由すればディレクトリとしては機能する.ターミナルからいじればファイルの出し入れも自由.でも, Finder でダブル・クリックしても,オープニング・アニメーションは行うけど,あとは何も起こらない (笑).っと,脱線してしまった. Eclipse の場合は以下のようになってる.

  • Eclipse.app/
    • Contents/
      • Info.plist (小池邦人さんの解説)
      • PkgInfo (type と creator のシグネイチャが文字列として入ってる)
      • MacOS/
        • eclipse*
        • java_swt*
      • Resources/
        • Eclipse.icns (Finder で表示されるアイコン)

この 140KB ほどのローダ・アプリケーション以外に $ECLIPSE_HOME/ には eclipse@ -> Eclipse.app/Contents/MacOS/eclipse というシンボリック・リンクがあるんだけど,これはなにをしとるんですかね.実行属性を持った eclipse* へのリンクなので,こいつに -clean オプションを付けて起動 (./eclipse -clean) してみたら,立ち上がるんだけどイベントが渡らない.ダイアログにフォーカスを渡すことができなかった.「シグナル 9 をぶちかますわよ」というハートの女王じゃないけど, kill するしかない.なんぢゃ,こりゃ.

というわけで OSX 上だと $ECLIPSE_HOME/Eclipse.app/Contents/Info.plist という xml ファイルを手動でいじらにゃアカンのですよ.デフォルト状態でのこのファイルのコマンドライン・オプションは以下のようになっちょる.

  <key>Eclipse</key>    <array>      <string>-vm</string><string>$APP_PACKAGE/Contents/MacOS/java_swt</string>      <string>-keyring</string><string>~/.eclipse_keyring</string>      <string>-consoleLog</string>      <string>-showlocation</string>      <string>-vmargs</string>      <string>-Xms30M</string>      <string>-Xmx150M</string>      <string>-Dorg.eclipse.swt.internal.carbon.smallFonts</string>      <string>-Dorg.eclipse.swt.internal.carbon.noFocusRing</string>    </array>				

これに「-clean」を追加して編集するんだけど (-keyring オプションは削除した),ああ,めんどっちぃ.ちなみに, -vm ... java_swt を削除してみたところ,上記ターミナルから起動した場合と同じ現象が発生.ローダをコピーしてリネームすりゃエエと思うかもしれんけど,例のリンク・ファイルが元の中身を指しているんで,リネームだけではダメ.こんな面倒なことするぐらいなら,「configuration/ を作り直せば良い」なのでございますよ.

ありゃ,とくに Eclipse とは関係ない話になっちゃったな (笑).関係ないついでに宣伝.じゅんチームの浅岡さんのページ. Panther な人はどうぞ.

うちのマシンはもはや @deprecated 指定されそうな (笑) Jaguar なマシンだけど,こんなご老体なマシンでも /Applications/Installers/Developer Tools/ に Developer.mpkg が入ってるんだけどね. 買って すぐに気付いてたんだけど,なんか入れそびれちゃった.今年はさらに新しい Tiger がリリースされる予定だし,今更な〜.

リスト・ビューがクリアされる

ブラウザの変な動き.コンソール・ビューにフォーカスを当てたとたん,パッケージ,タイプ,メンバーのそれぞれのビューがクリアされる.カテゴリだけは健気に保持している.プロジェクトはリストは保持しているがセレクションが消えてる.なんぢゃ,こりゃ. orz

  • リスト・ビューがクリアされる

カテゴリ・ビューを追加しない標準タイプでも 同様.そ〜ゆ〜もんなのか? ブラウジングではない通常の Java パースペクティヴでは,こんな「あるビューにフォーカスを当てるとどっか別のビューがクリアされる」ような現象は起きない.コンソールをアクティヴにしてもパッケージはセレクションをちゃんと保持しとる.

この現象が起きるのは,他に,ナビゲータ,エラー・ログ,ハイアラーキー,アウトライン,問題,サーチ,ブックマーク,パレット,プロパティ,タスクなど.起きないのは Ant, Declaration, Javadoc,クラシック・サーチなど.

対策は,エディタのビューにフォーカスを移すこと.これで復帰する.ただし,なんかファイルを開いてないとダメだ.一個も開いてないとプロジェクト・ビューでプロジェクト選択からやり直しでまんどくせぇ.

0 件のコメント:

コメントを投稿