是否有更简单的方法同时使用clj和#x2B;cljs同时从emacs/苹果酒中回复?

是否有更简单的方法同时使用clj和#x2B;cljs同时从emacs/苹果酒中回复?,emacs,clojure,clojurescript,cider,figwheel,Emacs,Clojure,Clojurescript,Cider,Figwheel,作为一名Clojurian初学者,我可能需要一些帮助,试图了解是否有任何方法可以解决我使用苹果酒REPL的痛苦点 背景: 我有一个完整的应用程序(后端的limunius+前端的re-agent/figwheel)。 我从emacs/Cider Repl启动服务器,并可以从该Repl访问正在运行的服务器的所有名称空间(这非常方便) 在另一个选项卡中,我运行: lein figwheel Figwheel: Cutting some fruit, just a sec ... Figwheel: V

作为一名Clojurian初学者,我可能需要一些帮助,试图了解是否有任何方法可以解决我使用苹果酒REPL的痛苦点

背景: 我有一个完整的应用程序(后端的limunius+前端的re-agent/figwheel)。 我从emacs/Cider Repl启动服务器,并可以从该Repl访问正在运行的服务器的所有名称空间(这非常方便)

在另一个选项卡中,我运行:

lein figwheel
Figwheel: Cutting some fruit, just a sec ...
Figwheel: Validating the configuration found in project.clj
Figwheel: Configuration Valid ;)
Figwheel: Starting server at http://0.0.0.0:3449
Figwheel: Watching build - app
Compiling build :app to "target/cljsbuild/public/js/app.js" from ["src/cljs" "src/cljc" "env/dev/cljs"]...
Successfully compiled build :app to "target/cljsbuild/public/js/app.js" in 4.113 seconds.
Figwheel: Starting CSS Watcher for paths  ["resources/public/css"]
Figwheel: Starting nREPL server on port: 7002
Launching ClojureScript REPL for build: app
所有cljs名称空间都可以从figwheel REPL/tab访问,但它没有连接到Cider/emacs,所以我只能复制并粘贴到那里

有没有一种简单的方法可以在emacs中同时使用两个repl并在它们之间快速切换


或者你的典型工作流程是什么?您是否同时使用后端和前端repl?对不起,我只是在学习,所以我需要两个:)

你肯定可以用苹果酒同时连接到CLJ和CLJS。检查苹果酒文档中的部分TL;DR:您可以使用
C-C-x C m
调用
cider connect clj和cljs

也就是说,对于CLJS,我通常是一个懒惰的人,我让figwheel在保存时重新编译,然后检查前端是否与我正在尝试的一样

编辑:我的设置通常是两个垂直框架,代码在左边,REPL在右边,大多数情况下,计算与
C-C-e
内联的表达式,如果我需要跨多行的任何内容,我会将其写在命名空间末尾的
(注释,,,,)
块上。我不经常使用
C-C-z
在code和REPL之间切换


另外:我使用Ubuntu 18.04中的stock Emacs 25,设置非常简单,但我遇到过一些人,他们使用SpaceMac的工作流程要复杂得多。

当然可以!首先通过在端口7002上打开的苹果酒连接clj(
Figwheel:在端口7002上启动nREPL服务器)连接到repl,然后在弹出的repl微缓冲区中运行
(Figwheel sidecar.repl api/cljs repl)
。然后,您将有功能齐全的cljs repl与clj repl一起运行-您可以使用
苹果酒开关切换到repl buffer
(在clj文件中时,您将被带到clj repl,在cljs文件中时,您将被带到cljs repl)

我不使用emacs,但在Calva(VS代码扩展名)中,我只是分别为clojurescript和clojure运行了两个不同的苹果酒实例。我还为clojure/clojurescript运行了两个不同的vs代码工作区。效果很好,正是我想要的。非常感谢。