From f80a7a6c58539bfdc73a45677fb414e0cae0faef Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Fri, 24 Jul 2015 18:00:54 +0300 Subject: emacs: Add code to call guile procedures. * emacs/guix-guile.el (guix-guile-make-call-expression): New function. * emacs/guix-geiser.el: Require 'guix-guile'. (guix-geiser-call, guix-geiser-call-in-repl): New functions. --- emacs/guix-geiser.el | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'emacs/guix-geiser.el') diff --git a/emacs/guix-geiser.el b/emacs/guix-geiser.el index de139b72ff..eb449bcdb1 100644 --- a/emacs/guix-geiser.el +++ b/emacs/guix-geiser.el @@ -24,6 +24,7 @@ ;;; Code: (require 'geiser-mode) +(require 'guix-guile) (defun guix-geiser-repl () "Return the current Geiser REPL." @@ -79,6 +80,18 @@ If NO-DISPLAY is non-nil, do not switch to the REPL buffer." (unless no-display (geiser-repl--switch-to-buffer repl)))) +(defun guix-geiser-call (proc &rest args) + "Call (PROC ARGS ...) synchronously using the current Geiser REPL. +PROC and ARGS should be strings." + (guix-geiser-eval + (apply #'guix-guile-make-call-expression proc args))) + +(defun guix-geiser-call-in-repl (proc &rest args) + "Call (PROC ARGS ...) in the current Geiser REPL. +PROC and ARGS should be strings." + (guix-geiser-eval-in-repl + (apply #'guix-guile-make-call-expression proc args))) + (provide 'guix-geiser) ;;; guix-geiser.el ends here -- cgit v1.2.3