こんにちは。JetBrains堀岡です。 JetBrains のサポートやTwitter等で、JetBrains IntelliJベース IDE(PyCharm、IntelliJ IDEA、PhpStorm、WebStorm、CLion、Rider、RubyMine、GoLand、AppCode)を2020.1系にアップデート後起動しない等の問題をTwitter … More than 1 year has passed since last update. IntelliJ IDEAの日本語化 (version 2019以前) IntelliJ IDEA version2019以前の日本語化はPleiadesというプラグインで行います。実際の作業はダウンロード→解凍して実行するだけなので簡単です。 Pleiadesのダウンロード. setup.exeを選択したら以下の画面が表示される 「選択...」をクリックして日本語化するIntelliJ IDEAを選択する. それではPleiadesをダウンロードしましょう。 IntelliJ IDEAは、Windows、macOS、およびLinuxオペレーティングシステムで一貫したエクスペリエンスを提供するクロスプラットフォームIDEです。IntelliJ IDEAはデフォルトでは英語です。日本語化したい場合は、インストール後、初めて起動する前に日本語化マニュアルを参照 IntelliJ IDEA 向けに有志により公開されている日本語リソースファイルがいくつかありますが、新しい機能で文字列連結やハードコードが多用されていて対応できなかったり、内部的に id として使用されているツールウィンドウ名を翻訳すると動作しなくなったりするなどの問題が発生するようになってしまっていました。Pleiades を使用することで、これらの問題を回避し、以下のように多くの部分を日本語化することができます。Android Studio + Pleiadeszip ファイルを展開して plugins/jp.sourceforge.mergedoc.pleiades を下記などの場所に配置します。X.X の部分はバージョンにより異なります。基本的には、どこに配置しても動作しますが、複数の異なる IDE やバージョンで同じ場所の 1 つの Pleiades を共用しないでください。また、すでに使用している Pleiades をコピーして使用する場合は、そのままでは正常動作しなかったり、起動できなくなる場合があるため、jp.sourceforge.mergedoc.pleiades/cache ディレクトリを必ず削除してください。インストールしたディレクトリ内に配置すると、Android Studio をアップデートしたときに、削除される場合があるため、上記のようにインストールディレクトリ以外に配置します。起動オプションが設定されている vmoptions ファイルを編集します。bin にあるデフォルトの vmoptions はアプリ本体をアップデートすると上書きされる場合があるため、編集は推奨されていません。代わりに、最初にメニューから Help > Edit Custom VM Options... で下記のカスタマイズ用の vmoptions を作成しておきます。このカスタマイズ用のファイルがデフォルトより優先されます。ただし、Android Studio の場合、作成したときに中身が空の場合があるので、Android Studio をインストールしたディレクトリ内の bin にある vmoptions ファイルから内容を手動でコピーしてください。この vmoptions ファイルの末尾に、以下のオプションを追加します。pleiades.jar へのパスは相対パスや ~ を使用せずに完全なフルパスを指定してください。相対パスでも指定可能ですが、IDEA 系の IDE は OS や環境によりカレントディレクトリの解釈が異なるため、避けたほうが無難です。また、Pleiades はキャッシュなどでメモリを最大 20〜30 MB 程度消費するため、メモリに余裕がある場合は -Xmx の値を増やしておきましょう。合字は == や != などを合成して 1 つの文字のように表示することができるもので、IDEA 2016.3 からは合字対応フォント Fira Code が付属しています。Pleiades では合字や日本語を確認しやすいように、フォント・プレビュー用のテキストに日本語サンプルと合字確認用の記号を追加しています。プロパティー・ファイルのエンコーディングのデフォルトは OS のデフォルトになっています。Windows の場合、以下のように Windows-31J になっているため、UTF-8 に変更しましょう。ユニコード・エスケープを使用しなければならない場合は、自動変換にチェックします。ちなみに Java 9 から ResourceBundle のデフォルトはエスケープなしの UTF-8 となるため自動変換にチェックすると逆に文字化けします (JEP 226)。これは、今のところ Android Studio にはない IntelliJ IDEA 固有の設定です。Java 標準 API のメソッドなどの Javadoc ドキュメントを日本語で表示する場合は、プロジェクト構造またはモジュールの設定を開き、下記のように日本語 API の URL を設定します。Java の外部ドキュメントはドキュメント・パスを設定している場合のみ有効になります。カーソルを合わせたときにクイック・ドキュメントを自動的に表示したい場合は 設定 > エディター > 一般 > その他 > マウス移動でクイック・ドキュメントを表示する を ON にしてください。デフォルトでは Shift+F1 で外部ドキュメントをブラウザで開いたときに英語でマニュアルが表示されますが、Java のように日本語のマニュアルを開くように設定することができません。Windows では問題ありませんが、Mac は、どこでも検索 (Search Everywhere) で日本語が入力できないため、日本語でアクションを検索する場合は、以下のようにアクションの検索 (Find Action) を使用してください。ちなみにアクションの検索の候補一覧で ON/OFF できる設定が表示された場合は、設定画面を開かずに直接設定を変更することができます。なお、上記で表示されている背景画像の設定は IntelliJ 2016.2 で追加された機能 (現時点では Android Studio にはありません) でエディターやツール・ウィンドウの背景に画像を設定することができます。これは日本語化に関係なく、多くの人が設定すると思われる項目です。お好みに応じて設定してください。IDEA 2016.3 以降では各パラメーターと各ローカル変数に対してプリセットされた色を使用できます。プロジェクト・ツール・ウィンドウの歯車アイコンをクリックして、「ソースから自動スクロール」を ON にすることで、検索などから開いたエディターに同期してツリーを表示できます。毎回ツリーを連動させたくない場合は、左側にある「ソースからスクロール」アイコンを押すことで、現在開いているエディターに同期できます。デフォルトではブレークポイントで参照しているオブジェクトの toString メソッドが呼び出されます。エディター上にインライン表示されるのは便利なのですが、場合によっては困ることもあるため、必要に応じて下記などを設定してください。「スタートアップ時に最後に使用したプロジェクトを再開する」を ON にします。ファイル > プロジェクトを閉じる でプロジェクト選択画面に戻ることができます。以下のような定番プラグインや各種 IDE のメニューや設定などの一部も日本語化されます。起動オプションに pleiades.jar の実際の配置場所が正しく絶対パスで指定されているか確認してください。起動オプションに指定した -javaagent 行を # でコメントアウトしてください。毎回クラスを書き換えると遅いため、Pleiades は AOP 適用後のクラスバイトコードをディスクにキャッシュします。最新版では対象アプリが更新されていた場合、自動的にキャッシュをクリーンするようになったため、基本的には手動でクリアする必要はありません。もし、何らかの理由でキャッシュをクリアしたい場合は、メニューから ファイル > キャッシュの破棄 > 破棄して再始動 してください。再起動時に IDEA のキャッシュ破棄機能に連動して、Pleiades のキャッシュ jp.sourceforge.mergedoc.pleiades/cache もクリアされます。そもそも起動できない場合は、この cache ディレクトリを手動で削除してください。Mac では一度も起動しないで app 内に含まれるファイルを変更した後に起動すると「壊れているため開けません。"ゴミ箱"に入れる必要があります。」と警告が表示され、開くボタンが押せない場合があります。これはアプリケーションが署名された後に改竄されていると Gatekeeper が判断した場合に発生します。自分で変更した場合など、信頼できる場合は、次のようなコマンドで拡張属性を削除した後に起動してください。元々 Pleiades は統合開発環境のメニューなどのラベルはよく似ているため、コーパス (対訳) の蓄積と、実行時の句読点分割や入れ替えで、対訳追加はほとんど不要になると思い、実装を開始したのですが、IntelliJ の数千を超えるインスペクションの説明のような文章にはほとんど対応できていません。共用されないコーパスを追加してもあれなので、Google のライブラリ TensorFlow を使用して Pleiades のコーパスで学習させて人工知能による翻訳を検討したりしましたが、今のところ、実用的な精度やパフォーマンスを確保できそうにありません。将来、これらを解決できるようのものがあれば、対応したいと思います。