diff options
| -rw-r--r-- | elisp/geiser-popup.el | 10 | 
1 files changed, 4 insertions, 6 deletions
| diff --git a/elisp/geiser-popup.el b/elisp/geiser-popup.el index a9a7b5f..582d5a3 100644 --- a/elisp/geiser-popup.el +++ b/elisp/geiser-popup.el @@ -42,20 +42,18 @@       (defun ,get-buff ()         (or (get-buffer ,name)             (with-current-buffer (get-buffer-create ,name) -             (,mode) +             (funcall ',mode)               (geiser-popup--setup-view-mode)               (current-buffer))))       (defun ,pop-buff (&optional ,method) -       (let ((,buffer (,get-buff))) +       (let ((,buffer (funcall ',get-buff)))           (unless (eq ,buffer (current-buffer))             (cond ((eq ,method 'buffer) (view-buffer ,buffer))                   ((eq ,method 'frame) (view-buffer-other-frame ,buffer))                   (t (view-buffer-other-window ,buffer))))))       (defmacro ,with-macro (&rest body) -       (let ((buff ',get-buff)) -         `(with-current-buffer (funcall ',buff) -            (let ((inhibit-read-only t)) -              ,@body)))) +       (list 'with-current-buffer (list ',get-buff) +             (cons 'let (cons '((inhibit-read-only t)) body))))       (put ',with-macro 'lisp-indent-function 'defun))))  (put 'geiser-popup--define 'lisp-indent-function 1) | 
