2016-02-07 65 views
0

ClojureScript noob here。無法啓動遠程ClojureScript bREPL(它說「無法解析符號...」)

我下面使用Boot以下ClojureScript教程:https://github.com/magomimmo/modern-cljs/blob/master/doc/second-edition/tutorial-02.md#browser-repl-brepl

我能理解,並通過運行boot repl -c和n然後(start-repl)命令行的/ boot REPL連接到我的網站,但我想連接到該網站使用基於更豐富的文本編輯器的REPL。

我已經下載了原子文本編輯器的ProtoRepl。我可以給它的REPL的主機+端口連接到REPL就好了,但是當我嘗試運行(start-repl)它拋出的錯誤:

(start-repl) 
=> CompilerException java.lang.RuntimeException: Unable to resolve symbol: start-repl in this context, compiling:(C:\Users\Zain\AppData\Local\Temp\boot.user4327288409706217009.clj:1:1) 

好像我錯過了一些ClojureScript /啓動具體的進口,但我不確定要添加什麼或如何添加它。

下面是一些額外的調試信息:

運行(DEF啓動REPL)工作啓動REPL連接上,VS失敗的原REPL連接:

啓動REPL:

cljs.user=> (def start-repl) 
#'cljs.user/start-repl 

Proto-repl:

(def start-repl) 
=> 
#'user/start-repl 
+0

如果您已經在cljs repl中,爲什麼還需要更多? – nha

+0

@nha因爲Boot repl是基於控制檯的,並錯過了諸如基於語法的顏色編碼等很好的功能 –

回答

0

start-repl命令由adzerk boot-cljs-repl庫提供。如果您在cljs.user命名空間的時候,該命令將是:

(adzerk.boot-cljs-repl/start-repl)

如果這是您第一次進入bREPL,原-REPL是怎麼回事每次擊鍵拋出一個錯誤。這是Proto-REPL嘗試並未能驗證/自動完成你的clojure表達式。擺脫這些錯誤的最快的方式就是禁用自動完成:

  1. 轉到Atom的首
  2. 點擊「包」
  3. 在「已安裝的軟件包」搜索「原REPL」
  4. 點擊「設置」中的「原REPL」框下顯示
  5. 向下滾動到「啓用自動完成」設置和取消選中該複選框
  6. 重啓原子

通過再次啓動Brepl的步驟,你應該有一個體面的工作瀏覽器repl。

+0

歡迎,並感謝您的答案:)我知道這只是一行,但將該命令放入格式化的代碼塊可能是值得的麻煩。這改善了...以及不像「可掃描性」那麼多的可讀性,但這也很好。 – elc

0

它看起來像從教程中,開始回報樂趣ction位於boot.user命名空間中。 Proto REPL默認使用用戶名空間。嘗試(boot.user/start-repl)