2024 State of 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时遇到了这个错误
配置

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

如果您对Clojure和Emacs都很陌生,我建议您从头开始,这样您可以尽可能消除尽可能多的变量(例如上面的"evil"包)。网上有一本名为“Clojure for the brave and true”的在线书籍,涵盖了配置除Clojure开发之外的另一个标准Emacs。《a rel="nofollow" href="https://www.braveclojure.com/basic-emacs/" target="_blank">https://www.braveclojure.com/basic-emacs/

顺便说一句,“evil”包在Emacs中提供了类似于vi的模态编辑。如果您需要这个功能,在您的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 是垂直堆叠的,而不是并排。

我已经尝试了其他与网页匹配的键绑定命令,但都没有成功。我还能做什么?
只要您能在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

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

0

我该如何修复它?

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

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

...