2015-04-01 66 views
1

当我尝试在nREPL中输入Clojure Set字面值时,在'#'和'{'之间增加了一个空格,使nREPL堆栈跟踪在返回时该线。苹果酒的nREPL搞乱了我的设置字面值

; CIDER 0.8.2 (Java 1.7.0_71, Clojure 1.6.0, nREPL 0.2.6) 
user> ;; If I type '#{' to try and start a Set literal something jacks in a space 
user> ;; between the # and the { such that my form becomes invalid. 
user> ;; How do I stop this bad behavior? 
user> # {"one" "two"} 
RuntimeException Reader tag must be a symbol clojure.lang.LispReader$CtorReader.invoke (LispReader.java:1162) 
user> ;; What I wanted was... 
user> #{"one" "two"} 
#{"two" "one"} 
user> 

是什么原因导致的,我该如何阻止它?

我不知道如果我的.emacs.d/init.el事项,但其漂亮的瘦关于苹果酒配置...

; 2015-03-30 more Clojure support 
(add-hook 'clojure-mode-hook 'paredit-mode) 
(add-hook 'cider-repl-mode-hook #'paredit-mode) 
(add-hook 'cider-repl-mode-hook #'rainbow-delimiters-mode) 

我是新来这个Clojure的东西,任何帮助不胜感激。

+2

尝试升级您的clojure模式,最新的clojure模式应该已经修复该行为https://github.com/clojure-emacs/clojure-mode/blob/master/clojure-mode.el#L189-L207 – mavbozo 2015-04-01 18:07:34

+0

@mavbozo做到了这一招......我是3.0.something并升级到4.0.1修复了这个问题。谢谢。 – 2015-04-01 18:20:39

+2

顺便说一句,CIDER没有nREPL - 它有一个REPL。 :-) – 2015-04-01 19:50:28

回答

0

@mavbozo解决了它。这个问题在clojure-mode-4.0.1中修复。这没东西看。继续。