GNU bug report logs - #79212
31.0.50; Malformed C-h m output

Previous Next

Package: emacs;

Reported by: Eshel Yaron <me <at> eshelyaron.com>

Date: Sun, 10 Aug 2025 18:33:02 UTC

Severity: normal

Found in version 31.0.50

Fixed in version 31.1

Done: Eshel Yaron <me <at> eshelyaron.com>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Eshel Yaron <me <at> eshelyaron.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 31.0.50; Malformed C-h m output
Date: Sun, 10 Aug 2025 20:32:16 +0200
Hi,

With emacs -Q, evaluate the following form:

  (define-derived-mode foo-mode nil "Foo" "Major mode for bar.")

Now switch to a new buffer (C-x b foo RET) and put it in foo-mode with
M-x foo-mode, and then hit C-h m to describe the current major mode.

The Help buffer starts with the following malformed line:

  The major mode is Foo modeMajor mode for bar.

Whereas I would expect something like:

  The major mode is Foo mode.

  Major mode for bar.

The following diff seems to do the trick:

diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index 9cd30107002..5f4734fb69d 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -2252,13 +2252,14 @@ describe-mode
                    (lambda (_)
                      (describe-function major))))
           (insert " mode")
-          (when-let* ((file-name (find-lisp-object-file-name major nil)))
-	    (insert (format " defined in %s:\n\n"
-                            (buttonize
-                             (help-fns-short-filename file-name)
-                             (lambda (_)
-                               (help-function-def--button-function
-                                major file-name))))))
+          (if-let* ((file-name (find-lisp-object-file-name major nil)))
+	      (insert (format " defined in %s:\n\n"
+                              (buttonize
+                               (help-fns-short-filename file-name)
+                               (lambda (_)
+                                 (help-function-def--button-function
+                                  major file-name)))))
+            (insert ".\n\n"))
           (insert (help-split-fundoc (documentation major) nil 'doc)
                   (with-current-buffer buffer
                     (help-fns--list-local-commands)))




This bug report was last modified 1 day ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.