我如何检索pylint消息的列偏移?

时间:2011-06-14 21:29:16

标签: pylint

我想自己格式化pylint的输出,所以我直接调用pylint.lint.Run,​​并接收我的add_message方法的回调。非常流畅的过程,但我需要消息的列偏移来构建我的输出(我突出显示有问题的行的部分)。

pylint在适当的情况下报告每封邮件的行号。但是,似乎pylint没有报告任何偏移信息 - 因此它没有报告检测到问题的行。在引擎盖下,pylint使用另一个来自logilab的库,名为astng,这是对python的_ast的更新。 _ast解析节点包含偏移量信息,但这似乎没有在astng中复制。

1 个答案:

答案 0 :(得分: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=0660d106aa764a4189b1f4f1faa8aa82