[Eclipse]保存時に末尾の空白を除去する自動変換を解除する[初期設定]

Read More

Eclipseにはファイルを保存する際に自動で末尾の空白やインデントを削除するという機能が存在する。

複数人での開発(チーム開発)を行っている者の場合、Eclipseの初期設定としてまず行うべきことの一つとして、
このファイル保存時の自動変換を止めるというのは必須の設定となる。


なおPHPとHTMLとでは設定する場所が違うので計2箇所の設定が必要となる。




--
まずはPHPファイル用の設定。


■Eclipseで保存時の自動変換を止める設定 for PHP

メインメニュー→ウィンドウ(W)→設定(P)を選択。


一般→PHP→エディター→保管アクションを選択。


保管アクションの画面が開く。

以下のチェックを外す。
・末尾の空白を除去 のチェックを外す



適用(A)ボタンを押下。



続いてHTMLファイル用の設定。


■Eclipseで保存時の自動変換を止める設定 for HTML

一般→エディター→AnyEditツールを選択。


AnyEditツールが開くので自動変換タブを開く。

以下のチェックを外す。
・末尾の空白を除去 のチェックを外す
・空行を無視 のチェックを外す
・ファイルの末尾に改行を作成 のチェックを外す
・タブ⇔スペースの変換 のチェックを外す



最後にOKボタンを押下。




これでPHPファイルやHTMLファイル(CSSやJS含む)の保存時の自動変換処理が解除された。


Eclipseに限らずNetBeansでも同じような設定はできるようで。
IDEなら割と標準的に実装されている機能なのだろう。


あとEclipseは重いからいい加減NetBeansに変えたいんだけど、
NetBeansを使ってる人の様子を見てるとまだまだ使い勝手悪そうだなあと。



まだもうしばらくはEclipseのままになりそう。




--
個人で開発をやってる場合は 末尾の空白を消そうが インデントを半角スペースに変換しようが好きにしろって思う。

だが複数人での開発をやっている場合、個人の好きにされると困る。非常に。

そう、言わなくてもわかると思うがdiff(差分比較)が絡んでくるからだ。

簡単な例をあげるとコメントアウト部分とか。

例えば自動で末尾の空白を消すように設定していると、
↓こんな関数のコメントが
/**
 * 関数名
 * 
 * @param ...
 */


↓こうなる
/**
 * 関数名
 *
 * @param ...
 */


パッと見は変わってないけど範囲選択して反転させると末尾の空白が除去されていることがわかる。
このように変更した覚えもないものが差分としてあがってくるわけだ。

この説明を要する輩は「一つのファイルを触っているのは自分だけじゃない」という意識がまだまだ足りないのだろう。
中途相手にいちいちこんな説明など不要だろうと思っていたが個人開発あがりにはこの辺から指摘していかなければならないことが多いようで(経験談)。

実に面倒くさい。



せめてチーム開発の経験者が自分以外にもう一人いてくれたら少しはちがうのだろうが