diff options
Diffstat (limited to 'elisp')
| -rw-r--r-- | elisp/geiser-impl.el | 21 | 
1 files changed, 11 insertions, 10 deletions
| diff --git a/elisp/geiser-impl.el b/elisp/geiser-impl.el index 4a5ce17..7df87cf 100644 --- a/elisp/geiser-impl.el +++ b/elisp/geiser-impl.el @@ -88,6 +88,10 @@ determine its scheme flavour."    (let* ((user (if user (format " Used via `%s'." user) ""))           (extra-doc (format "%s%s" doc user)))      (add-to-list 'geiser-impl--method-docs (cons method extra-doc)) +    (setq geiser-impl--method-docs +          (sort geiser-impl--method-docs +                (lambda (a b) (string< (symbol-name (car a)) +                                  (symbol-name (car b))))))      (put method 'function-documentation doc)))  (defun geiser-implementation-help () @@ -102,16 +106,13 @@ determine its scheme flavour."        (princ "\n\n  (define-geiser-implementation NAME &rest METHODS)\n\n")        (princ (documentation 'define-geiser-implementation))        (princ "\n\nMethods used to define an implementation:\n\n") -      (let ((ms (sort (copy-list geiser-impl--method-docs) -                      (lambda (a b) (string< (symbol-name (car a)) -                                        (symbol-name (car b))))))) -        (dolist (m ms) -          (let ((p (with-current-buffer (help-buffer) (point)))) -            (princ (format "%s: " (car m))) -            (princ (cdr m)) -            (with-current-buffer (help-buffer) -              (fill-region-as-paragraph p (point))) -            (princ "\n\n")))) +      (dolist (m geiser-impl--method-docs) +        (let ((p (with-current-buffer (help-buffer) (point)))) +          (princ (format "%s: " (car m))) +          (princ (cdr m)) +          (with-current-buffer (help-buffer) +            (fill-region-as-paragraph p (point))) +          (princ "\n\n")))        (with-current-buffer standard-output (buffer-string)))))  (defun geiser-impl--register-local-method (var-name method fallback doc) | 
