IntelliJやPyCharmでPythonファイルの変更を検知してflake8で文法チェックをする

概要

Pythonのコードをレビューする際に、フォーマットについての指摘は何箇所にも渡ってしまい心が折れそうになったので調べてみました。CIも方法としてありますが、レビューの対象はあくまで課題で書かれたシンプルなPythonスクリプト。

オーバースペックなのでIntelliJやPyCharmなどのJetBrains製品でPythonの文法チェックをする方法を模索してみました。

前提

flake8をインストールしていること

flake8はPythonのコードスタイルであるPEP8に準拠しているかをチェックしたり、コードの論理的なエラーをチェックしたり、循環的複雑度をチェックする万能チェックツールです。

これをインストールします。

$ pip install flake8

インストールできているかの確認。

$ flake8 --version

File Watchersをインストールしていること

IntelliJやPyCharmでは「File Watchers」というファイルの変更を検知するプラグインがあります。

こちらをインストールして再起動します。

IntelliJやPyCharmでの設定方法

[IDE名]→[Preferences]で設定を開き、左のペインの[Tools]→[File Watchers]と辿り、[+]ボタンをクリックします。

ToolsからFile Watchersの遷移

[Custom]をクリックします。

[Custom]の選択肢

「New Watcher」のダイアログで以下を入力します。

Wacherの設定内容
項目名解説設定値
NameWatcherの名前。flake8
File Type対象するファイルの種類。「Python」を選択。
Scope監視対象にするファイルのことです。「All Files」を選択。
Programターミナルでwhich flake8でパスを調べて入力しましょう。flake8のパス
Argumentsコマンド引数。$FilePath$
Output path to refeshファイル出力する際のパス。今回はIDE内のパネルに閉じたいので「なし」を選択します。なし
Advanced Options詳細オプションですが、とくに設定しませんなし

[OK]ボタンをクリックしダイアログを閉じ、さらに[OK]ボタンを入力してPreferencesを閉じます。

動作の確認方法

Pythonファイルを開き、わざと間違えた内容を入れると、「Output」パネルが自動的に開き、エラーメッセージを表示します。

ファイルの監視を止めるには?

[Preference]→[Tools]→[File Watchers]を開き、監視を停止したいWacherをクリックして選択し、「Enabled」のチェックをクリックしてチェックマークを消し、[OK]ボタンを押します。

楽天ブックス
¥2,640 (2024/04/18 13:45時点 | 楽天市場調べ)

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!