Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How I can eval a buffer and/or an instruction within Emacs with Swank and SLIME?

I've successfully installed clojure-mode, slime, slime-repl within Emacs. I start a swank server with "lein swank" and hang slime to it with "slime-connect". I can use the SLIME REPL to evaluating Clojure expression within the REPL.

How can I eval a single s-exp or a whole file (a.k.a I want to run a Clojure file withing Emacs and see the output in a dedicated frame or in the repl) showing the answer in the SLIME REPL?

For example I define a simple binding in a .clj file within my project directory:

(def my-bind [1 2 3])

Now I want SLIME to eval this expression in the repl, so if in the repl I write:

(first my-bind)

I want to obtain 1. How can I do?

like image 535
Alfredo Di Napoli Avatar asked Oct 18 '10 17:10

Alfredo Di Napoli


2 Answers

To eval a single sexp, put your cursor in front of the last closing paren and hit C-x C-e. There is another one to evaluate a surrounding sexp, but I can't for the life of me remember it.

To evaluate the whole file, do C-c C-k

like image 110
Rayne Avatar answered Nov 04 '22 10:11

Rayne


What Rayne said, and there's M-C-x to evaluate the top level expression which the cursor is in.

like image 9
John Lawrence Aspden Avatar answered Nov 04 '22 11:11

John Lawrence Aspden