diff --git a/.emacs.d/lisp/init-scheme.el b/.emacs.d/lisp/init-scheme.el index 87427315..896acd88 100644 --- a/.emacs.d/lisp/init-scheme.el +++ b/.emacs.d/lisp/init-scheme.el @@ -20,6 +20,19 @@ (add-hook 'scheme-mode-hook 'al/scheme-fix-docstring-font-lock))) (with-eval-after-load 'geiser-impl + (helm-defswitcher + "Geiser-REPL" + (lambda (b) + (with-current-buffer b + (derived-mode-p 'geiser-repl-mode))) + (lambda (&optional candidate) + (defun ambrevar/geiser-repl-buffer-name (impl) + (format "* %s%s *" (geiser-repl--repl-name impl) + (if candidate (format "-%s" candidate) ""))) + (advice-add 'geiser-repl-buffer-name :override 'ambrevar/geiser-repl-buffer-name) + (call-interactively 'run-geiser) + (advice-remove 'geiser-repl-buffer-name 'ambrevar/geiser-repl-buffer-name))) + ;; (setq geiser-repl-skip-version-check-p t ;; geiser-mode-start-repl-p t) (setq geiser-active-implementations (delq 'chicken geiser-active-implementations)