]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't redundantly cl-print arglist in function docstring again
authorNoam Postavsky <npostavs@gmail.com>
Sun, 28 May 2017 02:40:46 +0000 (22:40 -0400)
committerNoam Postavsky <npostavs@gmail.com>
Thu, 29 Jun 2017 23:40:23 +0000 (19:40 -0400)
* lisp/emacs-lisp/cl-print.el (cl-print-object): Don't print arglist
part of docstring.
* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1): Update
test accordingly.

lisp/emacs-lisp/cl-print.el
test/lisp/emacs-lisp/cl-print-tests.el

index 89a71d1b6c51683327aca7b2bf17b60bb06166da..824d0b7b4f51f50021bf88a4b000d0d6826ed4ba 100644 (file)
@@ -105,10 +105,11 @@ into a button whose action shows the function's disassembly.")
     (if args
         (prin1 args stream)
       (princ "()" stream)))
-  (let ((doc (documentation object 'raw)))
-    (when doc
-      (princ " " stream)
-      (prin1 doc stream)))
+  (pcase (help-split-fundoc (documentation object 'raw) object)
+    ;; Drop args which `help-function-arglist' already printed.
+    (`(,_usage . ,(and doc (guard (stringp doc))))
+     (princ " " stream)
+     (prin1 doc stream)))
   (let ((inter (interactive-form object)))
     (when inter
       (princ " " stream)
index dfbe18d7844768e372eff9ac3bba44b84e710b83..6448a1b37f72bfadf267585146ced509e15cedb7 100644 (file)
@@ -34,7 +34,7 @@
     (let ((print-circle t))
       (should (equal (cl-prin1-to-string `((x . ,x) (y . ,x)))
                      "((x . #1=#s(cl-print--test :a 1 :b 2)) (y . #1#))")))
-    (should (string-match "\\`#f(compiled-function (x) .*\n\n.*)\\'"
+    (should (string-match "\\`#f(compiled-function (x) \"[^\"]+\" [^\)]*)\\'"
                           (cl-prin1-to-string (symbol-function #'caar))))))
 
 (ert-deftest cl-print-tests-2 ()