PyCharm
には 現時点でのflake8
の組み込みサポート はありません。ただし、flake8
は、外部ツールとして実行するように構成できます。
時には、特にPython newcomersの場合、すべてのflake8
警告が理解できるとは限らず、追加の説明が必要です。
Flake8Rules
プロジェクト に最近遭遇しました。これは、すべての警告をサポートする例で詳細に説明しようとしています。
PyCharm、flake8
、およびFlake8Rules
を組み合わせて、静的コード分析の警告に追加の説明またはFlake8Rules
カタログへのリンクを表示する方法はありますか?
それは間違いなく可能です。
1つのアプローチは、 flake8
コマンドラインオプション を使用して--format
出力を調整し、Flake8Rules
カタログへのhttp(s)リンクを指定することです。
--format='%(path)s:%(row)d,%(col)d:%(code)s:%(text)s:https://lintlyci.github.io/Flake8Rules/rules/%(code)s.html'
次に問題は、コンソールまたはPyCharm出力ウィンドウがリンクを適切にレンダリングすることです。
幸い、プラグインを使用してそれを行うことができます- "Awesome Console" ターミナルと "Console Link" 出力ウィンドウ。
flake8
がインストールされていることを確認してくださいここで、いくつかの違反を含むこのtest.py
ファイルを作成したとします。
def f(a = 10):
return a*10
test.py
ファイルを右クリックしてExternal Tools -> flake8
を選択すると、これが取得する出力です(すべての警告のクリック可能なリンクに注意してください)。
ここで、疑わしい場合はいつでも、リンクをクリックして警告の詳細を確認できます。
これはそのための1つの方法にすぎません。これらのツールとプロジェクトを組み合わせるためのより簡単またはより良い方法があるかどうかを聞いて喜んでいます。
今日私もこの問題に直面していますが、@ alecxeの回答は1つのプロジェクト設定に適しています
Flake8をグローバルに設定する場合は、以下のプロセスに従うことができます
プログラム-flake8実行可能ファイルへのパス$ PyInterpreterDirectory $は、現在のプロジェクトのPythonインタプリタが配置されているディレクトリです
引数-チェックするファイルとフォルダーを指定します$ FilePath $
作業ディレクトリ-プロジェクトのルートディレクトリ$ ContentRoot $
必要なすべての人に:
Pycharmでこの種のツールをセットアップするには:
_File | Settings | Tools | Remote SSH External Tools
_
引数:-c "flake8 $(git status -s | grep -E '\.py$' | cut -c 4-) --max-line-lengt=120"
私の場合、重要なことは:
/bin/bash
_を直接使用する代わりに_flake8
_を直接使用する-c "whatever args subcommands etc I need here"
_を入力する参考のために:
$(git status -s | grep -E '\.py$' | cut -c 4-)
は、gitバージョン管理に従って変更されたファイルの場所を渡す責任があります注:virtualenvからflake8を使用するには、次のようにフルパスを指定する必要があります:_/z/your_virtual_envs/bin/flake8
_