summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--elisp/geiser-impl.el6
-rw-r--r--elisp/geiser.el19
2 files changed, 8 insertions, 17 deletions
diff --git a/elisp/geiser-impl.el b/elisp/geiser-impl.el
index fadc8b6..ccb0584 100644
--- a/elisp/geiser-impl.el
+++ b/elisp/geiser-impl.el
@@ -105,6 +105,9 @@
(defsubst geiser-impl--fboundp (imp name)
(fboundp (geiser-impl--sym imp name)))
+(defsubst geiser-impl--impl-feature (impl)
+ (intern (format "geiser-%s" impl)))
+
(defun geiser-impl--value (imp name &optional fun)
(let ((sym (geiser-impl--sym imp name)))
(unless (or (and (not fun) (boundp sym))
@@ -221,7 +224,8 @@ implementation to be used by Geiser."))
;;; Initialization:
-(mapc 'geiser-impl--register geiser-impl-installed-implementations)
+(mapc 'geiser-impl--register
+ (or geiser-impl-installed-implementations '(guile plt)))
(provide 'geiser-impl)
diff --git a/elisp/geiser.el b/elisp/geiser.el
index 42e8cc1..1cc3c51 100644
--- a/elisp/geiser.el
+++ b/elisp/geiser.el
@@ -90,18 +90,10 @@
geiser-xref))
-;;; Scheme mode setup:
+;;; Setup:
-(defsubst geiser-impl--impl-feature (impl)
- (intern (format "geiser-%s" impl)))
-
-(defun geiser-setup ()
- (eval-after-load "scheme"
- '(add-hook 'scheme-mode-hook 'turn-on-geiser-mode))
- (mapc (lambda (impl)
- (require (geiser-impl--impl-feature impl) nil t))
- (or geiser-impl-installed-implementations
- '(guile plt))))
+(eval-after-load "scheme"
+ '(add-hook 'scheme-mode-hook 'turn-on-geiser-mode))
;;; Reload:
@@ -166,10 +158,5 @@ loaded."
(message "Geiser reloaded!")))
-;; Initialization:
-
-(geiser-setup)
-
-
(provide 'geiser)
;;; geiser.el ends here