Python Black+Flake8 (VScode拡張機能) の設定

Programming
Programming
スポンサーリンク

Black Formatter と Flake8

Black Formatter は、Pythonの自動整形ツール。例えば、プロジェクト内で誰が書いてもどこで改行するかを同じにでき、他の人が書いたプログラムを読みやすくなると思います。

Flake8 は、PythonのLinterで、PEP8に沿ったコードになっているかチェックできます。

これまでは、pipでインストールしてVScode上で保存時の自動整形およびLinterとして使っていましたが、拡張機能版が出ていると知り、移行しました。その時の適用方法を書いておきます。

pip からの移行

もし以前に、black をpipでインストールして使っていた場合は、下記の Formatting: Provider がblack になっていると思います。今回は、拡張機能から使うので、こちらはNoneにしておくといいと思います。(一応)

Black Formatter

Black Formatter - Visual Studio Marketplace
Extension for Visual Studio Code - Formatting support for Python files using the Black formatter.

拡張機能で Black Formatter と検索し、インストールします。

拡張機能が有効になっているとき、Black Formatter がONになっており、Formatterを使いたくないときは拡張機能を無効にしたら良いみたいです。

Black Formatter の設定

自分は、Args に下記のように設定しています。ここで主に設定を行うようです。

--line-length=79

これは、1行に79文字以上ある場合、79文字になるようにコードの括弧の位置や改行を調整してくれたりします。

保存時の自動フォーマット

VS code の設定で、Format On Save にチェックを入れると、ファイルの保存時に自動で Black Formatter を実行してくれます。

Flake8

Flake8 - Visual Studio Marketplace
Extension for Visual Studio Code - Linting support for Python files using Flake8.

拡張機能で Flake8 と検索し、インストールします。拡張機能が有効になっているとき、Flake8 が ONになっており、Flake8 使いたくないときは拡張機能を無効にしたら良いみたいです。

Flake8 の設定

自分は、Args に下記のように設定しています。ここで主に設定を行うようです。

--max-line-length=79
--ignore=E203,W503,W504

Black Formatter と合わせて1行のMAXの文字数は79文字にしています。また、Blackとの依存関係のため、E203,W503,W504のErrorとWarningは、ignoreにしています。

まとめ

Black Formatter と Flake8 を拡張機能からインストール、適用する方法を忘れないように書いておきました。

追記(2024/05/28)

最近RuffというLinterとFormatterを知ったので、そちらも今度使ってみようと思います。

コメント

タイトルとURLをコピーしました