emacs中的Python代码检查器包装器没有正确地将结果提供给win32上的flymake
因此,我正在使用emacs python wiki(找到)上建议的这个包装器,它围绕pep8、pyflakes和pylint在命令行上工作(在windows上根据“”进行设置时遇到了麻烦) 但是,在emacs中,flymake将在有错误的行下划线,但当我悬停鼠标时,应包含错误消息的框为空。我的初始化文件包含:emacs中的Python代码检查器包装器没有正确地将结果提供给win32上的flymake,python,emacs,flymake,python-mode,Python,Emacs,Flymake,Python Mode,因此,我正在使用emacs python wiki(找到)上建议的这个包装器,它围绕pep8、pyflakes和pylint在命令行上工作(在windows上根据“”进行设置时遇到了麻烦) 但是,在emacs中,flymake将在有错误的行下划线,但当我悬停鼠标时,应包含错误消息的框为空。我的初始化文件包含: (setq pycodechecker "etcwrapper.bat") (when (load "flymake" t) (load-library "flymake-curs
(setq pycodechecker "etcwrapper.bat")
(when (load "flymake" t)
(load-library "flymake-cursor")
(defun dss/flymake-pycodecheck-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 pycodechecker (list local-file))))
(add-to-list 'flymake-allowed-file-name-masks
'("\\.py\\'" dss/flymake-pycodecheck-init)))
bat是一个简单的批处理脚本,在python包装器脚本上运行python。为了方便起见,我将它放在系统路径的一个目录中。
我还可以让flymake只在一个字符下划线,而不是在整行下划线吗?
有什么建议吗?我不是python专家,也从来没有在windows上使用过它,所以这个答案可能没有什么用处……但我知道在一些版本的
flymake cursor
中有一个漏洞,可以解决pyflakes
要么不能正确地报告编译错误,要么它们的格式不适合flymake
进行解析
您可以在我的flymake cursor
的fork中看到尝试对其进行的修复:
我从Dino Chiesa版本中得到了修复,所以我不知道完整的背景故事,但听起来这就是你面临的问题
较新版本的flymake cursor
如mine或Dino可能会帮助您在emacs消息区域中看到错误指示,但鼠标覆盖在flymake
中处理,据我所知,该版本没有解决此问题的方法
如果您在手动运行时提供etcwraper.bat生成的输出,我可能能够提供进一步的帮助
仅在一个字符下划线也很棘手,据我所知,您需要从flymake.el
中重新定义flymake覆盖层
,并创建两个覆盖层,而不是一个。您可能会发现将flymake errline
和flymake warnline
的面部自定义为比u更不具侵扰性的面部底线
很抱歉,这两个答案都不是正确答案。:)是的,我没有尝试过你的建议,但仍然是相同的行为。