Eclipseでタブインデントをスペースインデントに変更する

Java

担当になったプロジェクトがグーグルJavaコーディング規約を採用しました。
グーグルJavaコーディング規約ではタブ文字をインデントの目的で 使ってはいけません
よってTab押下時にスペースが入力されるようにEclipseの設定を変える必要があります。

設定 Javaフォーマッター

ウインドウ → 設定 → Java → コードスタイル → フォーマッター と移動します。
現在アクティブのプロファイルを編集するため編集を押下します。

編集画面に遷移したらタブポリシーを「タブのみ」から「スペースのみ」に変更します。
インデントサイズでTab押下時にスペースがいくつ入るか設定できます。
僕は4にしていますが、各プロジェクトのコーディング規約に合わせてください。

Eclipseのバージョンによっては、
デフォルトのアクティブプロファイルが備え付けの「Eclipse[ビルトイン]」の場合があります。
Eclipse[ビルトイン]は編集が不可能です。
その場合、カスタムできる新しいプロファイルを作成する必要があります。

ウインドウ → 設定 → Java → コードスタイル → フォーマッター と移動します。
新規を押下します。

新規プロファイル画面が出てくるのでプロファイル名に適当な名前を入力します。
プロファイル名の下のセレクトボックスはプロファイルを指定できます。
指定プロファイルに基づいて新しいプロファイルが作成されます。
備え付けのプロファイル「Eclipse[ビルトイン]」を指定しておけばよいでしょう。
すぐに編集するので「編集ダイアログを開く」にもチェックを入れておきましょう。
以上の設定をしたらOKボタンを押下します。

編集画面に遷移するので上記で解説した通り、
タブポリシー・インデントサイズを修正します。
変更したらOKを押します。

フォーマッター画面に戻ってきますのでアクティブなプロファイルが新規作成したプロファイルになっていることを確認しましょう。
問題なければ適用を押して設定を反映させます。

設定 エディター

ウインドウ → 設定 → 一般 → エディター → テキストエディター と移動します。
「タブでスペースを挿入」にチェックを入れます。


Javaフォーマッター・エディターの設定を弄ったら完了です。
タブ押下時にタブではなくスペースが指定数分挿入されることを確認しましょう。

設定 AnyEditツール

どうもAnyEditツールを弄ってもタブ→スペース変換が可能っぽいです。
ウインドウ → 設定 → 一般 → エディター → AnyEditツール に移動します。
「タブ<->スペースの変換」にチェックを入れ、
保管時のデフォルト変換モードを「タブをスペースに」にする。

上記設定によりテキスト保存時にタブ→スペースの変換を自動的にしてくれるようになります。

AnyEditツール画面の変換タブを押下 → タブ・スペースの横幅/数
ここでタブをスペースに変換した時のスペース数を設定できます。
僕は4にしておきました。

これでテキスト保存時にタブをスペース4つに変換できるようになりました。

まとめ

Javaフォーマッター・エディターの設定を弄ることでタブ→スペース変換が可能になります。
AnyEditツールの設定を弄ることで保存時にタブ→スペースを自動変換するようになります。
これでグーグルJavaコーディング規約に対応できるようになりました。

Java

Posted by raishin