autopep8 は、PEP8 コーディングスタイルに準拠した Python のコードフォーマッタです。
これを Visual Studio Code に導入することで、PythonのソースコードをPEP8に準拠したスタイルに自動成形することができるため開発環境に組み込みました。
導入環境
- Windows 10 64bit
- Visual Studio Code (VS Code)
- Python3.8 (※ pip へのパスが通っていることを前提とします。)
- Windows コマンドプロンプト (cmd.exe) をある程度使えることを前提とします
導入の流れ
- autopep8 のインストール
- VS Code に autopep8 を設定する
- autopep8 の設定値を変更する
1. flake8 のインストール
コマンドプロンプトで次のコマンドを実行します
pip install autopep8
インストールが完了したら、次のコマンドでインストールされたことを確認できます
C:\>pip show autopep8
Name: autopep8
Version: 1.5.4
Summary: A tool that automatically formats Python code to conform to the PEP 8 style guide
Home-page: https://github.com/hhatto/autopep8
Author: Hideo Hattori
Author-email: hhatto.jp@gmail.com
License: Expat License
Location: c:\python\lib\site-packages
Requires: pycodestyle, toml
Required-by:
2. VS Code に autopep8 を設定する
VS Code の設定画面からpython.formatting.autopep8Path
を検索し、Python > Formatting: Autopep8 Path
項目にautopep8
を設定します。
続けて、VS Code の設定画面からpython.formatting.provider
を検索し、Python > Formatting: Provider
項目でautopep8
を選択設定します。
尚、VS Code の設定は、ユーザー設定、ワークスペース設定、フォルダー設定と分けることが出来ますが、筆者はユーザー設定を選択しています。
3. autopep8 の設定値を変更する
PEP8 スタイルに準拠すると一行の文字数制限が79文字までとなります。
これを現在の開発環境に合わせて、文字数制限を150文字までに設定します。
VS Code の設定画面からpython.formatting.autopep8Args
を検索し、Python > Formatting: Autopep8 Args
項目に設定を追加します。
この設定により、VS Code の設定ファイル (settings.json) に次のコードが追加されます。
{
"python.formatting.autopep8Args": [
"--max-line-length",
"150"
]
}
4. 完了
以上で、Python コードのエディタ上でコンテキストメニューからドキュメントのフォーマット
を選択するとソースコードがPEP8に準拠するよう自動成形されます。