質問には2つの部分があり、そのうちの1つはすでに回答があります。
- 編集中のファイル全体から末尾の空白を自動削除する方法は?->回答:AnyEditプラグインを使用します。これは、ファイルに保存するときに設定できます。
- 末尾の空白を自動削除する方法 変更した行からのみですか?->これはわからないので、何か助けていただければ幸いです。
質問には2つの部分があり、そのうちの1つはすでに回答があります。
回答:
Preferences- > Java- > Editors- > Save Actions- >チェックPerform the selected actions on save- >チェックAdditional actions- >をクリックしますConfigure..- >に行きCode organizingタブ- > [チェックRemove trailing whitespace- >を選択All lines。
Preferences-> Java-> Editor-> Save Actions-> check " Perform the selected actions on save-> check- Format source code> select Format edited lines。
クリックする必要がないことに注意してください。Configure the formatter settings on the Formatter pageすべてのコードスタイルには、末尾の空白の削除が自動的に含まれています。少なくとも私はFormatterの設定でこの設定を見つけることができず、組み込みのJava Conventions、Eclipse、Eclipse 2.1スタイル、およびGoogleStyleの設定をそのまま使用できました。
この設定を使用する場合は、質問のパート1のソリューションもオフにする必要があることは明らかです。
Eclipse version checked: 4.5.2, 4.11
あなたの質問はJavaコードに関するものだと思います。その場合、実際に1)を実行するために追加のプラグインは必要ありません。あなただけに行くことができます> Javaの- - >エディタ-環境設定>保存アクションとし、それを構成する末尾の空白を削除します。
そのサウンドによって、これをチーム全体の設定にしたいと思いませんか?新しいワークスペースを作成するたびに設定を覚えておかなくても済むように、コードとともにSCMに保存されるプロジェクト固有の設定として保存アクションを設定できます。
そのためには、プロジェクトを右クリックし、[ プロパティ]-> [Javaエディター]-> [アクションの保存 ]に移動します。そこから、プロジェクト固有の設定を有効にして、(他の便利なものの中でも)末尾の空白を削除するように構成できます。
注:このオプションは、Eclipse Kepler(4.3)以降のリリースで削除されました。
注意2:オプションはEclipse Lunaに戻っているようです-Luna Service Release 1a (4.4.1)
そのためにプラグインは必要ありません。たとえば、JAVAをコーディングすると、保存アクションを構成する末尾の空白を消去できます。
Eclipse 3.6
Preferences-> Java-> Editors-> Save Actions->チェックPerform the selected actions on save->チェックAdditional actions->ボタンをクリックしConfigure..ます。
ではCode organizing、タブ、チェックRemove trailing whitespace
PyDevはは、いずれかの方法でそれを行うことができますCtrl+ Shift+ Fあなたがそれを行うには、オプションセットフォーマッタコードがある場合、またはによってduring saving:
Eclipse-> Window-> Preferences-> PyDev-> Editor-> Code Style-> Code Formatter:
私は少なくともこれらを使用します:
Eclipseでキーをマップして、ファイル全体の末尾の空白を手動で削除できますが、保存時に自動的にではなく、要求に応じてのみ削除できます。(設定/キー、次に一連のキーをファイル/末尾の空白を削除にマップ)これは、すべての新しいファイルをサニタイズしたいが、レガシーコードは変更しない場合に役立ちます。
もう1つの戦略は、空白の視覚表示をアクティブにすることです。そのため、少なくとも末尾の空白を追加するときにわかります。私の知る限りでは、末尾の空白だけを表示する方法はありませんが、間違っていることが証明されてうれしいです。
私もAnyEditと言います。この特定の機能は提供されません。ただし、あなたとあなたのチームが各保存アクションでAnyEdit機能を使用する場合、ファイルを開くときに、末尾に空白があってはなりません。
したがって、このファイルを変更し、新しい末尾のスペースを追加すると、保存操作中に、AnyEditはこれらの新しいスペースのみを削除します。これらは、このファイルの唯一の末尾のスペースであるためです。
何らかの理由で、自分が変更していない行の末尾のスペースを維持する必要がある場合、私には答えがありません。この種の機能がEclipseプラグインに存在するかどうかはわかりません...
現時点では、Eclipseで一般的な方法でそれを行うことは不可能ですが、Javaの基本的な知識と、このための基本的なサポートを追加するための空き時間があれば、変更できます https://bugs.eclipse.org/bugs/show_bug.cgi? id = 180349
依存する問題:https : //bugs.eclipse.org/bugs/show_bug.cgi?id=311173
@Malvineousが言ったように、専門的ではありませんが、Find / Replaceメソッドを使用して末尾のスペース(タブU + 0009および空白U + 0020を含む)を削除することによる回避策です。
Ctrl + F(またはコマンド+ F)を押すだけ
[\t ][\t ]*$
余分:
先行スペースを削除するには、^[\t ][\t ]*
代わりに[\t ][\t ]*$
検索します。空白行を削除するには、検索します^\s*$\r?\n
[\t ]+$
の代わりに[\t ][\t ]*$
?
私はあなたの質問の後半の解決策を知りません。その理由は、私が変更したものをどのように定義するかが明確でないためです。いつ変わったの?ちょうど2つの保存の間またはコミットの間...基本的に-忘れてください。
ガイドラインに固執したいと思いますが、コードの残りの部分には触れないでください。ただし、このガイドラインは全体に使用する必要があります。だから私の提案は-すべてのコードをガイドラインに変更します:これは一度限りの操作ですが、すべての開発者がプロジェクトの同じ設定で同じプラグイン(AnyEdit)を持っていることを確認してください。
私はこのコマンドをgitに使用しました: git config --global core.whitespace cr-at-eol
^M
末尾の文字を削除します。