I tried Monroe, yesterday. It seems to work as advertised. I didn't have 
any issues. It's nice that "jump to definition" works out of the box. It 
does not appear to support Eldoc, so no help with function signatures.

This is the Emacs config I'm currently using: 

;;; clojure-mode

(add-to-list 'load-path "~/.emacs.d/site-lisp/third-party/clojure-mode/")
(require 'clojure-mode)
(add-hook 'clojure-mode-hook 'rainbow-delimiters-mode)
(add-hook 'clojure-mode-hook 'paredit-mode)
(add-hook 'clojure-mode-hook 'hs-minor-mode)
(add-hook 'clojure-mode-hook #'eldoc-mode)

;;; REPL

;; Monroe

(add-to-list 'load-path "~/.emacs.d/site-lisp/third-party/monroe/")
(require 'monroe)
(add-hook 'clojure-mode-hook 'clojure-enable-monroe)
(setf monroe-detail-stacktraces 'true)

I went on to include Figwheel. 

I created a new project using `lein new figwheel my-project` (which 
provides the fig-start and cljs-repl functions), and then entered the 
following commands to set up a Clojurescript dev environment: 

M-x monroe-nrepl-server-start
M-x monroe
(fig-start)
(cljs-repl)

On my machine, those 4 steps take about 30 seconds to run. The first takes 
18 seconds, and the rest only take about a second each, but the whole 
process ends up taking close to 30.

Figwheel seems to work great, but I couldn't figure out how to evaluate 
code in a library dependency and have it updated in the running system. I 
can evaluate functions, but the new definitions don't appear to be called 
by the main code. I might be misunderstanding how this is supposed to work; 
I don't know if it's a Figwheel issue or a Monroe issue or my mistake. But 
to work around that, and to fix other issues preventing a clean initial 
compilation, I had to restart the REPL a few dozen times, which was tedious.

I'm posting this information in case it is useful to someone else who is 
trying to discover the current state-of-the-art with running Clojure in 
Emacs in a straightforward, minimal way. I'm also hoping that people will 
reply with comments and suggested improvements. (FWIW, I've been using 
Emacs full-time for about 20 years, Clojure full-time for about 7 years, 
and Common Lisp for 5+ years before that, so I'm not new to REPL-driven 
development in Emacs.)


-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to