问题标签 [flymake]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
917 浏览

emacs - flymake 因“错误的类型参数:symbolp,(utf-8)”而失败

我正在尝试让 flymake 工作,但是当我运行时flymake-mode,出现以下错误

有什么线索吗?

0 投票
1 回答
304 浏览

haskell - 黄色 Flymake 工具提示/错误框过早消失

你在使用 Flymake + Emacs + GHC 劣质模式吗?当我在编辑器中出现带有红色背景的 Flymake 错误时 - 我可以将鼠标移到上方并获得一个黄色工具​​提示来解释错误。不幸的是,工具提示消失了大约。10秒后。

我怎样才能防止这种情况?我的错误信息很长,我需要时间阅读 :-)

0 投票
1 回答
1974 浏览

python - Pylint 无法在 OS X 上使用 Emacs GUI;从命令行工作

当从命令行 ( emacs filename.py) 运行时,flymake 和 pylint 可以完美地协同工作。正确突出显示错误。(尽管我无法通过工具提示悬停来获取错误详细信息,因为它是文本模式。)

当从 GUI (Carbon Emacs) 运行时,Flymake 立即返回,文件中的第一行高亮显示错误“ in <module>”。第一行即使在“Hello World”脚本上也显示错误。)我想让它在 GUI 模式下正常工作,以便我可以用鼠标导航(我知道,我知道)并使用工具提示来获取详细信息在 pylint 上报告错误。

我用“ easy_install pylint”安装了pylint,pylint和epylint脚本在“ ~/py/scripts”中。我将该目录添加到我的 .bashrc 中的 PATH 中:

(我的 .profile 是我的 .bashrc 的符号链接。)

我意识到 Emacs-GUI 没有从我的 .bashrc 加载路径,所以我创建了一个 ~/.MacOSX/environment.plist 文件,使用我在终端中看到的完整 PATH 设置 PATH 变量。

现在在 Emacs-GUI " (getenv "PATH")" 中,输出看起来是正确的:

同样,“ C-h v exec-path”的输出看起来是正确的:

这让我对如何解决这个问题没有进一步的想法。我绝不是 emacs 大师,所以我可能在这里遗漏了一些明显的东西;随时询问更多细节。

OS X 10.6.7;碳 Emacs 22.3.1;皮林特 0.23.0。

来自 .emacs 的 Flymake / Pylint 代码:

更新 2011-04-05 以响应@sanityinc 的回答:

flymake in 的详细级别 3 输出:(*messages*这不会使问题的根源对我来说很明显。)

为了比较,这是从 emacs text mode运行时 flymake verbosity 3 的输出。“hello world”文件通过了所有 pylint 测试。

0 投票
4 回答
597 浏览

emacs - Flymake 抱怨 X 不可用,即使配置为不使用 X

在文本模式控制台 Emacs 会话中运行 Flymake 模式,我如何告诉 Flymake在文本控制台中显示其消息而不是尝试与 X 通信?

Emacs 23 在各种环境中运行,包括 Debian 和 Ubuntu。

我已经flymake-gui-warnings-enabled设置为nil,但是当我flymake-display-err-menu-for-current-line抱怨时:

对我知道那个; Emacs 在没有 X 的情况下通过 SSH 连接运行。这就是我禁用 Flymake 使用 GUI 的原因。我如何告诉 Flymake不要尝试使用 GUI,而是在 Emacs 窗口中说出它必须说的话

0 投票
4 回答
1993 浏览

python - flymake的临时文件可以在系统临时目录下创建吗?

我目前正在使用以下代码在 emacs 中连接 flymake 和 Pyflakes:

然后我将此函数传递给flymake-init-create-temp-buffer-copy. (取自http://hustoknow.blogspot.com/2010/09/emacs-and-pyflakes-using-tmp-directory.html)。

这段代码直到昨天都运行良好。当我访问某些 Python 文件时,我收到以下错误:

为什么flymake将看似错误的文件名传递给pyflakes?我希望它通过类似“/tmp/efe234234”的内容,并且我没有修改任何 tmp 目录设置。

我不记得最近为 Ubuntu 更新了 emacs,也想不出任何可能导致这混乱的东西(.emacs 文件是版本化的)。

我能想到的唯一问题是,这是一个高度嵌套的目录,符号链接到我的 ~/Dropbox 目录中的一个目录,但这不会发生在以类似方式链接的其他符号上。

我该如何解决这个问题?

更新

我已经进行了一些调试,现在我看到它没有将正确的路径作为参数传递。它需要在路径中再插入一个父目录才能使其正常工作,这让我认为它由于符号链接而变得混乱。

这是一个示例 shell 会话来说明我的意思。我正在从正确的相对目录执行此操作:

那是 flymake 试图运行的命令。如果我改变它:

我没有得到任何输出(如预期的那样)。注意路径中额外的“..”。

如何让 flymake 通过绝对路径而不是这些疯狂的相对路径?

更新 2

我已经得到了一切工作。基本上有这个功能:

在最后一部分中,我不得不将参数更改为listfrom local-fileto,temp-file因为这local-file是我不想要的疯狂相对路径。为什么该片段的作者local-file首先使用该片段?

谢谢,瑞安

0 投票
1 回答
782 浏览

xemacs - 有没有办法让flymake只在我保存时编译

当我键入 flymake 时,光标会悬空一点。这有点烦人。

我想知道是否有办法告诉flymake每次更改时不要解析和编译,只需在保存时执行。

还有什么建议吗?

谢谢,

0 投票
2 回答
511 浏览

emacs - Emacs flymake 在目录不可写时阻止加载文件

当我在不可写的目录中打开文件时,我得到

同时文件没有加载。

当我重复该find-file命令时,该文件第二次加载正常。

我想要的功能是:立即打开文件,可能会显示一条消息,flymake 无法工作,但不要碍事。

我已经设置flymake-gui-warnings-enabled好了nil,至少可以让我摆脱烦人的对话框。

0 投票
0 回答
1394 浏览

c++ - Ubuntu Emacs 中的 Flymake 配置错误(C++ 模式)

我一直在尝试在我的系统上设置 fly-make。但它一直没有奏效。我有一个名为 advancedFunctions.cpp 的 C++ 文件,并且在我的 .cpp 文件所在的目录中有一个 Makefile。我的 Makefile 包含以下内容:

每当我通过调用 flymake 时M-x flymake,它​​都会出现此错误:
Flymake: Configuration Error has occurred while running (make -s -C ./ CHK_SOURCES=advancedFunctions_flymake.cpp SYNTAX_CHECK_MODE=1 check-syntax). Flymake will be switched off.

我能做些什么呢?请提示。

0 投票
2 回答
1835 浏览

emacs - 当进程是flymake进程时摆脱“缓冲区已运行进程”确认

当我关闭关联的缓冲区时,有没有办法告诉 emacs 总是杀死 flymake 进程?当与缓冲区关联的唯一进程是flymake进程时,我不想得到确认?

0 投票
3 回答
1913 浏览

emacs - Emacs - 无法让 Flymake 与 JSHint 一起工作

我试图让 JSHint 与 Flymake 一起工作。

jshint确实已安装/opt/bin并可以正常工作。/opt/bin在 Emacs 中exec-path

我已按照EmacsWiki 上的说明进行操作,并在我的init.el:

当我打开 JavaScript 文件时,我的模式行显示为:

这很奇怪,因为*当我将 Flymake 与 C++ 或 Python 一起使用时,通常不会出现。根据 Flymake 文档,Flymake*意思是“Flymake 当前正在运行”。但是,Flymake 没有显示任何错误。

我检查了*Messages*缓冲区,但它只列出了几行Fontifying foo.js... (regexps...................). 没有错误。

其他建议?