32

リポジトリとの間でコードをコミット/更新するときに、インデント用にタブとスペースを自動的に変換したいと考えています。ファイルのディレクトリを変換できるEclipse用のAnyEditプラグインを見つけました。最初は悪くありませんが、これを処理する方法についてより多くの経験を持っている人はいますか? それとも、Ant スクリプトなどを知っていますか?

4

7 に答える 7

17
  1. タブの代わりにスペースを使用するようにエディターが設定されていることを確認してください。
  2. すべてのテキストを選択し、Mac ではCMD+ 、Windows では+を押します。ICTRLI
于 2014-01-29T16:17:13.683 に答える
15

コードフォーマッターやクリーンアップ機能を使用しないのはなぜですか? そのようなことを処理する設定があります。保存時に自動的に実行することもできます。

編集: Peter Perháč がコメントで指摘しているように、これは質問の半分しか答えていません。実際の経験はありませんが、Maven Eclipse Format Pluginを試して、Maven ビルドからフォーマットすることができます。

残念ながら、これは Maven のみであり、軽量のコマンド ライン フォーマッタは知りません。しかし、たまたま Maven を使用している場合は、フォーマットの目標を適切なフェーズにバインドできます。また、Eclipse を自動ビルドに設定すると、更新時にフォーマットされます。

SCM ツール (git、svn など) によっては、ビルドを実行するフックを作成することもできます (ただし、それには少し重すぎる場合があります)。

于 2008-09-19T08:10:13.670 に答える
12

AnyEditプラグインを使用して、ファイルの保存時にタブをスペースに自動変換します。また、タブの代わりにスペースを挿入するようにベーステキストエディター(他のほとんどすべてが派生)を構成します。これは冗長に聞こえますが、タブを挿入しないようにします。編集したファイルのうち、すでにタブが含まれているファイルは、保存するとすぐに変換されます。

タブはソースコードにはありません。他の誰かがタブストップを別の値に設定してファイルを見ると、とにかくほとんどの配置/フォーマットが失われます。

(もちろん、直接編集するMakefileがある場合は、それらのタブが保持されていることを確認する必要があります。しかし、私のプロジェクトでは、makeが使用されている場合、MakefileはMakefileなどの別のソースから派生しています。 PerlのPL。)

于 2008-09-19T08:29:21.240 に答える
3

少しやり過ぎで、それを処理できる特定のリポジトリ製品で試行するだけのことですが、indent またはastyleを呼び出すフック スクリプトでうまくいく可能性があります。フックスクリプトの書き方に応じて、すべてのファイルに対して全員のコードを同じ方法でフォーマットします。もちろん、事前コミットする必要があります。

于 2008-09-19T08:12:06.023 に答える
1

タブが行の先頭にない場合にのみ、スペースの代わりにタブを使用すると、配置/書式設定が失われる可能性があります。行内にタブを使用しないでください。常に行の先頭にタブを使用してください。これにより、エディターを使用して、同僚のファイルの表示に影響を与えることなく、目的のインデント レベルに調整できます。課題: 行の先頭にあるタブの位置がずれている例を見つけてください。

于 2010-02-12T01:38:47.483 に答える
0

私はこれだけのために Kedit を使用しています。また、Macintosh、UNIX、MS-Dos のテキスト ファイルをネイティブに変換します。古いエディターなので、そのスクリプトの 1 つを使用して Unicode ファイルを処理します。また、他のスマート エディターの一部を確認することもできます。

于 2010-02-12T01:48:58.203 に答える
0

Java EE 開発者 4.6.0 Neon に Eclipse を使用しています。http://marketplace.eclipse.org/content/anyedit-toolsを使用しています

于 2016-10-07T07:50:33.133 に答える