1

pylintの出力を自分でフォーマットしたいので、pylint.lint.Runを直接呼び出し、add_messageメソッドへのコールバックを受け取ります。かなりスムーズなプロセスですが、出力を作成するためにメッセージの列オフセットが必要です(問題のある行のセクションを強調表示しています)。

pylintは、必要に応じて、各メッセージの行番号を報告します。ただし、pylintはオフセット情報を報告していないようです。したがって、問題が検出された行のどこを報告していません。内部的には、pylintは、Pythonの_astのアップデートであるastngと呼ばれるlogilabの別のライブラリを使用します。_ast解析ノードにはオフセット情報が含まれていますが、これはastngで複製されていないようです。

4

1 に答える 1

1

astngはastに基づいて構築されていることがわかり、logilabの担当者は、オフセットを取得するためにastngとpylintの両方にパッチを適用する方法について説明してくれました。パッチが添付されたチケットへのリンク:astng:http ://www.logilab.org/ticket/69217?vid=primary&_cwmsgid=091770639ada4996a455c48aa1eb70b3 pylint: http ://www.logilab.org/ticket/69220?vid=primary&_cwmsgid= 0660d106aa764a4189b1f4f

于 2011-06-16T16:57:51.363 に答える