【发布时间】:2018-02-20 01:16:03
【问题描述】:
我刚开始使用以下模板制作一个简单的 cljs 应用程序:
lein new figwheel someproject -- --reagent
我希望将苹果酒中的 REPL 用于 cljs 开发,就像我通常用于普通 clj 项目一样,所以我做了一些研究并最终来到这里:
https://github.com/bhauman/lein-figwheel/wiki/Using-the-Figwheel-REPL-within-NRepl
我通读了说明,并确认所有正确的依赖项都在 project.clj 中(无需更改任何内容,看起来模板添加了我需要的所有内容)。上述链接中的最后一步表明我需要将以下代码添加到我的 emacs 配置中:
(require 'cider)
(setq cider-cljs-lein-repl
"(do (require 'figwheel-sidecar.repl-api)
(figwheel-sidecar.repl-api/start-figwheel!)
(figwheel-sidecar.repl-api/cljs-repl))")
现在 - 我是一个 emacs 新手,所以我使用的设置仍然是我第一次从“Clojure for the Brave and True”中学到的设置:
https://github.com/flyingmachine/emacs-for-clojure
我尝试先将上面的 sn-p 放入~/.emacs.d/init.el,但是每当我尝试M-x cider-jack-in ... 时,都没有cider-jack-in-clojurescript 选项。我还尝试将 sn-p 放在 ~/.emacs.d/customizations/setup-clojure.el 中,这似乎是一个更合乎逻辑的家,但结果相同。
我真的很想能够启动并运行这个 REPL,所以任何帮助都将不胜感激。
【问题讨论】:
-
作为一个 emacs 新手,我强烈建议使用 Emacs 发行版,该发行版已经为您设置好了所需的一切。 Emacs Prelude 和 Emacs Live 是主要的竞争者——两者都得到积极维护,而不是你链接到的那个似乎在过去 3-4 年没有得到爱。
-
谢谢@CharlesDuffy - 虽然我一直在学习 Clojure,但我试图尽量减少同时深入研究 emacs 细节的负担 - 一次太多。我坚持使用这个设置只是因为我已经习惯了它的所有包/默认值等,并且对从头开始并确保我再次正确设置所有内容持谨慎态度。不过我明白你的意思,最终会转向更强大的东西。
-
@Solaxun Spacemacs 和 Clojure layer 也是一个好的开始。我也开始使用 Brave 和 True 设置,但 Spacemacs 提供了更好的默认设置和电池(例如,错误消息总是在同一个缓冲区中弹出而不是随机弹出;
clj-refactor)。来自 Brave 和 True 的键绑定也在那里工作,您可以通过按,(主要模式)来发现其他人,然后查看选项弹出。 1.安装emacs。 2. d/l spacemacs。 3. 将 clojure 添加到 ~/.spacemacs 层。 -
我不断听到关于 Spacemacs 的好消息 - 我没有转向其他东西(如 Prelude、Spacemacs 等)的唯一原因是因为我不想花时间设置所有东西又起来了。但实际上我可能只添加了一些超出默认值的东西,所以它应该不会太糟糕,也许我会给 Spacemacs 一个机会。顺便说一句 - 我过去读过你的博客(Clojure 中的 PAIP) - 真的很喜欢!
-
@Solaxun 哈哈太棒了。很好听。也许有一天我会完成第 5 章 :)。你知道 PAIP 吗?
标签: clojure cider nrepl figwheel