私は日食に不慣れです。eclipse + PyDevについて私が気づいたことの1つは、インデントが4の倍数のスペースにない場合に警告を表示することです。「reindent.py」を使用して再インデントすることができるので、これで問題ありません。そして、私はそれを外部ツールとしてセットアップすることができます。しかし、問題は、それを使用すると(Run-> Externaltools-> reindentを使用して)バックグラウンドでコードが変更されるため、その後、ソースコードが変更されたことを示すポップアップが表示されます(duh!)あなたはファイルをリロードしたいですか?(もう一度!)つまり、私の質問は、ソースコードの現在の選択をreindent(引数が指定されていない場合は標準の入出力を使用)を介してパイプし、選択をreindentの標準出力に自動的に置き換える方法があるかどうかです。ありがとう!
2 に答える
「アクセス時に更新」と「ネイティブフックで更新」の両方がチェックされている場合は、設定>一般>ワークスペースをチェックインします(これで問題が解決する場合があります)。
チェックするもう1つのことは、外部ツール構成にあります。「更新」タブがあり、完了時に選択したリソースを更新することを選択できます。
別のこと...別のインデント(たとえば2つのスペース)にあるものがある場合は、再インデントを実行する代わりに、検索で2つのスペースすべてを4つのスペースに置き換えることができます...
reindent.pyを外部ツールとして実行する場合、エディターでの現在の選択ではなく、ソースコードを含むファイル全体を変更します。ただし、PEP 8によると、タブとスペースを混在させるべきではないため、これが実際に必要な場合があります。その場合は、[OK]をクリックしてファイルをリロードし、機能することを確認してください。
設定では、[ウィンドウ]->[設定]->[PyDev]->[エディター]の下にいくつかのオプションがあります。
そこで、入力時にタブのスペースによる自動置換をアクティブにすることができます。また、PyDevがタブを含むファイルのタブ間隔を想定するように選択することもできます。
あなたはこれを読みたいかもしれません: Eclipseにpep8.pyを統合する方法は?
Window-> Preferences-> PyDeV-> Editor-> Code Analysis-> pep8.pyをアクティブにすると、すべての行に警告を生成できます。これは、規則と矛盾します。