Pleiades Dynamic AOP Translation Container
for Eclipse

  Pleiades (プレアデス) は統合開発環境 Eclipse のためのプラグイン日本語化プラグインです。
eclipse.org 言語パックと比較して以下の特徴があります。
  • 1 つの Pleiades で Eclipse 3.1〜3.5 および 150 以上のプラグイン (対応プラグイン一覧 [PDF]) を日本語化。
  • ソースに英語文字列がベタ書きされたプラグインでも日本語化 (eclipse.org のプラグインの x.x.0 リリースにも多い)。
  • Java 標準 API Javadoc ホバーを日本語化 (初回起動時に Pleiades で起動しないと有効にはならない)。
  • 新しいプラグインへの対応はまず Pleiades で行われ、その後 eclipse.org 言語パックに展開される。
  • 後でインストールしたプラグインも -clean 指定起動するだけで日本語化。
  • 辞書式であるため常に統一された訳が提供され、誤訳などの修正があった場合は全プラグインの全バージョンに反映。
  • 初回や構成変更後の -clean 指定起動時に AOP で Pleiades 辞書を参照するようにクラスを動的に書き換え。
  • 通常起動時はパフォーマンスに大きな影響を与えるクラス書き換えははとんど発生しないが、起動時の辞書ファイル読込のオーバーヘッドは大きい。

PC 性能がそんなに良くない場合は言語パックをお勧めします。 Eclipse 3.3 以降の言語パックは Pleiades の訳が元になっており、訳の追加や修正は Pleiades → Eclipse 日本語化言語パック (サードパーティ版) [*1] → EJWG Babel 言語パック [*2] の順に反映されます。翻訳に参加いただける場合は 翻訳に参加する をご参照ください。ご提供いただいた翻訳の成果は言語パックにも反映されます。

[*1]  本プロジェクトのメンバーでもある伊賀敏樹 (いがぴょん) 氏、山本耕司 (ymoto) 氏の blanco Framework プロジェクトから zip ファイルとして配布されており、変更はほぼ即時反映されます。また両氏は Pleiades へ非常に多くの訳を追加更新しています。
[*2] Eclipse Japan Working Group との協調により、Babel 更新サイトから取得できます。反映されるまで数ヶ月程度かかる場合があります。

注意 Pleiades を更新したり、他のプラグインを追加・更新した場合は必ず起動オプションに -clean を指定して起動してください。 Windows の場合は同梱している "eclipse.exe -clean.cmd" で -clean 起動できます。-clean 起動しないと、configuration の古いプラグイン情報が使用され、起動できなくなったり、更新したプラグインが正常に動作しなくなったりします。
 


 ダウンロード

 
 Pleiades All in One 日本語ディストリビューション (zip ファイル) ダウンロード  
Pleiades All in One は開発対象となる言語によりパッケージを選択できる Eclipse 本体と便利なプラグインのセットです。ダウンロードした zip ファイルを解凍し、eclipse.exe を起動すれば、すぐに日本語化された Eclipse を利用できます。なお Pleiades All in One の対象 OS は Windows のみです。
Galileo Pleiades All in One Ganymede Pleiades All in One Europa Pleiades All in One

 Pleiades 本体ダウンロード
既にインストール済みの Eclipse に適用したい場合や、Windows 以外で使用する場合は下記の Pleiades 本体のみをダウンロードしてください。Pleiades のソースを Eclipse プロジェクトとしてチェックアウトする場合は こちら を参照してください。
 
  最新版 1.3.x 不具合修正、Eclipse 3.5 Galileo 追加訳対応、他
  安定版 1.3.1 変更履歴
 

   
 パッケージ別ダウンロード順位 
(J):JRE あり
1.  e3.5 Java (J)
2.  e3.4 Java (J)
3.  e3.5 Ultimate (J)
4.  e3.5 Java
5.  e3.4 Java
6.  e3.5 PHP (J)
7.  e3.5 Ultimate
8.  e3.4 Ultimate (J)
9.  e3.5 C/C++ (J)
10.  e3.5 Platform (J)
11.  e3.5 PHP
12.  e3.4 PHP (J)

 Windows 上での zip 解凍時の注意
  • 解凍ツールは Windows Vista 展開ウィザードまたは WinRAR を推奨します。 この 2 つのツールは解凍時に MAX_PATH (最大パスを示す Windows 定数 = 260 文字) を超えていた場合、適切なエラーを返します。その場合は c:\user (c:\user\eclipse に展開) のような短いパスに解凍してください。Windows XP 展開ウィザード、Lhaz、Explzh は MAX_PATH を超えている場合、書庫が壊れているかのようなエラーが出ますが、これも短いパスに解凍することで対応可能です。 7-Zip、Lhaplus、Lhaca は使用しないでください。MAX_PATH を超えていても警告やエラーが表示されず、正常に解凍できたか判断できません。

  • 下表は各ツールで 20080804 版 Ultimate を解凍したときのファイル数と MAX_PATH を超えた場合の動作です。 「短いパス」や「長いパス」は解凍先ディレクトリーのパスを指し、「長いパス」は MAX_PATH を超えている場合の解凍結果で、この列の「△」は解凍の失敗を判断できる何らかのアクションがあることを示します。

    短いパス: 例)c:\user
    長いパス: 例)c:\user\pleiades-all-in-one-ultimate-jre_20080804
解凍ツール
ライセンス
解凍先
指定
解凍後のファイル数

Windows の MAX_PATH を超える
長いパスがある場合のアクション
短いパス
長いパス
Windows
展開ウィザード
Vista フリー (OS 付属) ○ 24635 △ 13402 「ソース パスが長すぎます」エラー発生
XP フリー (OS 付属) ○ 24635 △ 13402 パスワードを聞かれる、圧縮フォルダーでファイルが見えない
Lhaz フリー ○ 24635 △ 24606 「書庫が壊れています」エラーで終了
Explzh フリー (個人利用限定) ○ 24635 △ 13355 「指定されたパスが見つかりません」エラー発生
WinRAR シェア (試用版40日) ○ 24635 △ 24606 「パスが 260 文字を超えています」警告あり
WinZip シェア (試用版40日) ○ 24635 △ 24606 「指定されたパスが見つかりません」エラー発生
解凍レンジ フリー × ○ 24635 △ 24634 解凍エラーで終了
Lhasa32 フリー × ○ 24635 △ 12971 書き込みエラーで終了
7-Zip フリー ○ 24635 × 24606 × 警告やエラー表示なしだが正常に解凍できない
jar xf コマンド フリー (JDK 付属) ○ 24635 × 24606 × 警告やエラー表示なしだが正常に解凍できない
Lhaca フリー ○ 24635 × 12971 × 警告やエラー表示なしだが正常に解凍できない
Lhaplus フリー ○ 24635 × 24604 × 警告やエラー表示なしだが正常に解凍できない
  • ツールに関係なく正常に解凍できた場合でも、解凍したディレクトリーを MAX_PATH を超えるような深いパスに移動 (*補足) すると正常に動作しなくなります。 また、パスに日本語やスペースが含まれていると、正常に動作しないものがあるため、デスクトップや "C:\Program Files" に配置しないようにしてください。特にデスクトップの実際のパスは "C:\Documents and Settings\<ユーザー名>\デスクトップ" なので、パスが長くなる、スペースあり、日本語ありで問題要素が網羅されています。

    (*補足) 実際は NTFS の制限は 32767 文字であるため、260 文字を超えるパスは存在でき、かつ対応した Win32 API で操作も可能です。ただし、一般的な Win32 API が MAX_PATH を超えるパスをサポートしていないため、各アプリケーションが意識して制限する必要があり、 このような状況が発生しています。MAX_PATH を超えると削除できなくなったり、 コンテキスト・メニュー不正、参照できない場所を指している、など様々な問題が発生します。 そもそも Windows エクスプローラーが MAX_PATH を超えるリソースを正しく扱えません。

 動作環境
OS Linux、Mac OSX、Windows
JRE   5 (1.5) 以上
Eclipse   3.1、3.2 Callisto、3.3 Europa、3.4 Ganymede、3.5 Galileo
 インストール

 関連リンク

 仕組み

 
■ Pleiades 日本語化ツールセット・アーキテクチャー
Pleiades は表面的には単なる日本語化プラグインですが、全体は単純なプラグインであれば数分で (最終的には一切、人の手を介さずに) 翻訳作業を終了させるために開発された、静的および動的な側面を持つ完全な翻訳支援ツールセットです。 翻訳支援は作者以外に使い易いレベルにはなっていませんが、品質向上、改善を続ける予定です。

下図のおおまかな流れとしては、配布前に翻訳ルールを持つ静的なジェネレーターで eclipse.org が配布してきた言語パック 25 種類、約 150,000 を最適化して 50,000 にし、 Pleiades で約 25,000 を追加、各種辞書を生成し、実行時に動的バイトコード変換 (Dynamic AOP) により翻訳を実施します。
Pleiades Japanese Translation Toolset Architecture


■ 言語パックと Pleiades による日本語化の比較
それぞれに長所・短所があります。適切に使い分けてください。言語パックは ○ 2 つですが、十分過ぎる長所です。パフォーマンスに関しては開発当初から素の Eclipse より速くすることを目標に取り組んでいます。あくまで目標ですけど。
言語パック
Pleiades
パフォーマンス AOP による極端な速度低下は様々な試みで改善されている。
翻訳箇所の正当性 Pleiades はいらんとこを訳す可能性あり。報告時に都度改善。
プラグインごとのリソース不要 統合された辞書を使用。
対応プラグインの数 150 以上のプラグインに対応。未知のプラグインでも実行時に解決される。
リソースの重複回避 重複は配布前に静的ジェネレーターで除去、最小限のリソースのみ保持。
文字コード対応 ASCII のみしか対応していないプラグインをマルチバイトに動的対応。(*2)
バージョン非依存 バージョン以前に少しの修正で Netbeans などにも対応可能。たぶん。
非外部化文字列対応 プラグイン開発者は言語パックを強く意識する必要はない。
訳語の統一 静的ジェネレーターが翻訳ルール・エンジンを持つ。
各プラグイン対応工数 辞書に存在すれば対応工数 0。訳を辞書に累積するため工数小。
訳の再利用 (*1) 追加・修正した訳は、今後のプラグインにも再利用される。
Javadoc ホバー日本語化 src.zip > API ドキュメント の参照順序逆転で実現。(*3)

(*1) blancoNLpackGenerator で Pleiades の辞書機能 (TranslationDictionary) を再利用して静的に言語パックを生成し、eclipse.org の BABEL プロジェクトにコントリビュートする試みがで行われています。この言語パックは辞書として Pleiades を使用することにより、両方の長所のいくつかを合わせ持っています。
(*2) 国際化は通常、2 つのことを意識する必要があります。ひとつはメッセージ文字列対応。もうひとつは文字コードです。 文字列が外部化されていても、ASCII のみしか考慮していない場合、正常に動作しません。Pleiades は動的に適切な文字コード設定を行います。
(*3) JDK のソースを開いた時のソース上のコメントは日本語になりません。これは JDK のソースを静的に変換する MergeDoc を使用することで解決することができます。


■ Pleiades の AOP コンテナーについて
Javassist を利用し、Java 5 以降が持つ javaagent 機能でクラスロードをフックしています。Spring、Seasar、Guice などの一般的な DI コンテナーと同じく、DI も出来ますが、日本語対応専用で AOP に関しても AOP Alliance とか全然対応していません。大きく異なるのはアプリケーション (Eclipse) 側に、Pleiades コンテナーのコードは一切現れません。Eclipse から Pleiades に対しては完全非依存となっています。


 スクリーンショット
 

WTP - JavaEE 開発環境

CDT - C/C++ 開発環境

PDT - PHP 開発環境

RDT + RadRails + Aptana - Ruby 開発環境

PyDev - Python 開発環境

EPIC - Perl 開発環境