Pythonのimport文を自動でソート・グループ化するユーティリティ兼ライブラリです。
asottile/add-trailing-comma
複数行の呼び出し、リテラル、定義に末尾のカンマを自動追加するPythonツール兼pre-commitフック。
- スター
- 373
- フォーク
- 28
- 未解決の Issue
- 0
- 最終コミット
- 一昨日
これは何?
add-trailing-commaは、複数行の関数呼び出し、タプル・リスト・辞書・集合のリテラル、関数やクラスの定義、fromインポート、with文、matchケースの末尾にカンマが付くよう、Pythonソースファイルを書き換えます。PyPIからインストールして単独のコマンドとして実行することも、プロジェクトの設定でpre-commitフックとして使うこともできます。
また、周囲の括弧も一貫したスタイルに整形します。開き括弧は行末に置き、各引数はインデントを1段深くし、閉じ括弧は行頭に戻します。単一行のリテラルからは不要なカンマも削除します。引数の追加や削除による変更が1行だけで済むため、バージョン管理の差分を最小限に抑えられます。
このプロジェクトはPEP 695の型パラメーター構文とmatch文に対応しており、ルールはプロジェクトのドキュメントで変更前後の差分として示されています。
主な機能
- 01関数呼び出し、リテラル、関数やクラスの定義、インポートに末尾のカンマを追加します。
- 02with文、matchケース、PEP 695の型パラメーターに対応しています。
- 03開き括弧と閉じ括弧を、引数を1行ずつ配置するスタイルに整形します。
- 04単一行のリテラルから不要な末尾のカンマを削除します。
- 05pre-commitフック、またはpipでインストールする単独コマンドとして実行できます。
ユースケース
- Pythonのコードベース全体で、複数行のフォーマットスタイルを統一する。
- 長い関数呼び出しで引数を追加・削除した際の差分を最小限に抑える。
- pre-commitワークフローでフォーマットチェックを自動化する。
クイックスタート
- 1
pipでツールをインストールする
pip install add-trailing-comma - 2
必要に応じて、.pre-commit-config.yaml に pre-commit フックとして追加する
収録されている特集
トピック
よくある質問
- add-trailing-comma とは?
- 複数行の呼び出し、リテラル、定義に末尾のカンマを自動追加するPythonツール兼pre-commitフック。 add-trailing-commaは、複数行の関数呼び出し、タプル・リスト・辞書・集合のリテラル、関数やクラスの定義、fromインポート、with文、matchケースの末尾にカンマが付くよう、Pythonソースファイルを書き換えます。PyPIからインストールして単独のコマンドとして実行することも、プロジェクトの設定でpre-commitフックとして使うこともできます。
- add-trailing-comma は無料で使えますか?ライセンスは?
- add-trailing-comma は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- add-trailing-comma は今もメンテナンスされていますか?
- 活発にメンテナンス中。add-trailing-comma の最終コミットは 2026年11月4日 です。
- add-trailing-comma は何に使えますか?
- Pythonのコードベース全体で、複数行のフォーマットスタイルを統一する。 長い関数呼び出しで引数を追加・削除した際の差分を最小限に抑える。 pre-commitワークフローでフォーマットチェックを自動化する。
- add-trailing-comma のインストール方法は?
- pipでツールをインストールする: pip install add-trailing-comma 必要に応じて、.pre-commit-config.yaml に pre-commit フックとして追加する
- add-trailing-comma はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/asottile/add-trailing-comma
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
複数プロジェクトで共通の設定を適用し、設定ファイルを自動修正できるコマンドラインツール兼flake8プラグイン。
Markdown、reStructuredText、LaTeXのドキュメント内にあるPythonコードブロックにBlackを実行するコマンドラインツール。
Jupyter Notebook上でruff、isort、black、mypy、flake8などのPythonリンターやフォーマッターを直接実行できるCLIツール。
pyflakesで検出した未使用のimportや変数をPythonコードから削除するコマンドラインツール。
入力中に非同期でコードをlintし、prettierやeslintなどのfixerを実行できる、Vim/Neovim用プラグイン兼LSPクライアントです。