问题标签 [cider]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
615 浏览

emacs - 如何在 Emacs 中正确配置 CIDER 的代码补全?

我已经将 CIDER 安装到了我的基本 Emacs 中,当我在cider-mode(也在clojure-mode)我尝试使用M-TAB来完成代码时,我得到了

不是 nREPL dict 对象:%

其中%是任意函数。例如,如果我尝试map在这一行中完成代码:

我在消息缓冲区中看到以下内容:

完成--一些:不是 nREPL 字典对象:地图

我在我的 Emacs 中做了一个白板,所以我init.el看起来像这样:

我观察到一件有趣的事情。当我cider-jack-in连接到 nREPL 时,在 REPL 缓冲区中我看到以下内容:

警告:CIDER 的版本 (0.13.0-snapshot) 与 cider-nrepl 的版本 (nil) 不匹配。事情会破裂!

我究竟做错了什么?我无法让 CIDER 的代码完成工作。M-TAB即使使用简单的选项,它也不起作用。

我正在使用 Emacs 24.3.1。

0 投票
2 回答
294 浏览

emacs - 在交互式开发过程中使用 clojure.repl 函数的最佳实践是什么?

在处理 clojure 源代码时,我经常发现自己在反复输入(ns user)和按。C+c M+n问题是我经常使用像sourceand之类的函数doc,它们在clojure.repl并且我不想将:require它们添加到我的命名空间中。在这种情况下,有经验的clojurians 在做什么?

澄清:我知道 clojure 的命名空间是如何工作的。我想要实现的是能够调用(source myfunc)(doc myfunc)等等,而不需要在 REPL 中使用完全限定的名称,也不clojure.repl需要在我的每个命名空间中使用函数。

0 投票
1 回答
145 浏览

emacs - 尝试更新苹果酒后无法启动苹果酒 REPL

尝试更新 Cider 后,我一直无法启动 repl。

我收到以下错误消息,显然表明 Leiningen 存在问题:

谁能告诉我可能是什么问题?

0 投票
0 回答
272 浏览

emacs - 我应该如何为 cider-jack-in 配置 Vulkan?

我正在使用CIDER完成新发布的Clojure中的Vulkan 教程,但遇到了一些障碍。示例makefile 项目完美运行,但我无法将其转换为 Clojure。

我的build.boot文件只是指定:source-paths并添加LWJGL作为依赖项:

然后,在 中src/example/core.clj,我有一个extension-count使用vkEnumerateInstanceExtensionProperties原始示例中演示的函数:

现在,在 Bash 中,我可以设置相关的环境变量LD_LIBRARY_PATH,并VK_LAYER_PATH在启动 REPL 时:

如您所见,一切正常。但是,当然,当我改用cider-jack-inby时C-c M-j,我得到一个UnsatisfiedLinkError因为 CIDER 没有设置这些变量:

我应该设置java.library.pathorg.lwjgl.librarypath,如上述错误消息中所建议的那样,而不是LD_LIBRARY_PATH?我可以设置这些变量中的任何一个profile.boot

现在,当我C-c M-j再次尝试时,它可以工作:

但是,这仍然不允许我设置VK_LAYER_PATH,这在未来将相当重要:

我们将开始在 Vulkan 中使用验证层,您需要使用VK_LAYER_PATH变量告诉 Vulkan 库从何处加载这些验证层:

如何设置这些环境变量cider-jack-in?我不希望在单独的终端中为独立的 repl手动配置 CIDER 的依赖项,然后使用 连接到它cider-connect,但如果这里没有其他选项,我想这就是我必须做的。

0 投票
1 回答
438 浏览

emacs - Emacs Cider Repl 缓冲区内的长输出

当使用带有 Cider 插件的 Emacs 时,在 REPL 缓冲区内移动会变得非常缓慢,因为意外将大量输出打印到 REPL 缓冲区。

  • 有没有办法配置 Leiningen(或 nrepl?)以限制 repl 中的一次评估允许打印的行数?
  • 有没有办法让 Emacs 在输出发生后清除缓冲区?

提前致谢!

0 投票
1 回答
214 浏览

emacs - boot-clj: cider-jack-in 后的浏览器 repl

我在 emacs 中启动“引导开发”过程以便之后将其与苹果酒一起使用的工作流程是这样的:

  • 转到外壳缓冲区。
  • 输入“引导开发”
  • 等到消息“时间已过...”
  • 苹果酒连接(输入,输入)

如果它是 ClojureScript 项目,可以使用以下命令启动浏览器 repl:

当使用 cider-jack-in 来缓解这一点时,我在最后一步中遇到了问题,即 ClojureScript repl。这是错误消息的开头:

(完整的信息可以在这里找到:http: //pastebin.com/chBNByKG

我确实根据苹果酒手册添加了 ~/.boot/profile.boot 。

0 投票
0 回答
57 浏览

emacs - Clojure:&form 元数据的列信息

环境

  • 操作系统:OS X 优胜美地 (10.10.4)
  • GNU Emacs 24.5.1
  • 苹果酒 0.14.0 快照(包:20160806.2354)
  • [org.clojure/tools.nrepl“0.2.12”]
  • [苹果酒/苹果酒-nrepl“0.14.0-SNAPSHOT”]

如果我运行此代码

功能的打印结果是

但是,外功能的打印结果是

我希望两个结果都变成相同的列号,但没有。这是正确的行为吗?如果是这样,请告诉我函数内部和外部列索引不同的原因。

附加信息

lein repl使用和时的输出结果(require target-file)相同,使用cider-jack-in和时的输出cider-load-buffer也相同。cider-jack-in使用和时出现问题cider-eval-last-sexp

这种行为是苹果酒的一个错误。我在苹果酒 github 上创建了一个问题。

0 投票
1 回答
1662 浏览

emacs - 进程前哨错误:无法启动 nREPL 服务器

尝试在 Emacs 24.4.1 上的当前缓冲区中使用带有 clojure 项目文件的ciderMx开始。cider-jack-in我明白了error in process sentinel: Could not start nREPL server

nREPL 是否需要单独安装...这是其他人在使用 24.4.1 时遇到的错误吗?

消息缓冲区: Starting nREPL server via /usr/bin/lein update-in :dependencies conj \[org.clojure/tools.nre\ |11:56:07 hello: |pl\ \"0.2.12\"\] -- update-in :plugins conj \[cider/cider-nrepl\ \"0.14.0-SNAPSHOT\"\] -- re\ |11:56:07 hello: |pl :headless... |11:56:08 hello: |error in process sentinel: nrepl-server-sentinel: Could not start nREPL server: ^[[?25h^[[0G\

0 投票
1 回答
99 浏览

emacs - Spacemacs 苹果酒测试没有失败

当我通过 Clojure 模式在 Spacemacs 中运行测试时,<SPC> m t t它不会显示失败,即使测试明显失败。看:

测试没有失败

1 不等于 2,但仍然有 0 次测试失败。

我怎样才能使测试失败?

0 投票
1 回答
177 浏览

emacs - cider-jack-in 后启动启动任务

通过 cider-jack-in 启动启动项目后,如何启动特定的启动任务?

在 repl(dir boot.user)中揭示了build.boot. 但是,通过eg调用一个(dev)没有效果,至少该任务中定义的环服务器无法连接。从命令行使用时boot dev,它可以工作。我需要切换到 cider-jack-in 的原因是它看起来在 shell/cider-connect 方法中没有办法打印/记录到 emacs 缓冲区而不是默认 shell(它与所有编译消息)。