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.

我访问了那个URL,但是不理解他们在讨论什么。

我该如何解决这个问题呢?

以及理想的环境设置应该如何,以便在Mac上构建Clojure解决方案呢?

3 答案

+1投票

我在设置EMacs标准配置时遇到了这个错误
配置

你发布的错误信息来自一个EMacs包(evil-collection),它不是标准EMacs配置的一部分。我假设你遵循了某个指南或使用的是Spacemacs或Doom emacs之类的EMacs发行版,它们使用名为“evil”的包并提供预配置。

如果你对Clojure和EMacs都是新手,我建议你从头开始,这样你可以尽可能多地去除变量(如上面提到的“evil”包)。有一本在线书籍“Clojure for the brave and true”,它涵盖了配置EMacs进行Clojure开发的内容。 https://www.braveclojure.com/basic-emacs/

顺便提一下,“evil”包为EMacs提供了一种类似于vi的模态编辑。如果你需要这种功能,你可以在配置Clojure环境后,回过头来配置evil来实现双者的良好集成,或者查看上述提到的某个发行版。

我在自己的机器上卸载并重新安装了emacs。当我重新启动emacs时,Spacemacs出现在应用程序界面上了。

我应该如何彻底删除前一个安装的所有组件和依赖,以便真正从头开始?

(在我遵循所有回答建议之前,我真的需要进行这样的操作吗?)
您提到您在使用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,它应该会显示默认配置。
是的——这些命令成功了——谢谢。
奇怪——我正在按照braveclojure.com/basicemacs页面的操作进行,但是我执行M-x cider-jack-in时,我的窗口并不与网页上的Emacs相同。我的core.clj代码和REPL是垂直堆叠的,而不是并排。

我尝试过匹配网页的其他键绑定命令,但没有成功。我还能做什么呢?
by
只要您能在REPL中键入代码并对其进行评估,那么窗口分栏的方向(垂直或水平)就无关紧要,这只是Emacs决定如何布局窗口的方式。如果您想并排放置,请尝试使用“Control-x 0 Control-x 3”。

为了明确,Emacs与Clojure没有关系,只是Clojure社区很早就因为其Lisp支持而接受Emacs作为首选编辑器之一。如果您不希望在相同的时间内学习两者并通过插件支持Clojure,那么您可能会有其他编辑器和IDE感觉更熟悉:Visual Studio Code有Calva,IntelliJ有Cursive等。我并不是想要阻止您学习Emacs,如果您愿意投入时间学习它,它是一个非常出色的工具,但学习Emacs和Clojure同时进行可能是一个艰巨的任务。
0投票
by

关于设置,我推荐您查看这个Emacs指南:[a rel="nofollow" href="https://emacs-lsp.github.io/lsp-mode/tutorials/clojure-guide/" target="_blank">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

...