編輯對於那些我還沒有完全理解但我的CX策註定要EVAL-最後SEXP和,而不是原因(?) slime-eval-last-expression。現在我可以Cx Ce從.clj緩衝區,我至少可以直接看到當我的功能是(正確)但是,但是,這顯然不會使功能我只是slime-eval-last-表達式「可用」給REPL。怎麼辦EVAL-最後SEXP對Clojure的代碼相當於
我設置了我的Emacs來做一些Clojure編程,我不知道我的設置是否正確。
我有兩個緩衝區:一個用於.clj文件,另一個用於REPL。我正在使用clojure-jack-in來啓動REPL。
顯然,我需要時刻編譯.clj(其中也總是強迫我保存提示的文件),然後我需要切換到REPL併發出(使用「myname.space )之前,能夠嘗試,比如說,我寫了一個新的功能。
這是很多按鍵,看起來像一個非常簡單的事情。
當然,我可以編寫一個Emacs宏來做整個保存/確認/切換到REPL/issue(使用'myname.space) shebang但我想知道我的設置是否正確?
我想我的問題換句話說就是:我連接的REPL應該總是與包含.clj的緩衝區「同步」嗎?我正在處理還是不處理?
但我使用* clojure-jack-in * ...如果我問什麼Cx Ce綁定它說* eval-last-sexp *,它顯然試圖評估代碼,就好像它是elisp代碼(?)。換句話說:每次我嘗試從緩衝區中* eval-last-sexp *,我都會得到一個異常。相同的文件使用C-C C-k編譯良好,並且相同的函數在REPL中工作正常(使用剪切/粘貼或調用* use *)。什麼是函數* C-x C-e *應該運行的名稱? * eval-last-sexp *? – 2012-04-25 15:34:15
我認爲第一個問題是我的C-x C-e綁定了* eval-last-sexp *而不是* slime-eval-last-expression *。對於所說的整個問題不是100%肯定的。 – 2012-04-25 16:12:21