为了在python模式下检查代码,我将flymake与pyflakes一起使用
我也想用pylint检查代码样式(pep8)(与pyflakes在同一页面上的描述)
此解决方案有效。
但是我无法将flymake配置为与pyflakes和pylint一起使用。
我该怎么做?
最佳答案
好吧,flymake只是在寻找可执行命令,该命令以预定义格式输出行。例如,您可以制作一个shell脚本,该脚本将依次调用所需的所有检查程序。
您还必须确保通过返回错误级别0来结束脚本。这是一个示例:
这是我在“pycheckers”脚本中所做的事情:
#!/bin/bash
epylint "$1" 2>/dev/null
pyflakes "$1"
pep8 --ignore=E221,E701,E202 --repeat "$1"
true
对于emacs lisp部分:
(when (load "flymake" t)
(defun flymake-pyflakes-init ()
(let* ((temp-file (flymake-init-create-temp-buffer-copy
'flymake-create-temp-inplace))
(local-file (file-relative-name
temp-file
(file-name-directory buffer-file-name))))
(list "pycheckers" (list local-file))))
(add-to-list 'flymake-allowed-file-name-masks
'("\\.py\\'" flymake-pyflakes-init)))