From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs Subject: bug#38457: 27.0.50; dabbrev-expand regression due to message change Date: Fri, 20 Dec 2019 00:52:38 +0200 Organization: LINKOV.NET Message-ID: <87sglg9bd5.fsf@mail.linkov.net> References: <8736e3vve8.fsf@gmx.net> <87muc27prn.fsf@mail.linkov.net> <83tv6acgq5.fsf@gnu.org> <87eexdoygh.fsf@mail.linkov.net> <83tv68c0nb.fsf@gnu.org> <87d0cubfxx.fsf@mail.linkov.net> <83a77y9k35.fsf@gnu.org> <87eex9jf14.fsf@mail.linkov.net> <83d0cs8uw8.fsf@gnu.org> <87a77uh5a5.fsf@mail.linkov.net> <83r21561qd.fsf@gnu.org> <878snd2liu.fsf@mail.linkov.net> <8336dk5k1p.fsf@gnu.org> <87a77rgajf.fsf@mail.linkov.net> <83immf3pba.fsf@gnu.org> <87y2vawly3.fsf@mail.linkov.net> <83tv5x38kq.fsf@gnu.org> <87d0clxjaq.fsf@mail.linkov.net> <83y2v81g5s.fsf@gnu.org> <87fthgdkq9.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="148891"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) Cc: 38457@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Dec 20 00:23:12 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1ii58R-000cYv-BR for geb-bug-gnu-emacs@m.gmane.org; Fri, 20 Dec 2019 00:23:11 +0100 Original-Received: from localhost ([::1]:48758 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ii58P-0004Mo-Px for geb-bug-gnu-emacs@m.gmane.org; Thu, 19 Dec 2019 18:23:09 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46008) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ii58J-0004Me-FN for bug-gnu-emacs@gnu.org; Thu, 19 Dec 2019 18:23:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ii58I-0006kO-8B for bug-gnu-emacs@gnu.org; Thu, 19 Dec 2019 18:23:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:39733) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ii58I-0006jK-0X for bug-gnu-emacs@gnu.org; Thu, 19 Dec 2019 18:23:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ii58H-0007Hr-Rl for bug-gnu-emacs@gnu.org; Thu, 19 Dec 2019 18:23:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 19 Dec 2019 23:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38457 X-GNU-PR-Package: emacs Original-Received: via spool by 38457-submit@debbugs.gnu.org id=B38457.157679777927990 (code B ref 38457); Thu, 19 Dec 2019 23:23:01 +0000 Original-Received: (at 38457) by debbugs.gnu.org; 19 Dec 2019 23:22:59 +0000 Original-Received: from localhost ([127.0.0.1]:45706 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ii58F-0007HO-BO for submit@debbugs.gnu.org; Thu, 19 Dec 2019 18:22:59 -0500 Original-Received: from bonobo.elm.relay.mailchannels.net ([23.83.212.22]:27483) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ii58D-0007HF-EE for 38457@debbugs.gnu.org; Thu, 19 Dec 2019 18:22:58 -0500 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Original-Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 3E76D5A114C; Thu, 19 Dec 2019 23:22:56 +0000 (UTC) Original-Received: from pdx1-sub0-mail-a58.g.dreamhost.com (100-96-14-23.trex.outbound.svc.cluster.local [100.96.14.23]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id A0A8B5A120B; Thu, 19 Dec 2019 23:22:55 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Original-Received: from pdx1-sub0-mail-a58.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.18.5); Thu, 19 Dec 2019 23:22:56 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Tart-Hook: 17f6881a28d85db7_1576797775925_1000142853 X-MC-Loop-Signature: 1576797775924:132244081 X-MC-Ingress-Time: 1576797775924 Original-Received: from pdx1-sub0-mail-a58.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a58.g.dreamhost.com (Postfix) with ESMTP id D14A080621; Thu, 19 Dec 2019 15:22:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=AuZC5lvy1g0UEYgNu/ajc2p1eZs=; b= iKpjBFonARLjQNtGUS/khnRsXMhpAoQJMQJp3B/j+zkW7CceaVVr6x4qbjZNMrR8 JIJQeTXARzPK8SSdQ1IW/bQgAM/tFCWl6X97+fBcagM+yP3KVwDHWZ6o9+/p/epA B+Qn1CSVvrdCosYPZlEXZB4aBcrMG8cT2qLAxfY7aro= Original-Received: from mail.jurta.org (m91-129-107-186.cust.tele2.ee [91.129.107.186]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a58.g.dreamhost.com (Postfix) with ESMTPSA id 3B8CE8061A; Thu, 19 Dec 2019 15:22:48 -0800 (PST) X-DH-BACKEND: pdx1-sub0-mail-a58 In-Reply-To: <87fthgdkq9.fsf@mail.linkov.net> (Juri Linkov's message of "Fri, 20 Dec 2019 00:16:46 +0200") X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: -100 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedufedrvdduvddgtdeiucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhephffvufhofhffjgfkfgggtgesmhdtreertdertdenucfhrhhomheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqeenucfkphepledurdduvdelrddutdejrddukeeinecurfgrrhgrmhepmhhouggvpehsmhhtphdphhgvlhhopehmrghilhdrjhhurhhtrgdrohhrghdpihhnvghtpeeluddruddvledruddtjedrudekiedprhgvthhurhhnqdhprghthheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqedpmhgrihhlfhhrohhmpehjuhhriheslhhinhhkohhvrdhnvghtpdhnrhgtphhtthhopegvlhhiiiesghhnuhdrohhrghenucevlhhushhtvghrufhiiigvpedt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:173560 Archived-At: --=-=-= Content-Type: text/plain >> I think leaving "M-x" (or any other prompt) unobscured in this >> situation is a nice benefit, and if it simplifies the code, it's even >> more desirable. > > Implemented in a new patch. This patch now makes easy to implement message stacking that solves the issue of several successive calls to message resulting in the user only seeing the last message. This problem was raised many times, and now with a function consisting of 12 lines of code attached below, such messages are never lost anymore. It's eyebrow-raising how many messages were missed before. For example, on startup now it shows 3 lines of messages I've never seen before: Desktop: 1 frame, 19 buffers restored. 15.095076566 seconds Package cl is deprecated I've only seen the last message "Package cl is deprecated" sometimes when it was not overwritten by another later message. Now all accumulated messages are displayed together. It also allows noticing error messages never seen before. In Gnus it now shows these lines together, not only the last message: Error while decoding: (args-out-of-range *temp*-306008 1 4346) Error while decoding: (args-out-of-range *temp* 1 7357) Fontifying...done This code depends on the previous patch: --=-=-= Content-Type: application/emacs-lisp Content-Disposition: inline; filename=messages-stack.el Content-Transfer-Encoding: quoted-printable (defcustom messages-stack-timout 2 "Number of seconds between messages before clearing the stack." :type 'number :group 'minibuffer :version "27.1") (defcustom messages-stack-max 8 "Max size of the message stack." :type 'number :group 'minibuffer :version "27.1") (defvar messages-stack-separator "\n") (defvar messages-stack nil) (defun set-stacked-message (message) (let ((last-message (car messages-stack))) (unless (and last-message (equal message (aref last-message 1))) (when (and last-message (> (float-time) (+ (aref last-message 0) messages-stack-timout))) (setq messages-stack nil)) (push (vector (float-time) message) messages-stack) (when (> (length messages-stack) messages-stack-max) (setf (nthcdr messages-stack-max messages-stack) nil))) (mapconcat (lambda (m) (aref m 1)) (reverse messages-stack) messages-stack-separator))) (setq set-message-function 'set-stacked-message) --=-=-=--