summaryrefslogtreecommitdiff
path: root/elisp
diff options
context:
space:
mode:
Diffstat (limited to 'elisp')
-rw-r--r--elisp/geiser-eval.el1
-rw-r--r--elisp/geiser-racket.el7
2 files changed, 5 insertions, 3 deletions
diff --git a/elisp/geiser-eval.el b/elisp/geiser-eval.el
index df31594..ffe3306 100644
--- a/elisp/geiser-eval.el
+++ b/elisp/geiser-eval.el
@@ -113,6 +113,7 @@ module-exports, autodoc, callers, callees and generic-methods.")
(mapconcat 'geiser-eval--scheme-str code " ")
")"))))
((symbolp code) (format "%s" code))
+ ((stringp code) (format "%S" (substring-no-properties code)))
(t (format "%S" code))))
diff --git a/elisp/geiser-racket.el b/elisp/geiser-racket.el
index 0508d6c..cd4cc8a 100644
--- a/elisp/geiser-racket.el
+++ b/elisp/geiser-racket.el
@@ -98,12 +98,12 @@ This function uses `geiser-racket-init-file' if it exists."
(defun geiser-racket--geiser-procedure (proc &rest args)
(case proc
((eval compile)
- (format ",geiser-eval %s %s %s"
+ (format ",geiser-eval %s %s %s\n"
(or (car args) "#f")
(geiser-racket--language)
(mapconcat 'identity (cdr args) " ")))
((load-file compile-file)
- (format ",geiser-eval geiser/main racket (geiser:%s %s)"
+ (format ",geiser-eval geiser/main racket (geiser:%s %s)\n"
proc (car args)))
((no-values) ",geiser-no-values")
(t (format ",apply geiser:%s (%s)" proc (mapconcat 'identity args " ")))))
@@ -150,7 +150,8 @@ This function uses `geiser-racket-init-file' if it exists."
(format "(require %s)" module)))
(defun geiser-racket--exit-command ()
- (not (geiser-eval--send/result '(:eval (exit) geiser/emacs))))
+ (comint-send-eof)
+ (get-buffer-process (current-buffer)))
(defconst geiser-racket--binding-forms
'(for for/list for/hash for/hasheq for/and for/or