2024 Clojure状态调查问卷中分享您的想法!

欢迎!请查看关于页面了解更多这方面的信息。

0
工具

你好,

我对这一切都还很陌生...

我在使用标准配置设置Emacs时遇到了这个错误

Warning (evil-collection): `evil-want-keybinding' was set to nil but not before loading evil.

Make sure to set `evil-want-keybinding' to nil before loading evil or evil-collection.

See https://github.com/emacs-evil/evil-collection/issues/60 for more details.

我去了网站链接,但无法理解他们讨论的内容。

我该如何解决这个问题?

以及,在Mac上构建Clojure解决方案的理想设置是什么?

3 个答案

+1

我在使用标准配置设置Emacs时遇到了这个错误
配置

您发布的错误来自于一个名为(evil-collection)的Emacs包,但它不是标准Emacs配置的一部分。我假设您遵循了一个指南或使用Spacemacs或Doom emacs等Emacs发行版,这些发行版使用了名为“evil”的包并提供预配置。

如果您对Clojure和Emacs都很陌生,我建议您从头开始,这样可以尽可能地移除变量(如上面所述的“evil”包)。有一本在线书籍《Clojure for the brave and true》,它涵盖了为Clojure开发配置标准Emacs。 https://www.braveclojure.com/basic-emacs/

顺便说一句,“evil”包提供了类似于vi的Emacs中的模式编辑。如果您在寻找这个,在您的Clojure环境设置好之后,您可以返回配置evil使其两者都能良好工作,或者查看上面提到的发行版之一。

by
我已经在我的电脑上卸载并重新安装了 emacs,当我再次启动 emacs 时,Spacemacs 应用就出现了。

我该如何清除之前安装的所有组件和依赖,从而真正从头开始?

(在进行任何回复中的建议之前,我不需要这样做吗?)
by
你提到你使用的是 Mac。实际上,emacs 配置可以存储在多个位置。首先关闭 emacs。无需卸载它,只需关闭它即可。然后在终端(mac 中的 Terminal.app)中尝试以下命令

- rm -R ~/.emacs
- rm ~/.emacs.el
- rm -R ~/.emacs.d
- rm -R ~/.config/emacs

我并不是 Spacemacs 的用户,所以我对该分发的具体细节不太了解。快速搜索提及的文件是 `~/.spacemacs`,所以也可能需要删除它

- rm ~/.spacemacs

上述大多数命令将根据您配置文件存储的位置而失败,但至少会成功一个。运行这些命令后,尝试再次启动 emacs,它应该会显示其默认配置。
by
是的,这些命令都生效了,谢谢。
by
奇数 -- 我正在按照 braveclojure.com/basicemacs 页面进行操作,但当我执行 M-x cider-jack-in 时,我的窗口与网页上的 Emacs 并不相同。我的 core.clj 代码和 REPL 位于垂直堆叠中,而不是并排。

我已经尝试了其他匹配网页的关键绑定命令,但没有成功。我还能做些什么呢?
by
只要您可以在 REPL 中输入代码并得到执行,则窗口分割是垂直还是水平就无关紧要了,这只是 Emacs 决定的窗口布局方式。如果您想将它们并排显示,可以尝试使用 "Control-x 0 Control-x 3"。

为了明确起见,Emacs 与 Clojure 没有关系,只是 Clojure 社区早些时候选择了 Emacs 作为其首选编辑器之一,因为其支持 Lisp。如果您不想同时学习两者并通过插件支持 Clojure,还有其他编辑器和 IDE 可能更符合您的需求:Visual Studio Code拥有Calva,IntelliJ拥有Cursive等。我并不是想阻止您学习 Emacs,如果能够投入学习,它是一款非常好的工具,但学习 Emacs 和 Clojure 同时进行可能是一项艰巨的任务。
0
by

关于设置,我建议您查看这篇 Emacs 指南:https://emacs-lsp.github.io/lsp-mode/tutorials/clojure-guide/

0
by

我该如何解决这个问题?

取决于您如何安装和配置 evil。如果您使用 use-package,这是[1] 一种方法。

[1] https://github.com/AirManH/.emacs.d/commit/6f7e3082a005cee9b413d62ffafb40e3e8ae3ed2

...