我正在使用带有 Spacemacs 配置的 emacs(启用了 javascript 层,未启用语法检查)。在 js2 模式下,我发现发生了错误的 linting(即.eslintrc
,我的项目根目录中有一个文件,并且它的配置被忽略 - 从 cli 运行 eslint 给我零错误,但错误出现在缓冲区中)。
在这一点上,我有点不知所措,甚至可能会产生这些掉毛错误。据我所知,它们必须来自 flycheck(我在 javascript 层代码中注意到这一行,即使文档中没有提到 flycheck,我也找不到调用它的位置)。但是,我可以发誓 Flycheck 没有开启。我对此非常肯定,因为
- 我尝试
flycheck-mode
通过交互式迷你缓冲区手动切换 - 我已经运行
describe-mode
并确保没有提及 flycheck、linting 或语法检查 flycheck-verify-setup
报告Flycheck Mode is disabled.
- 我添加了一个
(add-hook 'flycheck-mode-hook (lambda () (message "entered flycheck mode")))
永远不会触发的钩子
那么我缓冲区中的这些错误可能来自哪里?
这是.spacemacs
摘录
dotspacemacs-configuration-layers
'(
;; ----------------------------------------------------------------
;; Example of useful layers you may want to use right away.
;; Uncomment some layer names and press <SPC f e R> (Vim style) or
;; <M-m f e R> (Emacs style) to install them.
;; ----------------------------------------------------------------
javascript
html
helm
auto-completion
git
better-defaults
colors
;; emacs-lisp
markdown
clojure
;; org
;; (shell :variables shell-default-position 'bottom)
;; spell-checking
;; react
;; syntax-checking
version-control
)
;; List of additional packages that will be installed without being
;; wrapped in a layer. If you need some configuration for these
;; packages, then consider creating a layer. You can also put the
;; configuration in `dotspacemacs/user-config'.
dotspacemacs-additional-packages '(
paredit
editorconfig
writeroom-mode
tide
csharp-mode
elisp-format
;; powershell
omnisharp
gist
parinfer
ag )