Package: emacs;
Reported by: Sean Devlin <spd <at> toadstyle.org>
Date: Fri, 1 Aug 2025 22:17:02 UTC
Severity: normal
Tags: patch
Message #14 received at 79143 <at> debbugs.gnu.org (full text, mbox):
From: Sean Devlin <spd <at> toadstyle.org> To: Eli Zaretskii <eliz <at> gnu.org> Cc: Christopher Howard <christopher <at> librehacker.com>, 79143 <at> debbugs.gnu.org Subject: Re: bug#79143: [PATCH] New user option to inhibit Calc startup message Date: Sat, 2 Aug 2025 11:04:22 -0500
[Message part 1 (text/plain, inline)]
> On Aug 2, 2025, at 9:51 AM, Sean Devlin <spd <at> toadstyle.org> wrote: > >> >> On Aug 2, 2025, at 1:33 AM, Eli Zaretskii <eliz <at> gnu.org> wrote: >> >>> From: Sean Devlin <spd <at> toadstyle.org> >>> Date: Fri, 1 Aug 2025 17:15:36 -0500 >>> >>> This is a patch adding a new user option to suppress Calc’s startup >>> message. >>> >>> By default, Calc prints a message like this during startup: >>> >>> "Welcome to the GNU Emacs Calculator! Press ? or M-x calc-help-prefix >>> for help, q to quit" >>> >>> I find this a bit distracting, so I’d like to be able to silence it. The >>> attached patch adds an option to allow this along with a small test >>> harness and documentation in the NEWS file. >>> >>> Please let me know if any changes are needed to the patch. >> >> Thanks. >> >> Christopher, any comments? (I hope you don't mind being involved in >> maintenance of Calc by way of reviewing patches of others.) >> >>> From 1ad1f17b6c9326ffc009c6de5c5f2b9929014f52 Mon Sep 17 00:00:00 2001 >>> From: Sean Devlin <spd <at> toadstyle.org> >>> Date: Fri, 1 Aug 2025 17:05:48 -0500 >>> Subject: [PATCH] New user option to inhibit Calc startup message >>> MIME-Version: 1.0 >>> Content-Type: text/plain; charset=UTF-8 >>> Content-Transfer-Encoding: 8bit >>> >>> * etc/NEWS: Document the new option. >>> * lisp/calc/calc.el (calc-inhibit-startup-message): New option to >>> inhibit Calc’s startup message. >>> (calc): Respect the option in Calc’s startup code. >>> * test/lisp/calc/calc-tests.el (ert): Require ert-x for >>> 'ert-with-message-capture'. >>> (calc-inhibit-startup-message): Test the new user option. >> >> Should this new option be in the Calc manual as well? If you agree >> and send an updated patch for that, then please (a) mention the bug >> number in the commit log message, and (b) mark the NEWS entry as >> "+++", to indicate that the relevant manuals have been updated. > > Hi Eli, > > I’ve taken a stab at this. Please see the attached patch, and let me know if the > language or formatting need any revision. > > Thanks! > > <0001-Add-user-option-to-inhibit-Calc-startup-message.patch> Wait, try this one instead. I had forgotten to add the “+++” and amend the commit log.  >> >>> --- >>> etc/NEWS | 4 ++++ >>> lisp/calc/calc.el | 21 ++++++++++++++------- >>> test/lisp/calc/calc-tests.el | 15 +++++++++++++++ >>> 3 files changed, 33 insertions(+), 7 deletions(-) >>> >>> diff --git a/etc/NEWS b/etc/NEWS >>> index f4e64c0851f..aa1936fe7fc 100644 >>> --- a/etc/NEWS >>> +++ b/etc/NEWS >>> @@ -2305,6 +2305,10 @@ Latin-1 range 0-255. This hard-coded maximum is replaced by >>> the display of matching vectors as Unicode strings. The default value >>> is 0xFF or 255 to preserve the existing behavior. >>> >>> +*** New user option 'calc-inhibit-startup-message'. >>> +If it is non-nil, inhibit Calc from printing its startup message. The >>> +default value is nil to preserve the existing behavior. >>> + >>> ** Time >>> >>> *** New user option 'world-clock-sort-order'. >>> diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el >>> index a350419b320..d4fb8776c6c 100644 >>> --- a/lisp/calc/calc.el >>> +++ b/lisp/calc/calc.el >>> @@ -1473,6 +1473,11 @@ calc-create-buffer >>> (require 'calc-ext) >>> (calc-set-language calc-language calc-language-option t))) >>> >>> +(defcustom calc-inhibit-startup-message nil >>> + "If non-nil, inhibit the Calc startup message." >>> + :version "31.1" >>> + :type 'boolean) >>> + >>> (defcustom calc-make-windows-dedicated nil >>> "If non-nil, windows displaying Calc buffers will be marked dedicated. >>> See `window-dedicated-p' for what that means." >>> @@ -1524,9 +1529,10 @@ calc >>> (with-current-buffer (calc-trail-buffer) >>> (and calc-display-trail >>> (calc-trail-display 1 t))) >>> - (message (substitute-command-keys >>> - (concat "Welcome to the GNU Emacs Calculator! \\<calc-mode-map>" >>> - "Press \\[calc-help] or \\[calc-help-prefix] for help, \\[calc-quit] to quit"))) >>> + (unless calc-inhibit-startup-message >>> + (message (substitute-command-keys >>> + (concat "Welcome to the GNU Emacs Calculator! \\<calc-mode-map>" >>> + "Press \\[calc-help] or \\[calc-help-prefix] for help, \\[calc-quit] to quit")))) >>> (run-hooks 'calc-start-hook) >>> (and (windowp full-display) >>> (window-point full-display) >>> @@ -1534,10 +1540,11 @@ calc >>> (and calc-make-windows-dedicated >>> (set-window-dedicated-p nil t)) >>> (calc-check-defines) >>> - (when (and calc-said-hello interactive) >>> - (sit-for 2) >>> - (message "")) >>> - (setq calc-said-hello t))))) >>> + (unless calc-inhibit-startup-message >>> + (when (and calc-said-hello interactive) >>> + (sit-for 2) >>> + (message "")) >>> + (setq calc-said-hello t)))))) >>> >>> ;;;###autoload >>> (defun full-calc (&optional interactive) >>> diff --git a/test/lisp/calc/calc-tests.el b/test/lisp/calc/calc-tests.el >>> index 2fd6a6be45e..49762e146a5 100644 >>> --- a/test/lisp/calc/calc-tests.el >>> +++ b/test/lisp/calc/calc-tests.el >>> @@ -26,6 +26,7 @@ >>> >>> (require 'cl-lib) >>> (require 'ert) >>> +(require 'ert-x) >>> (require 'calc) >>> (require 'calc-ext) >>> (require 'calc-units) >>> @@ -946,5 +947,19 @@ calc-math-vector-is-string >>> (should-error (math-vector-is-string cplx-vec) >>> :type 'wrong-type-argument)))) >>> >>> +(ert-deftest calc-inhibit-startup-message () >>> + "Test user option `calc-inhibit-startup-message'." >>> + (let ((welcome-message "Welcome to the GNU Emacs Calculator!")) >>> + (ert-with-message-capture messages >>> + (let ((calc-inhibit-startup-message t)) >>> + (calc)) >>> + (should-not (string-match-p welcome-message messages)) >>> + (calc-quit)) >>> + (ert-with-message-capture messages >>> + (let ((calc-inhibit-startup-message nil)) >>> + (calc)) >>> + (should (string-match-p welcome-message messages)) >>> + (calc-quit)))) >>> + >>> (provide 'calc-tests) >>> ;;; calc-tests.el ends here >>> -- >>> 2.39.5 (Apple Git-154)
[Message part 2 (text/html, inline)]
[0001-Add-user-option-to-inhibit-Calc-startup-message-bug-.patch (application/octet-stream, attachment)]
[Message part 4 (text/html, inline)]
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.