在Cursive REPL中加载命名空间

5
我已经在我的电脑上安装了Intellij和Cursive软件,所有的操作看起来都很正常,但是我无法将一个命名空间加载到REPL中,也无法使用Leinigen运行代码。
当我将代码加载到REPL中时,REPL会加载但是没有内容。然后我可以使用REPL。
当我编辑配置文件时,我只能选择普通进程,而不能使用Leiningen运行。
非常感谢您的帮助。

你是否期望在启动时在REPL中加载任何命名空间?这不是标准行为,你需要特殊的配置(比如project.clj中的:init-ns关键字)来调用它。默认情况下,你会得到用户命名空间,以及任何其他你手动要求的命名空间。 - noisesmith
3个回答

10

像大多数Clojure环境一样,Cursive默认不会将任何内容加载到您的REPL中。您可以使用工具→REPL→在REPL中加载文件将代码加载到REPL中。请注意,默认情况下,这不会将您的REPL命名空间切换为加载的文件的命名空间 - 您需要使用工具→REPL→切换REPL NS到当前文件进行切换,或者您可以像往常一样将加载的命名空间要求到用户。

您应该能够创建Leiningen运行配置,其中有一个选项可以使用Lein运行特定任务 - 如果此方法无效,请提供更多关于您尝试的内容和发生情况的信息。


考虑到如果你要做其中一个操作,那么很可能你还需要做另一个操作,而且每次启动IDE时都需要这样做,因此需要两次导航相同的菜单似乎有点愚蠢。 - Carcigenicate

0

以下是帮助我的答案的扩展:

  • 文件 -> 设置 -> 按键绑定

  • 在搜索框中输入 REPL(以便轻松找到相关绑定)。

  • 找到与两个所需菜单选项相关联的绑定(“在 REPL 中加载文件”和“将 REPL NS 切换到当前文件”)。

  • 为它们提供简单且相似的绑定。我使用 ctrl+shift+L 和 ctrl+shift+M

我尝试给它们相同的键,然后忽略冲突警告,试图让它们同时激活,但似乎会忽略绑定的第二个。

这是我迄今为止找到的最佳解决方案。


当然可以在IntelliJ中将按键绑定到任何操作,每个人都这样做,我只是使用菜单名称,以便人们可以找到他们感兴趣的操作。 - Colin
@Colin 对不起,我不应该说这个比你的答案好。我是在极度沮丧的时候写的。 - Carcigenicate
没问题,谢谢您提供绑定按键的说明。我应该将其添加到文档中。 - Colin

0

Alt + Shift + R 是快捷键绑定。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接