summaryrefslogtreecommitdiff
path: root/elisp/geiser-repl.el
diff options
context:
space:
mode:
Diffstat (limited to 'elisp/geiser-repl.el')
-rw-r--r--elisp/geiser-repl.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el
index 26f4168..28a1584 100644
--- a/elisp/geiser-repl.el
+++ b/elisp/geiser-repl.el
@@ -1137,6 +1137,15 @@ With a prefix argument, force exit by killing the scheme process."
(when (re-search-backward comint-prompt-regexp nil 'go n)
(goto-char (match-end 0)))))
+(defun geiser-add-to-load-path (path)
+ "Add a new directory to running Scheme's load path.
+When called interactively, this function will ask for the path to
+add, defaulting to the current buffer's directory."
+ (interactive "DDirectory to add: ")
+ (let* ((c `(:eval (:ge add-to-load-path ,(expand-file-name path))))
+ (r (geiser-eval--send/result c)))
+ (message "%s%s added to load path" path (if r "" " couldn't be"))))
+
;;; Unload: