diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-03-17 13:36:40 +0100 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-03-17 13:36:40 +0100 |
commit | fe377ee5eda90a7426ff9e6dc3591c6b9e04c66d (patch) | |
tree | eb59db169e3d5faa9c413c43889028623f1d93f3 /elisp/geiser-larceny.el | |
parent | 880d17da7bdd08da11dd3c8d55da98b1f8c34b0c (diff) | |
download | geiser-guile-fe377ee5eda90a7426ff9e6dc3591c6b9e04c66d.tar.gz geiser-guile-fe377ee5eda90a7426ff9e6dc3591c6b9e04c66d.tar.bz2 |
Misc nits and work in progress.
Diffstat (limited to 'elisp/geiser-larceny.el')
-rw-r--r-- | elisp/geiser-larceny.el | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/elisp/geiser-larceny.el b/elisp/geiser-larceny.el index f010cfb..7cc3816 100644 --- a/elisp/geiser-larceny.el +++ b/elisp/geiser-larceny.el @@ -24,6 +24,7 @@ ;;; Code: +(require 'geiser-eval) (require 'geiser-impl) (require 'geiser-syntax) (require 'geiser-custom) @@ -44,15 +45,27 @@ :type 'string :group 'geiser-larceny) +(defcustom geiser-larceny-mode 'err5rs + "Mode to use when starting the Larceny REPL." + :type '(choice (const :tag "ERR5RS" err5rs) + (const :tag "R5RS" 'r5rs)) + :group 'geiser-larceny) + ;;; REPL support: (defun geiser-larceny-parameters () "Return a list with all parameters needed to start Larceny." - `("-err5rs" "-path" ,(expand-file-name "larceny/" geiser-scheme-dir))) + `(,(if (eq 'r5rs geiser-larceny-mode) "-r5rs" "-err5rs") + "-path" ,(expand-file-name "larceny/" geiser-scheme-dir))) (defconst geiser-larceny-prompt-regexp "^\\(debug\\)?> ") +(defun geiser-larceny--startup () + (when (eq 'err5rs geiser-larceny-mode) + (geiser-eval--send/wait '(import (rnrs)))) + (geiser-eval--send/wait '(require (geiser)))) + (defun switch-to-larceny (&optional ask) (interactive "P") (switch-to-geiser ask 'larceny)) @@ -92,7 +105,7 @@ If MODULE is provided, transform it to such a datum." (defun geiser-larceny-guess () "Return `t' if the current buffer looks like a Larceny file." - (and (geiser-larceny-get-module) t)) + (listp (geiser-larceny-get-module)) t) ;;; Register this implementation: |