GNU bug report logs - #79058
30.1; involking signal using emacsclient takes very long time to complete ~2 seconds

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Bror Winther <bbw@HIDDEN>; dated Sun, 20 Jul 2025 10:51:03 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 23 Jul 2025 11:18:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 23 07:18:10 2025
Received: from localhost ([127.0.0.1]:48829 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueXU9-0003fu-Re
	for submit <at> debbugs.gnu.org; Wed, 23 Jul 2025 07:18:10 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:44074)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ueXU7-0003fR-CK
 for 79058 <at> debbugs.gnu.org; Wed, 23 Jul 2025 07:18:08 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1ueXU1-000134-1N; Wed, 23 Jul 2025 07:18:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=GMZTPRwq8N+ASW1M6AhWaNkUqqCBZIUDw+xyTiK2QLc=; b=pniNEMFT16xu55ygt294
 C+edfe/swDUMRCcEtNq3bj+Q0P4gYUM7DgJAYRsvZQ2pFf//2wyD+JG1yyep+lmNhA9o7wjWU37GS
 wji3KDvqzsSL7j9QwfYkNbpaFIJxsgMhrGadBpEJHJp07OxpBeIj+QzYz3OvXI7EuGuTFdQI1oOVn
 KT+Ut+gZ2z9oUIiDz8dPCsR62e1IhRXJNQYTVtndUGG3IybMgBMel2UGx/nO23T/cnBBiXsUKV7Bk
 klUitOhb6mqrXrJzHu8WBdRosp8YLxIbzXt05UW3eNiHweGKs6LYbhFnpAqLtiL/FttRA408G74/1
 ryS02KNNgunCGA==;
Date: Wed, 23 Jul 2025 14:17:59 +0300
Message-Id: <86y0sf6tqw.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <BC193E4B-86EF-4745-BC09-48A707CE6DDD@HIDDEN> (message from
 Bror Winther on Tue, 22 Jul 2025 20:06:15 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
 <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN> <86zfcw8i28.fsf@HIDDEN>
 <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN>
 <BC193E4B-86EF-4745-BC09-48A707CE6DDD@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Tue, 22 Jul 2025 20:06:15 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> Sorry I can see I used some confusing terms here. I wrote client frame in tty. I have since
> found that there is no client frame and thus I understand why you didn’t understand the
> question. I’m sorely concerned with using the --eval option only, not in in combination with
> -c or any other option that would create a client frame. Apologies for the confusion. 

OK, but then your situation is very special, whereas the wait targets
much more general use cases: it makes sure we give the user ample
opportunity to see any error messages before they disappear from the
screen.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 23 Jul 2025 11:10:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 23 07:10:28 2025
Received: from localhost ([127.0.0.1]:48780 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueXMh-0003Bq-U9
	for submit <at> debbugs.gnu.org; Wed, 23 Jul 2025 07:10:28 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:60738)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ueXMf-0003B5-Ok
 for 79058 <at> debbugs.gnu.org; Wed, 23 Jul 2025 07:10:26 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1ueXMZ-0004lo-IM; Wed, 23 Jul 2025 07:10:19 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=DQxWu4Irjw+UxdQTmdM1agSxEDvfD+xKDOVDp1nvXhc=; b=LzzQKGAjrIG7HovqPKST
 aDMjqr7pfmaB6YqMNvS8QS2fagiYjtY1erbMOzUoelzNTayiagbEDiTl5jyXv4Q5rS4Tz4TvdVUHX
 DcU9uONG6wzhoi+RA2+n+nVgV8/0rbjG7LyHKgD+OtMI4HteWLRJ5OYWIlSecrJ4PMCH1FVQzqna2
 BLgs0pcRPCUOUSRG5LUWMz2Aec8wCxcFf2ZtaBcUW/KnMa2TDgG7i/p8GkW7qpCS1/Ie5gu3YqpYx
 4pMBGzgACr5qc+GOQu+yzA5PUVAdy8TMJ0gCEkiJaIuyCUAMrSOmtpDOxx6q379bMU5e3giLpq2j5
 LAfmbX10eRZz3A==;
Date: Wed, 23 Jul 2025 14:10:04 +0300
Message-Id: <861pq788oj.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN> (message from
 Bror Winther on Tue, 22 Jul 2025 20:01:36 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
 <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN> <86zfcw8i28.fsf@HIDDEN>
 <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Tue, 22 Jul 2025 20:01:36 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> >> How does that work when the client frame is a tty? Not the sense of emacs in the terminal but
> >> using --eval.
> >> I’m asking to understand why we waiting in exactly that scenario is fitting.
> > 
> > Sorry, I don't understand the question.  Even if the client frame is a
> > tty, it is the Emacs server that displays there, not emacsclient.
> > emacsclient doesn't display anything on that frame, it just sends the
> > command to the server.
> 
> Let me see if I understand correctly and thank you for your patience with me.
> I was under the impression that using --eval would not create a client frame
> so your statement confuses me a bit.

No, --eval doesn't disable creation of a client frame.  Try this:

  $ emacsclient -t --eval '(message "foo")'

This creates a client frame on the current terminal, and shows the
message "foo" there.

> I can’t wrap my head around the necessity of the wait in the case of --eval. 
> When you call --eval and encounter an error there is no output in the terminal
> during the wait time. So let me rephrase my question, what are we waiting for?

The expression inside --eval could signal an error.  That error is
shown on the client frame.  If we delete the client frame immediately,
the error message will only be shown on the stderr stream of
emacsclient, and if that is not visible, the user won't have any
opportunity of seeing the message.  So we wait for the user to see the
message on the client frame before we delete it.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 22 Jul 2025 18:06:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 22 14:06:36 2025
Received: from localhost ([127.0.0.1]:39185 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueHNr-0008Ow-Ji
	for submit <at> debbugs.gnu.org; Tue, 22 Jul 2025 14:06:35 -0400
Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:53401)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1ueHNo-0008OI-OB
 for 79058 <at> debbugs.gnu.org; Tue, 22 Jul 2025 14:06:33 -0400
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-605b9488c28so9994102a12.2
 for <79058 <at> debbugs.gnu.org>; Tue, 22 Jul 2025 11:06:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753207586; x=1753812386;
 darn=debbugs.gnu.org; 
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=nCpy+3auEwkdnGN9eAUIk/YUGhALbQtKXskS8VSdWzA=;
 b=eHigfT+c4Mcsg2nnX3uRdB0RTQ0u1khZHW3Y/w+dkDmRbWLEDrY+ci4utFfejXGTvm
 J/d3Z3MMPZgFAHTEjapaD8HPz7vnX4CnjCUvXY4f9qgyWMOqn55r4rkbUMHzDg1Jvh7K
 b2So+dRqiXfDvtlToq38PxEONca8aY28MDMipfZs62dB4lQZJXfpmdi8rPegWDdByvea
 5um58lcC1kfrcod9n5Cw34u/CywO0kKm/3nram/+FjUSXF0+GUXh/7fDgnfO513vywtu
 5NG/awNfHqC5aX01owk6Fg8vPwGrp+iKbzQRe70TWH26ZhEcwDWV9kYl49ieRlanc89T
 SDHQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753207586; x=1753812386;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=nCpy+3auEwkdnGN9eAUIk/YUGhALbQtKXskS8VSdWzA=;
 b=NKwXh559q96WVnPSDPvsWtiRqcWr/hUfpbI3PKJmxlNI+92E4C6cDwi32KxGT8Mmou
 MM5OWSd1pGZrsq3uJ1oqfgr4yzk1Ekz1MJUaVrKAc5Oxjg7+Ssz1Xl4qJ0LyQb6QXkmk
 v4Jm+ckxhDH3gAoufjAVtg7sCn1MsmxjhWOt2fCRz2byvxk/1/eh4qCx7sVVVQUtq2Kd
 i0lGO0O5WVjnhahdE5oP5KbVCiZrI1fNKwjchQC3PVf3yVloEruuxiAz62k4GBLS6zd+
 mAo81yAD1915o6jTk+gclnGrBe3wryXS8yQHD3FnU7ClgwH5RcAHEB9xe75csuesGWRg
 pM6Q==
X-Gm-Message-State: AOJu0Ywmkr0PnrrQnZjhAqBzVGBdrd/AZ+hFoch6gVv5zI8RMdrZzhzz
 Dm2TOgc9E5kA76kR0qoSBa6piNJ8H/YORlLdLsNbAI0Jy8aZH02xPhOeYb/kABSeR7xTcO+PPga
 i0WCf
X-Gm-Gg: ASbGncup82Nh/19MOKOLs8odix0mw65I9oVeSIthNlcTFF0aB8D7pZNiMMF43dHAPW3
 gsBuAcg6iHoqK1apfom8W67k4K/0G56AlwpsYvdjRbsPxTtgpWfudKTOWUtdfH84jE/2KrgYyP7
 LDefGjXI2bXDsoAVVHVKdSBv/Wt41xfAzXA7sOFHLrEYrgCMoM6k5yXB4ysWvmhw+hBOGu8j9BT
 AWEIA3ykbFHcyrnQoPEe4gaMXvKKMtd/sTY3AOIn09MRyxz4E16rCSbzs7LH7wvG3eI1H20BREa
 WASX9kcrTiDru0xS9RDA55WuBkew5b+CYN6I0kutSI4f4a3GfRGyVWWXyI8jgb5OWlKhFRXQC3Y
 QSJXrWwteKQjljyxUZoZC0c9tzrbwP0wtRSQffTXm1tNHF0Bx3kxYuEhgHH5jEGd9O2HKaggvLM
 YtZA==
X-Google-Smtp-Source: AGHT+IGedz+EizWpatVuRETZ0QkjKIPFwykr8VPBwgyFBCh+v9knTQNFVzymXnUKRKjC2zi0MTAabw==
X-Received: by 2002:a17:907:3a96:b0:ae3:cb50:2c6b with SMTP id
 a640c23a62f3a-ae9ce0b930emr1788349266b.38.1753207586164; 
 Tue, 22 Jul 2025 11:06:26 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-aec6ca30d39sm904883466b.93.2025.07.22.11.06.25
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 22 Jul 2025 11:06:25 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
From: Bror Winther <bbw@HIDDEN>
In-Reply-To: <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN>
Date: Tue, 22 Jul 2025 20:06:15 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <BC193E4B-86EF-4745-BC09-48A707CE6DDD@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
 <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN> <86zfcw8i28.fsf@HIDDEN>
 <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)



> On 22 Jul 2025, at 20.01, Bror Winther <bbw@HIDDEN> wrote:
>=20
>=20
>=20
>> On 22 Jul 2025, at 15.35, Eli Zaretskii <eliz@HIDDEN> wrote:
>>=20
>>> From: Bror Winther <bbw@HIDDEN>
>>> Date: Tue, 22 Jul 2025 14:26:12 +0200
>>> Cc: 79058 <at> debbugs.gnu.org
>>>=20
>>>>> My understanding was that the error might not have been written by =
emacsclient to stderr and thus=20
>>>>> we just wait and hope the user sees it. =46rom your comment I =
guess we wait for the client to show
>>>>> it which makes a bit more sense.
>>>>=20
>>>> No, we wait for the _server_ to show it in the client frame.
>>>=20
>>> How does that work when the client frame is a tty? Not the sense of =
emacs in the terminal but
>>> using --eval.
>>> I=E2=80=99m asking to understand why we waiting in exactly that =
scenario is fitting.

Sorry I can see I used some confusing terms here. I wrote client frame =
in tty. I have since
found that there is no client frame and thus I understand why you =
didn=E2=80=99t understand the
question. I=E2=80=99m sorely concerned with using the --eval option =
only, not in in combination with
-c or any other option that would create a client frame. Apologies for =
the confusion.=20

>>=20
>> Sorry, I don't understand the question.  Even if the client frame is =
a
>> tty, it is the Emacs server that displays there, not emacsclient.
>> emacsclient doesn't display anything on that frame, it just sends the
>> command to the server.
>=20
> Let me see if I understand correctly and thank you for your patience =
with me.
> I was under the impression that using --eval would not create a client =
frame
> so your statement confuses me a bit.
> I can=E2=80=99t wrap my head around the necessity of the wait in the =
case of --eval.=20
> When you call --eval and encounter an error there is no output in the =
terminal
> during the wait time. So let me rephrase my question, what are we =
waiting for?
>=20
>>=20
>>>> A variable has a doc string, so it is not undocumented.  It just =
isn't
>>>> a user option.
>>>=20
>>>=20
>>> Good point. The I concur, I=E2=80=99ll make a new patch.
>>=20
>> Thanks.
>=20
> Yeah no problem. Thank you for taking the time to help me understand





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 22 Jul 2025 18:01:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 22 14:01:58 2025
Received: from localhost ([127.0.0.1]:39158 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueHJO-00081Z-6z
	for submit <at> debbugs.gnu.org; Tue, 22 Jul 2025 14:01:58 -0400
Received: from mail-ej1-x634.google.com ([2a00:1450:4864:20::634]:60802)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1ueHJK-000810-OJ
 for 79058 <at> debbugs.gnu.org; Tue, 22 Jul 2025 14:01:56 -0400
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-ae3ec622d2fso971677166b.1
 for <79058 <at> debbugs.gnu.org>; Tue, 22 Jul 2025 11:01:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753207308; x=1753812108;
 darn=debbugs.gnu.org; 
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=aSmi++NADgfSz6IRDYG2kHV0g0uY8Twht8XOKbS61Mc=;
 b=ZdA12yObm5j4mZZeQ5K41tzgvlXjc9AMS/WVhzPmJbh1gTYQsY6ByPMtU/cpO/CyYc
 i0Dd+dlgsL09P1SELvdBWcL6Akooygj6wjDDVsyQys/azlixdGSV3R38xZtC7Sh5OR+m
 d7bXHePhQPD8UBlJ80xs9JRGOcX/viZyde2rjuS2sGEpNQIuGUDNdt+o9mKKX2j5Wi1N
 wBoF6c6HZT4I1jqNpit9Mfo5wa5eg7YhmTonV+vd98LI/HNNMbMh+Mh1GGGLUOypOCWo
 mH2T4js07NEKhpe+2OHgNoKUpYLh8lMd/XrFZLFlIiC7BcqaVOLQMs1Qhd+TKtQQAeYn
 /onw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753207308; x=1753812108;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=aSmi++NADgfSz6IRDYG2kHV0g0uY8Twht8XOKbS61Mc=;
 b=ZZU+i4BWbFdrNMjvX50JJHcDmGd7EWO/W259XT0rhbt48hMiOYGleg3RGqfIzzuynI
 jMbgU0Uza9ix2ihdxHRZqCFaT3vD4nWo1umP7y0mS4CpNRCfW8yLXPx0NAxPYpc173ue
 yhyP6tCx28f++ce3FEnDhly+Z9qyoaslJx9swKoGx6J9r5ntEkC5XGkwP3k9ct0MHjXN
 2x867fcs63HWDqimbl+hMYd81QutgIO3ho5BUarA9mxIUoFfKwsoKofT57531EkDreaF
 MyymYj9JD79TjXUJVLVz7VLqWG2MCIwKhqeNJqa8lLUOUFGdVmLjR6e0nNG4iVWErHzG
 USig==
X-Gm-Message-State: AOJu0YxnpO5yKAqixGCYxSsfqvoTsX7YmEwXbvPMWDK3RAhmyk5//Cp4
 lQbcuSFiscK+mSNC7UVxuML6XDOlNNK3aEEZBG4ij/8r3bEBXYXs6OC2P2MsSQJ6UfY=
X-Gm-Gg: ASbGncv3RIyONNp/DgjRBLmIF9X+72Qi2s+EZ5wVXJPR0RdL1iViSRn+Q01kArhft3i
 5CtQrGJ1UIJWmTYJfwCZcK7yZoiEVVQp2AvE7dt+AhabFI/269ehJogBjqHL+6nsu/N5AcbHdpg
 faUfQLvXFlNDOyPv7BzxiRGO3wQER/F/t+k5sQLbOfjxQLJj1R3unJ6dcRf15jw4ez1FY14/twk
 +2t9Uu4QpSq+ANP/iXCd7zSRddDzymQolnU7CJGxTyh7U3kOe68fGq8AePzGgsRBd/o+/FPhzuN
 Mk4UgEeNIBxl2vHsrjiasg4Sa+QmP/9PIOnMbtwGntFbdauzO2Mxh1gxgEqTq3q70EeRiaBvpe6
 DxI2TUpel6PxZvd66HkqfoAzh5pAHiIvlrzFgSVWE8PoiKNgcHrXcBYH04qc7nzy16FkiFNCoC3
 66AQ==
X-Google-Smtp-Source: AGHT+IF+nYMcI6rN33K3e7DsUZpZFcJ8E5aYgw0Ti7P1JUwSBqEiffZlLqHakJKaZTz4xpnxUfVuHA==
X-Received: by 2002:a17:906:f049:b0:ae3:674a:9af1 with SMTP id
 a640c23a62f3a-ae9ce198bd6mr2678374466b.57.1753207308350; 
 Tue, 22 Jul 2025 11:01:48 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-aec6c7a08c5sm906319666b.33.2025.07.22.11.01.47
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 22 Jul 2025 11:01:48 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
From: Bror Winther <bbw@HIDDEN>
In-Reply-To: <86zfcw8i28.fsf@HIDDEN>
Date: Tue, 22 Jul 2025 20:01:36 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <F2857AAE-CE79-4871-A0DA-26CF2FB9359C@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
 <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN> <86zfcw8i28.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)



> On 22 Jul 2025, at 15.35, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> From: Bror Winther <bbw@HIDDEN>
>> Date: Tue, 22 Jul 2025 14:26:12 +0200
>> Cc: 79058 <at> debbugs.gnu.org
>>=20
>>>> My understanding was that the error might not have been written by =
emacsclient to stderr and thus=20
>>>> we just wait and hope the user sees it. =46rom your comment I guess =
we wait for the client to show
>>>> it which makes a bit more sense.
>>>=20
>>> No, we wait for the _server_ to show it in the client frame.
>>=20
>> How does that work when the client frame is a tty? Not the sense of =
emacs in the terminal but
>> using --eval.
>> I=E2=80=99m asking to understand why we waiting in exactly that =
scenario is fitting.
>=20
> Sorry, I don't understand the question.  Even if the client frame is a
> tty, it is the Emacs server that displays there, not emacsclient.
> emacsclient doesn't display anything on that frame, it just sends the
> command to the server.

Let me see if I understand correctly and thank you for your patience =
with me.
I was under the impression that using --eval would not create a client =
frame
so your statement confuses me a bit.
I can=E2=80=99t wrap my head around the necessity of the wait in the =
case of --eval.=20
When you call --eval and encounter an error there is no output in the =
terminal
during the wait time. So let me rephrase my question, what are we =
waiting for?

>=20
>>> A variable has a doc string, so it is not undocumented.  It just =
isn't
>>> a user option.
>>=20
>>=20
>> Good point. The I concur, I=E2=80=99ll make a new patch.
>=20
> Thanks.

Yeah no problem. Thank you for taking the time to help me understand=




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 22 Jul 2025 13:35:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 22 09:35:46 2025
Received: from localhost ([127.0.0.1]:36505 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueD9m-0003si-1E
	for submit <at> debbugs.gnu.org; Tue, 22 Jul 2025 09:35:46 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:43892)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ueD9f-0003s0-UK
 for 79058 <at> debbugs.gnu.org; Tue, 22 Jul 2025 09:35:42 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1ueD9Z-0005nU-5Y; Tue, 22 Jul 2025 09:35:33 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=dH/VDrhVQPSjtknoHiPVDnQMS0La8Ip9OlaAd7rQyW4=; b=PAFK5PVDv3QEMVMq0aDy
 L/BzSEwsYQJKk9mIcnBOluqmoKX8dIX5piFdRhObXUcEMONvHfK1o77oqw5qTomSiGFQK0P8Q5+4D
 65O30y1ySgSlJaJxxjRxnngZ0B3V9FrNR/mzGhmSBcYuIkIubHV53GP1Efy7Ot/YB91Hb5SDf+kBy
 f2pBz3FRiJfvv9StB5Ky5mGfuwYqMW9bNlnD2m3GX63RflqRW2W/74La+EFwL7bdxbszEyg2z9onG
 MHmCsjbMut4v2iOyBtwMn+BBuEPa5VLAR5dpqf8j56uWTLj1EyE8+Z9ztIf8myEBzrArw6leDu4za
 bggwcGjGbM2kzQ==;
Date: Tue, 22 Jul 2025 16:35:11 +0300
Message-Id: <86zfcw8i28.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN> (message from
 Bror Winther on Tue, 22 Jul 2025 14:26:12 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
 <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Tue, 22 Jul 2025 14:26:12 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> >> My understanding was that the error might not have been written by emacsclient to stderr and thus 
> >> we just wait and hope the user sees it. From your comment I guess we wait for the client to show
> >> it which makes a bit more sense.
> > 
> > No, we wait for the _server_ to show it in the client frame.
> 
> How does that work when the client frame is a tty? Not the sense of emacs in the terminal but
> using --eval.
> I’m asking to understand why we waiting in exactly that scenario is fitting.

Sorry, I don't understand the question.  Even if the client frame is a
tty, it is the Emacs server that displays there, not emacsclient.
emacsclient doesn't display anything on that frame, it just sends the
command to the server.

> > A variable has a doc string, so it is not undocumented.  It just isn't
> > a user option.
> 
> 
> Good point. The I concur, I’ll make a new patch.

Thanks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 22 Jul 2025 12:26:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 22 08:26:36 2025
Received: from localhost ([127.0.0.1]:36069 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ueC4p-00040q-Hs
	for submit <at> debbugs.gnu.org; Tue, 22 Jul 2025 08:26:35 -0400
Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]:61913)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1ueC4l-00040B-Ba
 for 79058 <at> debbugs.gnu.org; Tue, 22 Jul 2025 08:26:32 -0400
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-ae0c4945c76so734163366b.3
 for <79058 <at> debbugs.gnu.org>; Tue, 22 Jul 2025 05:26:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753187185; x=1753791985;
 darn=debbugs.gnu.org; 
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=H+ZqGQZQxPNb5yMjcrt3jHTq4CsUw5+HCxerhiraRZg=;
 b=2utIrzloS/3P6Q4+OZBuAxL7db65WH6tZzseek3vjzy6M3Tk6vAA7naAnk+IXET8yh
 pWX5zpJjyvnl5vOCw8ZU6ZVpQ5g5iPAqFqAjejZsA1DsS+03gyVe5o/z+N9BKhgk0a0P
 8NXTTgSkLeTY5EPYm3IXnRNzs8iJjDBvGD+vZvmR+gAQRPkFZCnhd6KgBr6FKIe/qPiV
 5sxV2mIKfKT+3Rc81DDVDAnWJ8/QREcHE2ZJn479f38/kJ1FOBe8Pzse4Z17sQnKelfO
 xeCkS1eYMgj2KfWecSZ2V9X3x/Yn+LvvORSezpd9OI1PCujMuIxaLBpnPLKOcmWsfs3V
 Hc+A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753187185; x=1753791985;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=H+ZqGQZQxPNb5yMjcrt3jHTq4CsUw5+HCxerhiraRZg=;
 b=jsOI2NrNhweLC5hPh5F5AZoxzEISKseYYcwz1yGVXEVO+fVVtgsNaHwmJI2jhi9/eK
 PIdhLOo7IgaXvl6w3IpB5PmsNxO+OltTyAYllvDZ2M8vXN4bj8SfgI8fEtWP4kD1vuPE
 ScAVWZjTUfhA97Ngge+eC3ijRUButXRwO3yr+M6mFobaUAKD0nYEwrJhOZLvwBQIV5Nj
 sDLzDrJ+3hQWnSZI+QingOu9SqppZFRqWscBFw+Jo0EmoZ/buEyY6uQdtIQ8yKelrpRY
 jHd1cm5Udw/ELrVSlNxT2mT+vDPsQR88xBtDnTAmDyFUhV7weUgstE9SOIUOEhofe0yv
 elHQ==
X-Gm-Message-State: AOJu0Yy18Ki8fW0CJrvyS7O4L4zZKaZ0eJFJI/x4wniFJ/EpbRXIBxj5
 ywm5TChBM8YbORPf6a0cWpqM5EzZFhZ+WYvqAzxwXH0TRqmG8WJ6rEhxtYQtWpdxwOk=
X-Gm-Gg: ASbGncuMZxqYV0GL6DhmxCbSV3qdi3qsu+2hWTpfOBKQ9xyKobctiOA5yRwdrrslYiN
 fSRfWRM3G2eJ+HvH5owXrvuo07I1/bySixD316Bm8pFCvi/HjxoLd9/uTpJHsNvgBsPeIJiUUnw
 mg8yxxybc1F6+3hjfRvKant1iMWpbA79W5A5eN+oZqplQOx4AFH3QWk/zKm7HWlfLV4f2CXJItQ
 zBHlUHAGvWIH59yGDiqQLaSWUm5I4JZCwx3xk32IJmDh8CScI6/o9LYtBFJ6Xm1d6+GgD7zbOg8
 C4UFzlfXrHFfFrcTRxB1JoiFrfLb9Q/Ww+nMLYLe95fZAGLrb5wknZKZmtJF7m1CswCCw8HWVtw
 3Xxn6ePadNh8MJFKqbDCYuPX1CFM8u4NCDrEAYtAeqU4TUfZ4SLDOx7oiK7PzOsWEpLpmH/upMS
 ANP+9LgX7BAfWJ
X-Google-Smtp-Source: AGHT+IF8aWwtADuBmIpRbt6AkAaQsZzpWwjdgrBF5lbWQt2WGYQfiLgAKLGGQijYYwptMG/pOfb9jw==
X-Received: by 2002:a17:906:f049:b0:ae3:674a:9af1 with SMTP id
 a640c23a62f3a-ae9ce198bd6mr2534248166b.57.1753187184360; 
 Tue, 22 Jul 2025 05:26:24 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-aec6ca7d347sm867511766b.128.2025.07.22.05.26.22
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 22 Jul 2025 05:26:23 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
From: Bror Winther <bbw@HIDDEN>
In-Reply-To: <86pldtbrdn.fsf@HIDDEN>
Date: Tue, 22 Jul 2025 14:26:12 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <777AD538-CB8C-4218-BEA6-CC5FFD659DBF@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> <86pldtbrdn.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)



> On 21 Jul 2025, at 15.33, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> From: Bror Winther <bbw@HIDDEN>
>> Date: Mon, 21 Jul 2025 15:22:06 +0200
>> Cc: 79058 <at> debbugs.gnu.org
>>=20
>> That is why I think the proper solution is to have a simple variable
>> that Lisp programs could bind as part of such scripts to easily
>> disable the wait, if using ignore-errors or similar technique is for
>> some reason inconvenient or inappropriate.
>>=20
>> As I understand, this would mean that I would have to bind it every =
time I call --eval if I don=E2=80=99t
>> want to wait for errors? I don=E2=80=99t think this is ideal either.
>=20
> No, you don't have to bind it.  You could also use setq to set its
> value globally, just like with user option.

Right, then I think your suggestion of not doing a user variable is very =
valid.

>=20
>> Maybe I'm misunderstanding the intetion. =46rom the doc string I =
understand that
>> the delay is a means to fix a bug where the error might not be =
written to stderr
>> and thus showing the message somewhere. In daemonized mode that =
message is not
>> being displayed anywhere yet the client waits for it to finish =
displaying.
>>=20
>> The intent is to stderr of emacsclient.  The server has no way of
>> knowing whether the emacsclient's stderr is shown anywhere.
>>=20
>> ;; Display the error as a message and give the user time to see
>> ;; it, in case the error written by emacsclient to stderr is not
>> ;; visible for some reason.
>>=20
>> My understanding was that the error might not have been written by =
emacsclient to stderr and thus=20
>> we just wait and hope the user sees it. =46rom your comment I guess =
we wait for the client to show
>> it which makes a bit more sense.
>=20
> No, we wait for the _server_ to show it in the client frame.

How does that work when the client frame is a tty? Not the sense of =
emacs in the terminal but
using --eval.
I=E2=80=99m asking to understand why we waiting in exactly that scenario =
is fitting.

>=20
>> This raises another question, how does that make sense with=20
>> --eval then? Are we waiting, in the terminal, for the user to see the =
output? In that case I think it is
>> perfectly reasonable to exit early as stderr usually gets written as =
well. I=E2=80=99m not sure I fully
>> understand what the issue based on this doc string.
>=20
> emacsclient will not exit until the server shuts down the connection.
> Therefore, if the server waits, emacscilent also waits.
>=20
>> I agreed to allow this to be controllable by Lisp programs.  However,
>> a user option is not the only method of providing such control, and =
in
>> this case I believe it is sub-optimal, for the reason I mentioned: =
its
>> effect is global.  In addition, adding another user option requires =
us
>> to document it in user-level terms, and increases the number of user
>> options in Emacs that is already huge.  So I prefer to have a simple
>> variable rather than a user option, because the problem, when it
>> happens, is local and ephemeral.
>>=20
>> That is completely fair. However it sounds like you are suggesting to =
include this
>> as an undocumented user option instead (I could be wrong). A simple =
variable would definitely
>> suffice but I don=E2=80=99t agree completely with the argument =
against making it a user option. Only=20
>> that it would be less work, which is of course true.
>=20
> A variable has a doc string, so it is not undocumented.  It just isn't
> a user option.


Good point. The I concur, I=E2=80=99ll make a new patch.

//bror=




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 21 Jul 2025 13:33:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 21 09:33:38 2025
Received: from localhost ([127.0.0.1]:56511 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udqeA-0002eL-2h
	for submit <at> debbugs.gnu.org; Mon, 21 Jul 2025 09:33:38 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:40552)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udqe6-0002dT-Ba
 for 79058 <at> debbugs.gnu.org; Mon, 21 Jul 2025 09:33:35 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udqe0-0006Qj-60; Mon, 21 Jul 2025 09:33:28 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=xSn+mKmObhs8ufyK8VMZe/kirn0+oQN7l0LgyU07058=; b=bDbQo9LYKHMjQo102Kxu
 0fXJEf9Phac/5TH/gTGo8ipkpEHSbSrq8X/08bYzbMfUqhCApVUkAEUXFTHS4xDtGaJ2picejSwfs
 yl8pOkluyuK7ENhnFhg5g3tDy9fyToXoVczVVa11UCPDog6FnYxOxDW5m70g9D7/hwaEMnqv5H1Fl
 vUwlGGNZqNkm6ERHQeCkBqs41gMt2zxGkFj/T8ZCB7gn4jnnVHCcEtay4Y32r/saIeKtM94Epy98B
 SKrNIJeARJBMUbFX0bsUJlCe1e6XcRctxkrKt709EC7EM0YUe2nYjQG2Z90Q1cHO1NNRm9WPCf5YF
 B9NE3BrKwJWDmQ==;
Date: Mon, 21 Jul 2025 16:33:24 +0300
Message-Id: <86pldtbrdn.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN> (message from
 Bror Winther on Mon, 21 Jul 2025 15:22:06 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
 <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Mon, 21 Jul 2025 15:22:06 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
>  That is why I think the proper solution is to have a simple variable
>  that Lisp programs could bind as part of such scripts to easily
>  disable the wait, if using ignore-errors or similar technique is for
>  some reason inconvenient or inappropriate.
> 
> As I understand, this would mean that I would have to bind it every time I call --eval if I don’t
> want to wait for errors? I don’t think this is ideal either.

No, you don't have to bind it.  You could also use setq to set its
value globally, just like with user option.

>  Maybe I'm misunderstanding the intetion. From the doc string I understand that
>  the delay is a means to fix a bug where the error might not be written to stderr
>  and thus showing the message somewhere. In daemonized mode that message is not
>  being displayed anywhere yet the client waits for it to finish displaying.
> 
>  The intent is to stderr of emacsclient.  The server has no way of
>  knowing whether the emacsclient's stderr is shown anywhere.
> 
>  ;; Display the error as a message and give the user time to see
>  ;; it, in case the error written by emacsclient to stderr is not
>  ;; visible for some reason.
> 
> My understanding was that the error might not have been written by emacsclient to stderr and thus 
> we just wait and hope the user sees it. From your comment I guess we wait for the client to show
> it which makes a bit more sense.

No, we wait for the _server_ to show it in the client frame.

> This raises another question, how does that make sense with 
> --eval then? Are we waiting, in the terminal, for the user to see the output? In that case I think it is
> perfectly reasonable to exit early as stderr usually gets written as well. I’m not sure I fully
> understand what the issue based on this doc string.

emacsclient will not exit until the server shuts down the connection.
Therefore, if the server waits, emacscilent also waits.

>  I agreed to allow this to be controllable by Lisp programs.  However,
>  a user option is not the only method of providing such control, and in
>  this case I believe it is sub-optimal, for the reason I mentioned: its
>  effect is global.  In addition, adding another user option requires us
>  to document it in user-level terms, and increases the number of user
>  options in Emacs that is already huge.  So I prefer to have a simple
>  variable rather than a user option, because the problem, when it
>  happens, is local and ephemeral.
> 
> That is completely fair. However it sounds like you are suggesting to include this
> as an undocumented user option instead (I could be wrong). A simple variable would definitely
> suffice but I don’t agree completely with the argument against making it a user option. Only 
> that it would be less work, which is of course true.

A variable has a doc string, so it is not undocumented.  It just isn't
a user option.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 21 Jul 2025 13:22:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 21 09:22:30 2025
Received: from localhost ([127.0.0.1]:56436 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udqTN-0007I2-8J
	for submit <at> debbugs.gnu.org; Mon, 21 Jul 2025 09:22:30 -0400
Received: from mail-ed1-x533.google.com ([2a00:1450:4864:20::533]:51622)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1udqTJ-0007Hk-G1
 for 79058 <at> debbugs.gnu.org; Mon, 21 Jul 2025 09:22:27 -0400
Received: by mail-ed1-x533.google.com with SMTP id
 4fb4d7f45d1cf-611f74c1837so8204363a12.3
 for <79058 <at> debbugs.gnu.org>; Mon, 21 Jul 2025 06:22:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753104139; x=1753708939;
 darn=debbugs.gnu.org; 
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=q3RAKf3qmabB1tD68Exk+7ijnlxIazQ5XdnI3GI7ErY=;
 b=I4nz5Mj96wVg/FSfrbtyhyHl5X2i0149OH/tKrYwY2eZrAXtIzwPEDMptlsqiJHb2Z
 RhIrvfixJ9hvJ8r2Jb7iCdGCcOInDcHYqyFs7jQPWEexLPU212xDRyOEPzG4A/1f/BbK
 Evg3mxWcFad9Qqm4HqTyvo1JuRnrua45eIGlZqCS19r8pXF2rglhw0smNUWNVf1UVaUk
 +0KOjRIf704CM/XhTp07pRJ2aX+lhI/VIoQdSvxg5sExqn6NRaalttYAARwDAQQjJ3jj
 sFAzEFo5Mw9oJvjsbFP3FIfwu8ybeRawfChi/fJ0c70u1agfj3W2w5pslxnFCOuKMKi7
 EBeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753104139; x=1753708939;
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=q3RAKf3qmabB1tD68Exk+7ijnlxIazQ5XdnI3GI7ErY=;
 b=BrpHFPu1Rqz7AkBNZzsZSyBpw0HUMUPzjenUOrp3At1jlzih0RwZRKcNob6HizOFFP
 MlwjDr7X8DoT+KOG0CDTqHYkER/PahCunHagThDdzvqKMLVHqt0GYQgUy2cn8FmPRee5
 DiEPd3A9425yGMoPXraWEeWIOq0NEkAkmvYxcWT7TZlqjmpRPj8QJlDAF3rUkDLFOHmL
 iHYFUPrBDSNxgWldvTrlI6/DhQXJv4gy26xmIODXF5+F1jHSQ0p1XOiCevUviWVgOWDh
 6Kre/EJ+qUI6wpQIWm/m/b9t3gOLBSLDLWAoiHQ4mhhIA9NhaWLE4q3Bb1fBduRgY49e
 BTUg==
X-Gm-Message-State: AOJu0YzRl01lzguOjLaXfWWarM84X1xFGfnHKc/+ZdtKQ47jy5561buV
 mdjDanr5L/ntF/vDFOQLtSRpft6TLpAokEql6gFyWbxe2iyljn8a87TaTopc2sJKlTs=
X-Gm-Gg: ASbGncsz8VFciWSYxJl2ClTub6cnoqXWDFbFDWB9yKXKNs3M6hekjqYdnzPNuxgUAzS
 TQan4DEAdiSOTEpdNJBovI/kfhKOo/nXNY5UECdIWFm1mFf0LqA1xnb8TaDq14xJySysEE9mQQz
 NwXvu/JVROrDYaMwf4A7+diedLyliU9RI8M5yTOBo4a4Ln7QhKiM/2K0OatAXCLdvvG7Fb1qRlt
 K1mc2wneGY/H8tR7eh9k0+Jtzt7TFgPTZvFUFkWYPE9PWqFvhvwqPr0utRNGekN3NPUMXwhMKbd
 sjyJaqtyLVHWuy1+wBwHBT9NKaSij6r/aP+8mGQKf8+LSqJz2RKWLzjmw+2YvZlTdR4ZfMbgymv
 pDjtv9JRSOaSVNGUhPDWyfT72Szgy7Fedtj+bjhbp8ECk/8yls0vQ2KF87zOQq5Ohx+0YWWpdsA
 rx/Z8wHxMtBIvU
X-Google-Smtp-Source: AGHT+IHDiTtzwh7boaIqd5xASNBnVUyOyQc8VUISLUwpnXd9aYXsu5PcVkiNyNLOgy4o0EZEgaS7LA==
X-Received: by 2002:a05:6402:2350:b0:5e6:e842:f9d2 with SMTP id
 4fb4d7f45d1cf-612c74072c5mr9445814a12.29.1753104138306; 
 Mon, 21 Jul 2025 06:22:18 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-612f21073e6sm3642421a12.56.2025.07.21.06.22.17
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 21 Jul 2025 06:22:17 -0700 (PDT)
From: Bror Winther <bbw@HIDDEN>
Message-Id: <D55032A8-D38B-4741-B6EA-8D6F6218A7BA@HIDDEN>
Content-Type: multipart/alternative;
 boundary="Apple-Mail=_DD271CD2-7610-4DB7-8E25-B2B795F1A2E0"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
Date: Mon, 21 Jul 2025 15:22:06 +0200
In-Reply-To: <86bjpddcrp.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN> <86bjpddcrp.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--Apple-Mail=_DD271CD2-7610-4DB7-8E25-B2B795F1A2E0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8



> On 21 Jul 2025, at 13.06, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> From: Bror Winther <bbw@HIDDEN <mailto:bbw@HIDDEN>>
>> Date: Sun, 20 Jul 2025 22:07:10 +0200
>> Cc: 79058 <at> debbugs.gnu.org <mailto:79058 <at> debbugs.gnu.org>
>>=20
>>=20
>>=20
>>> On 20 Jul 2025, at 20.54, Eli Zaretskii <eliz@HIDDEN =
<mailto:eliz@HIDDEN>> wrote:
>>>=20
>>>> From: Bror Winther <bbw@HIDDEN <mailto:bbw@HIDDEN>>
>>>> Date: Sun, 20 Jul 2025 19:20:22 +0200
>>>> Cc: 79058 <at> debbugs.gnu.org <mailto:79058 <at> debbugs.gnu.org>
>>>>=20
>>>> Sure, no problem at all. I use a tiling window manager. For this I =
have a script
>>>> for navigating between OS windows and for consistency I use the =
same script to
>>>> navigate windows in Emacs. The script uses emacsclient --eval =
=E2=80=9C(evil-window-up
>>>> 1)=E2=80=9D to navigate a window up, if this fails it will call the =
window manager
>>>> instead because it means that there is no window in that direction. =
Because the
>>>> wait is now 2 seconds it takes 2 seconds to shift focus out of =
emacs. This might
>>>> be a minor nuisance but enough to be annoying.
>>>=20
>>> Sorry, I don't understand: the wait is only when an error message is
>>> to be displayed.  Your description above doesn't involve any =
messages,
>>> AFAIU, so how is the recipe you've shown related to your real =
problem?
>>=20
>> The script waits for emacsclient to finish execution, and execution =
is halted
>> for 2 seconds to wait for the error message to be displayed. This =
means that any
>> script calling an Emacs command with emacsclient that results in an =
error now
>> takes 2 seconds longer to complete than it did previously.
>=20
> If there's no one to see the error message, why is the error message
> issued? it should be suppressed if it is not intended for human
> consumption.

I don=E2=80=99t think that is a fair question as I don=E2=80=99t think =
an error is only for human consumption.
The error should not be suppressed, as it is still useful.

>> In my case, the script I use for OS window management calls Emacs to =
change
>> windows. If there is no window in the requested direction Emacs =
throws an error.
>> The script then tells the OS window manager to change focus instead. =
This now
>> takes 2 seconds extra.
>=20
> So my suggestion for this case is to use ignore-errors around the form
> which could signal an error, or some other method of suppressing the
> error.

I currently use the exit code from emacsclient. If I where to suppress =
the errors
with ignore-errors, the exit code would always be 0. Of course I could =
create=20
more logic to handle this but that seems like the wrong way to go about =
this.
It should be possible to fire one-liners to without having to wait for =
the error to
be displayed imo.

>>> Thanks, but I don't see any need to make this a user option.  If =
some
>>> rare Lisp program needs to control the wait time after showing an
>>> error message, it can let-bind a simple variable.  Users have no
>>> reason to customize this time globally.
>>=20
>> =46rom a user perspective, calling emacsclient --eval from a shell or =
script, I
>> would not expect it to halt execution for 2 seconds just to display =
an error on
>> the server. Especially since this also affects workflows where Emacs =
is run
>> daemonized.=20
>=20
> We had exactly opposite requests, and thus introduced this feature.
> So at least some users do care about error messages in client frames.

I would think as much. As I said I completely understand the reason =
behind this
and not being able to set the delay or ignore it is probably just a =
small oversight.

> You seem to be assuming that --eval used from a script necessarily
> means that errors important for the users should never happen, but
> that is definitely not the case in general.  When errors do happen, it
> is important to let the user see them.

That was not what I was assuming. I understand the general use case and =
that=20
my use is a bit more infrequent. And I=E2=80=99m not arguing to remove =
the delay
if that is what came across. I tried to make the case that exclusively =
halting both emacs
and caller program to show an error is a surprising (and somewhat =
archaic,
pardon my words) choice. Surely there would be a way to have the --eval =
caller exit
while retaining the error.

>=20
>> For instance:
>>=20
>> ```
>> emacs =E2=80=94daemon=20
>> emacsclient --eval "(windmove-up)=E2=80=9D=20
>> ```
>>=20
>> will now take 2 seconds longer due to the display wait.
>=20
> As I said above, using
>=20
>  emacsclient --eval "(ignore-errors (windmove-up))=E2=80=9D
>=20
> should solve this problem very easily.

Yes but then I won=E2=80=99t know if it failed or not

>=20
>> Having it as a user
>> option would empower users to decide whether their scripts should =
incur this
>> delay or not, preserving the responsiveness of Emacs in integrated =
window
>> management or automation setups.  _(please note I know that these two =
commands
>> are a bit nonsensical given that there are no windows)_
>=20
> A user option has global effect, i.e. it affects all the client
> connections and frames.  By contrast, ignoring errors only where the
> user's scripts really don't care about the errors will allow users to
> see messages that matter.

I think being able to disable the wait globally is useful. That
was the reasoning behind it at least.

> That is why I think the proper solution is to have a simple variable
> that Lisp programs could bind as part of such scripts to easily
> disable the wait, if using ignore-errors or similar technique is for
> some reason inconvenient or inappropriate.

As I understand, this would mean that I would have to bind it every time =
I call --eval if I don=E2=80=99t
want to wait for errors? I don=E2=80=99t think this is ideal either.

>> Maybe I'm misunderstanding the intetion. =46rom the doc string I =
understand that
>> the delay is a means to fix a bug where the error might not be =
written to stderr
>> and thus showing the message somewhere. In daemonized mode that =
message is not
>> being displayed anywhere yet the client waits for it to finish =
displaying.
>=20
> The intent is to stderr of emacsclient.  The server has no way of
> knowing whether the emacsclient's stderr is shown anywhere.

 ;; Display the error as a message and give the user time to see
 ;; it, in case the error written by emacsclient to stderr is not
 ;; visible for some reason.

My understanding was that the error might not have been written by =
emacsclient to stderr and thus=20
we just wait and hope the user sees it. =46rom your comment I guess we =
wait for the client to show
it which makes a bit more sense. This raises another question, how does =
that make sense with=20
--eval then? Are we waiting, in the terminal, for the user to see the =
output? In that case I think it is
perfectly reasonable to exit early as stderr usually gets written as =
well. I=E2=80=99m not sure I fully
understand what the issue based on this doc string.

>=20
>> While I understand the reasoning behind the fixed delay, I believe it =
would be
>> more user-friendly to make it configurable, since the current =
approach halts
>> execution and may not suit all use cases.
>=20
> I agreed to allow this to be controllable by Lisp programs.  However,
> a user option is not the only method of providing such control, and in
> this case I believe it is sub-optimal, for the reason I mentioned: its
> effect is global.  In addition, adding another user option requires us
> to document it in user-level terms, and increases the number of user
> options in Emacs that is already huge.  So I prefer to have a simple
> variable rather than a user option, because the problem, when it
> happens, is local and ephemeral.

That is completely fair. However it sounds like you are suggesting to =
include this
as an undocumented user option instead (I could be wrong). A simple =
variable would definitely
suffice but I don=E2=80=99t agree completely with the argument against =
making it a user option. Only=20
that it would be less work, which is of course true.

Apologies if I sound argumentative or combative, that is not my intent.

//bror


--Apple-Mail=_DD271CD2-7610-4DB7-8E25-B2B795F1A2E0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><br =
id=3D"lineBreakAtBeginningOfMessage"><div><br><blockquote =
type=3D"cite"><div>On 21 Jul 2025, at 13.06, Eli Zaretskii =
&lt;eliz@HIDDEN&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div><meta charset=3D"UTF-8"><div =
style=3D""><blockquote type=3D"cite" style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;">From: Bror Winther &lt;<a =
href=3D"mailto:bbw@HIDDEN">bbw@HIDDEN</a>&gt;<br>Date: Sun, =
20 Jul 2025 22:07:10 +0200<br>Cc:<span =
class=3D"Apple-converted-space">&nbsp;</span><a =
href=3D"mailto:79058 <at> debbugs.gnu.org">79058 <at> debbugs.gnu.org</a><br><br><br=
><br><blockquote type=3D"cite">On 20 Jul 2025, at 20.54, Eli Zaretskii =
&lt;<a href=3D"mailto:eliz@HIDDEN">eliz@HIDDEN</a>&gt; =
wrote:<br><br><blockquote type=3D"cite">From: Bror Winther &lt;<a =
href=3D"mailto:bbw@HIDDEN">bbw@HIDDEN</a>&gt;<br>Date: Sun, =
20 Jul 2025 19:20:22 +0200<br>Cc:<span =
class=3D"Apple-converted-space">&nbsp;</span><a =
href=3D"mailto:79058 <at> debbugs.gnu.org">79058 <at> debbugs.gnu.org</a><br><br>Sur=
e, no problem at all. I use a tiling window manager. For this I have a =
script<br>for navigating between OS windows and for consistency I use =
the same script to<br>navigate windows in Emacs. The script uses =
emacsclient --eval =E2=80=9C(evil-window-up<br>1)=E2=80=9D to navigate a =
window up, if this fails it will call the window manager<br>instead =
because it means that there is no window in that direction. Because =
the<br>wait is now 2 seconds it takes 2 seconds to shift focus out of =
emacs. This might<br>be a minor nuisance but enough to be =
annoying.<br></blockquote><br>Sorry, I don't understand: the wait is =
only when an error message is<br>to be displayed. &nbsp;Your description =
above doesn't involve any messages,<br>AFAIU, so how is the recipe =
you've shown related to your real problem?<br></blockquote><br>The =
script waits for emacsclient to finish execution, and execution is =
halted<br>for 2 seconds to wait for the error message to be displayed. =
This means that any<br>script calling an Emacs command with emacsclient =
that results in an error now<br>takes 2 seconds longer to complete than =
it did previously.<br></blockquote><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">If =
there's no one to see the error message, why is the error =
message</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;"><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline !important;">issued? it should be =
suppressed if it is not intended for human</span><br style=3D"caret-color:=
 rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline =
!important;">consumption.</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"></div></div></blockquote><div><br></div><div>I =
don=E2=80=99t think that is a fair question as I don=E2=80=99t think an =
error is only for human consumption.</div><div>The error should not be =
suppressed, as it is still useful.<br></div><br><blockquote =
type=3D"cite"><div><div style=3D""><blockquote type=3D"cite" =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;">In my case, the =
script I use for OS window management calls Emacs to change<br>windows. =
If there is no window in the requested direction Emacs throws an =
error.<br>The script then tells the OS window manager to change focus =
instead. This now<br>takes 2 seconds extra.<br></blockquote><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">So my suggestion for this case is to use =
ignore-errors around the form</span><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">which =
could signal an error, or some other method of suppressing the</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">error.</span><br style=3D"caret-color: =
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"></div></div></blockquote><div><br></div><div>I =
currently use the exit code from emacsclient. If I where to suppress the =
errors</div><div>with ignore-errors, the exit code would always be 0. Of =
course I could create&nbsp;</div><div>more logic to handle this but that =
seems like the wrong way to go about this.</div><div>It should be =
possible to fire one-liners to without having to wait for the error =
to</div><div>be displayed imo.</div><br><blockquote =
type=3D"cite"><div><div style=3D""><blockquote type=3D"cite" =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><blockquote =
type=3D"cite">Thanks, but I don't see any need to make this a user =
option. &nbsp;If some<br>rare Lisp program needs to control the wait =
time after showing an<br>error message, it can let-bind a simple =
variable. &nbsp;Users have no<br>reason to customize this time =
globally.<br></blockquote><br>=46rom a user perspective, calling =
emacsclient --eval from a shell or script, I<br>would not expect it to =
halt execution for 2 seconds just to display an error on<br>the server. =
Especially since this also affects workflows where Emacs is =
run<br>daemonized.<span =
class=3D"Apple-converted-space">&nbsp;</span><br></blockquote><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">We had exactly opposite requests, and thus =
introduced this feature.</span></div></div></blockquote><blockquote =
type=3D"cite"><div><div style=3D""><span style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">So at =
least some users do care about error messages in client =
frames.</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;"></div></div></blockquote><br><div>I would think as much. As I =
said I completely understand the reason behind this</div><div>and not =
being able to set the delay or ignore it is probably just a small =
oversight.</div><br><blockquote type=3D"cite"><div><div style=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">You seem to be assuming that --eval used =
from a script necessarily</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">means =
that errors important for the users should never happen, but</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">that is definitely not the case in general. =
&nbsp;When errors do happen, it</span><br style=3D"caret-color: rgb(0, =
0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">is =
important to let the user see them.</span><br style=3D"caret-color: =
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: =
none;"></div></div></blockquote><div><br></div><div>That was not what I =
was assuming. I understand the general use case and =
that&nbsp;</div><div>my use is a bit more infrequent. And I=E2=80=99m =
not arguing to remove the delay</div><div>if that is what came across. I =
tried to make the case that exclusively halting both emacs</div><div>and =
caller program to show an error is a surprising (and somewhat =
archaic,</div><div>pardon my words) choice. Surely there would be a way =
to have the --eval caller exit</div><div>while retaining the =
error.<br></div><br><blockquote type=3D"cite"><div><div style=3D""><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><blockquote =
type=3D"cite" style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;">For instance:<br><br>```<br>emacs =E2=80=94daemon<span =
class=3D"Apple-converted-space">&nbsp;</span><br>emacsclient --eval =
"(windmove-up)=E2=80=9D<span =
class=3D"Apple-converted-space">&nbsp;</span><br>```<br><br>will now =
take 2 seconds longer due to the display wait.<br></blockquote><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">As I said above, using</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;emacsclient --eval "(ignore-errors =
(windmove-up))=E2=80=9D</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">should =
solve this problem very easily.</span><br style=3D"caret-color: rgb(0, =
0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"></div></div></blockquote><div><br></div><div>Yes =
but then I won=E2=80=99t know if it failed or not</div><br><blockquote =
type=3D"cite"><div><div style=3D""><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><blockquote type=3D"cite" style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;">Having it as a user<br>option would empower =
users to decide whether their scripts should incur this<br>delay or not, =
preserving the responsiveness of Emacs in integrated =
window<br>management or automation setups. &nbsp;_(please note I know =
that these two commands<br>are a bit nonsensical given that there are no =
windows)_<br></blockquote><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">A user =
option has global effect, i.e. it affects all the client</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">connections and frames. &nbsp;By contrast, =
ignoring errors only where the</span><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">user's =
scripts really don't care about the errors will allow users to</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">see messages that matter.</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: =
none;"></div></div></blockquote><div><br></div>I think being able to =
disable the wait globally is useful. That</div><div>was the reasoning =
behind it at least.</div><div><br><blockquote type=3D"cite"><div><div =
style=3D""><span style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline !important;">That is why I think the =
proper solution is to have a simple variable</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">that Lisp programs could bind as part of =
such scripts to easily</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">disable =
the wait, if using ignore-errors or similar technique is for</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">some reason inconvenient or =
inappropriate.</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"></div></div></blockquote><div><br></div><div>As =
I understand, this would mean that I would have to bind it every time I =
call --eval if I don=E2=80=99t</div><div>want to wait for errors? I =
don=E2=80=99t think this is ideal either.</div><br><blockquote =
type=3D"cite"><div><div style=3D""><blockquote type=3D"cite" =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;">Maybe I'm =
misunderstanding the intetion. =46rom the doc string I understand =
that<br>the delay is a means to fix a bug where the error might not be =
written to stderr<br>and thus showing the message somewhere. In =
daemonized mode that message is not<br>being displayed anywhere yet the =
client waits for it to finish displaying.<br></blockquote><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">The intent is to stderr of emacsclient. =
&nbsp;The server has no way of</span><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">knowing =
whether the emacsclient's stderr is shown anywhere.</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: =
none;"></div></div></blockquote><div><br></div><div>&nbsp;;; Display the =
error as a message and give the user time to see</div><div>&nbsp;;; it, =
in case the error written by emacsclient to stderr is =
not</div><div>&nbsp;;; visible for some =
reason.</div><div><br></div><div>My understanding was that the error =
might not have been written by emacsclient to stderr and =
thus&nbsp;</div><div>we just wait and hope the user sees it. =46rom your =
comment I guess we wait for the client to show</div><div>it which makes =
a bit more sense. This raises another question, how does that make sense =
with&nbsp;</div><div>--eval then? Are we waiting, in the terminal, for =
the user to see the output? In that case I think it =
is</div><div>perfectly reasonable to exit early as stderr usually gets =
written as well. I=E2=80=99m not sure I fully</div><div>understand what =
the issue based on this doc string.</div><div><br></div><blockquote =
type=3D"cite"><div><div style=3D""><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><blockquote type=3D"cite" style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;">While I understand the reasoning behind the =
fixed delay, I believe it would be<br>more user-friendly to make it =
configurable, since the current approach halts<br>execution and may not =
suit all use cases.<br></blockquote><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">I =
agreed to allow this to be controllable by Lisp programs. =
&nbsp;However,</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">a user =
option is not the only method of providing such control, and =
in</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;"><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline !important;">this case I believe it =
is sub-optimal, for the reason I mentioned: its</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">effect is global. &nbsp;In addition, adding =
another user option requires us</span><br style=3D"caret-color: rgb(0, =
0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">to =
document it in user-level terms, and increases the number of =
user</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;"><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline !important;">options in Emacs that is =
already huge. &nbsp;So I prefer to have a simple</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">variable rather than a user option, because =
the problem, when it</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline =
!important;">happens, is local and =
ephemeral.</span></div></div></blockquote></div><br><div>That is =
completely fair. However it sounds like you are suggesting to include =
this</div><div>as an undocumented user option instead (I could be =
wrong). A simple variable would definitely</div><div>suffice but I =
don=E2=80=99t agree completely with the argument against making it a =
user option. Only&nbsp;</div><div>that it would be less work, which is =
of course true.</div><div><br></div><div>Apologies if I sound =
argumentative or combative, that is not my =
intent.</div><div><br></div><div>//bror</div><div><br></div></body></html>=

--Apple-Mail=_DD271CD2-7610-4DB7-8E25-B2B795F1A2E0--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 21 Jul 2025 11:06:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 21 07:06:23 2025
Received: from localhost ([127.0.0.1]:55786 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udoLf-0003j9-4j
	for submit <at> debbugs.gnu.org; Mon, 21 Jul 2025 07:06:23 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:38560)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udoLb-0003ih-NA
 for 79058 <at> debbugs.gnu.org; Mon, 21 Jul 2025 07:06:20 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udoLO-0004yZ-Po; Mon, 21 Jul 2025 07:06:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=T9v3z4K7fCzUqZfo2+PwNhu+Jq95ByNWTqPCEXk56nc=; b=jzXY/qUt3v6Jvn4IWwE7
 Cl0GFTWJ39PQa0s+wA13a4RkVO6adbB/Pdvp4XsyAHmxk2hNMMYAfJ4yborM8VKcFDZyNo0ZPkx7V
 ODyKlE24Mjh0vuudELlaWGws0lwnA8SBkA9LNQb6qTy3me2mmciCd8nQj1Omm5115G6ar7rrPDhr4
 t8Cj+9bp1hwUfDlj2kLXCmqOP0QxIiczrqr5BQIyDgVnI+QdssyhNphaxFK3h3Qo5NDGoNPtSipjc
 G9MJoed1SdACepuK0Q5lmBKqWPhnRF5BlRj6tP8skcGwsI4tQFz1UuepGRR35tsd/dAnrEXEBAUmZ
 VCW9Euzi0Tk2fA==;
Date: Mon, 21 Jul 2025 14:06:02 +0300
Message-Id: <86bjpddcrp.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <00737E70-01B4-4C25-A133-642352168659@HIDDEN> (message from
 Bror Winther on Sun, 20 Jul 2025 22:07:10 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
 <00737E70-01B4-4C25-A133-642352168659@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Sun, 20 Jul 2025 22:07:10 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> 
> 
> > On 20 Jul 2025, at 20.54, Eli Zaretskii <eliz@HIDDEN> wrote:
> > 
> >> From: Bror Winther <bbw@HIDDEN>
> >> Date: Sun, 20 Jul 2025 19:20:22 +0200
> >> Cc: 79058 <at> debbugs.gnu.org
> >> 
> >> Sure, no problem at all. I use a tiling window manager. For this I have a script
> >> for navigating between OS windows and for consistency I use the same script to
> >> navigate windows in Emacs. The script uses emacsclient --eval “(evil-window-up
> >> 1)” to navigate a window up, if this fails it will call the window manager
> >> instead because it means that there is no window in that direction. Because the
> >> wait is now 2 seconds it takes 2 seconds to shift focus out of emacs. This might
> >> be a minor nuisance but enough to be annoying.
> > 
> > Sorry, I don't understand: the wait is only when an error message is
> > to be displayed.  Your description above doesn't involve any messages,
> > AFAIU, so how is the recipe you've shown related to your real problem?
> 
> The script waits for emacsclient to finish execution, and execution is halted
> for 2 seconds to wait for the error message to be displayed. This means that any
> script calling an Emacs command with emacsclient that results in an error now
> takes 2 seconds longer to complete than it did previously.

If there's no one to see the error message, why is the error message
issued? it should be suppressed if it is not intended for human
consumption.

> In my case, the script I use for OS window management calls Emacs to change
> windows. If there is no window in the requested direction Emacs throws an error.
> The script then tells the OS window manager to change focus instead. This now
> takes 2 seconds extra.

So my suggestion for this case is to use ignore-errors around the form
which could signal an error, or some other method of suppressing the
error.

> > Thanks, but I don't see any need to make this a user option.  If some
> > rare Lisp program needs to control the wait time after showing an
> > error message, it can let-bind a simple variable.  Users have no
> > reason to customize this time globally.
> 
> From a user perspective, calling emacsclient --eval from a shell or script, I
> would not expect it to halt execution for 2 seconds just to display an error on
> the server. Especially since this also affects workflows where Emacs is run
> daemonized. 

We had exactly opposite requests, and thus introduced this feature.
So at least some users do care about error messages in client frames.
You seem to be assuming that --eval used from a script necessarily
means that errors important for the users should never happen, but
that is definitely not the case in general.  When errors do happen, it
is important to let the user see them.

> For instance:
> 
> ```
> emacs —daemon 
> emacsclient --eval "(windmove-up)” 
> ```
> 
> will now take 2 seconds longer due to the display wait.

As I said above, using

  emacsclient --eval "(ignore-errors (windmove-up))”

should solve this problem very easily.

> Having it as a user
> option would empower users to decide whether their scripts should incur this
> delay or not, preserving the responsiveness of Emacs in integrated window
> management or automation setups.  _(please note I know that these two commands
> are a bit nonsensical given that there are no windows)_

A user option has global effect, i.e. it affects all the client
connections and frames.  By contrast, ignoring errors only where the
user's scripts really don't care about the errors will allow users to
see messages that matter.

That is why I think the proper solution is to have a simple variable
that Lisp programs could bind as part of such scripts to easily
disable the wait, if using ignore-errors or similar technique is for
some reason inconvenient or inappropriate.

> Maybe I'm misunderstanding the intetion. From the doc string I understand that
> the delay is a means to fix a bug where the error might not be written to stderr
> and thus showing the message somewhere. In daemonized mode that message is not
> being displayed anywhere yet the client waits for it to finish displaying.

The intent is to stderr of emacsclient.  The server has no way of
knowing whether the emacsclient's stderr is shown anywhere.

> While I understand the reasoning behind the fixed delay, I believe it would be
> more user-friendly to make it configurable, since the current approach halts
> execution and may not suit all use cases.

I agreed to allow this to be controllable by Lisp programs.  However,
a user option is not the only method of providing such control, and in
this case I believe it is sub-optimal, for the reason I mentioned: its
effect is global.  In addition, adding another user option requires us
to document it in user-level terms, and increases the number of user
options in Emacs that is already huge.  So I prefer to have a simple
variable rather than a user option, because the problem, when it
happens, is local and ephemeral.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 20:07:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 16:07:31 2025
Received: from localhost ([127.0.0.1]:52164 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udaJm-0005bD-PV
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 16:07:31 -0400
Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]:48163)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1udaJj-0005an-Uk
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 16:07:29 -0400
Received: by mail-ed1-x530.google.com with SMTP id
 4fb4d7f45d1cf-612b34ef0c2so6131411a12.0
 for <79058 <at> debbugs.gnu.org>; Sun, 20 Jul 2025 13:07:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753042042; x=1753646842;
 darn=debbugs.gnu.org; 
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=7djlVmS1QX/pFpxpWZndjVdGtPuiZ8J6qRKK8xly/Bo=;
 b=URJjILY0mGQAposrHduLhZkM+gi3aEYrU+i4y8TfpY31vbKF0Pa40NUezC9p4bplSo
 iHlV1uxjonhEnW5nX0QOEFC3BMG2Hf2C2+PKFyjU3OMnQ9/UL3Tg6o8vwxtjN5uO9n08
 lyAkaXTFF+VEckvZqp1nyRDg1kAM5DvgyxlvXtYjBupRdm2CT+6IEX0a30sYQpykL8BS
 26hkZuXJPynOZt1817Cb+lTWP0pNBSFV3Z3j1sKi/qFmzfkU/9vPcT2l5x/FFaZQvigz
 KZW71G/cflWhrVlkDlPZ3ZZo57IdYwVARrPXuEIdkzaC0evy+Z+k/1vvdo9a+XRkhkl1
 grDg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753042042; x=1753646842;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=7djlVmS1QX/pFpxpWZndjVdGtPuiZ8J6qRKK8xly/Bo=;
 b=J2xJJJIdP4zM7fyTQ+0KkSGAfImDGOTSdr+06Y8Ykqn9fNoJsYgq8a9mYH4Xp/T5WB
 aBXyPQplL8+NYC1CcNIn/QACGJ/eezVY8UIlesDmNapUwjGA09Lh22ecaHkcjPm1sT/L
 C0/av5kfQdDxjEXMAqnLE1IMO9t9OtjaBigwER7V3RDUCds/9L05GyOgeeAr4E4W+uI8
 QlRm9AuJuBE9tMGnjoFLmIlvlb5DQYbc/NtBoS4pR+eyeeT3Wx27W6su0NnELfu7rruE
 9aLKUkpuWLcdmYVLw4P1u0YMvCLKEUqAi0PgMUQ7qNHknhArSjOOH9Lg86IZmB71TPnV
 3NDw==
X-Gm-Message-State: AOJu0YwrH1oHVKWLBnEW2Fnn7ZGNZe4I7dg+cKUruhIFLPvPp5QKzuOF
 yoCaxiSRKM9BU5yKdTXSCdf5PnIjrz7Ko8vY0J15SvJnsACzt1HQHkEuErDM7GXy5X5bjKdfXrg
 nIgFs
X-Gm-Gg: ASbGncsowMBXobr2gYss1IQnf1NKUFzM7qVltH6EVkh3V2Fm267SfAhv8zlHzQla63V
 UGRG90UCtfRZf9OEQeZciEW1ERvhP7v6dvQO2fSWZ9QbBQntsF1W9ykAHt0g6/6o7fhOjcr0qp8
 +w5yMoJ2e3OKXZKHfP/18Htu1phhIJ9bHyTwjBUpmLXnjR+OOasYyK7DaqNPwWrMxxT1xjARTYl
 ry1i6Pm6r7W9dneM8w2t8P/NIz01guPHGYzGqJWrD+BfOOkHoNLhpvVp5XNhvX151SrWf+Fk2C3
 EJjqhNu8bEJqEGK/qkQmNEAC33jB+CMrmsqpsGPYUIs2k3d5sUz7vFC7A0G7iF8zZyCdiTPBIMz
 3uk/cDp+MTYTOs9zu/jSf02cZNIxOwK2Z4aoB3mVVLe3wUDFwEQgetyjzA63A5lGkmqUWTiJq6l
 ntog==
X-Google-Smtp-Source: AGHT+IFM4wje8suEThW02vwP4h4f4OX2GmijI4yqQQnd32ovDLP45C3G+2jMmOhdl8CaNIuDE2GaOQ==
X-Received: by 2002:a05:6402:5112:b0:609:b5e0:5987 with SMTP id
 4fb4d7f45d1cf-612a4ef09a3mr13403548a12.23.1753042041533; 
 Sun, 20 Jul 2025 13:07:21 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-612c8dea633sm4402484a12.0.2025.07.20.13.07.20
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 20 Jul 2025 13:07:21 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
From: Bror Winther <bbw@HIDDEN>
In-Reply-To: <86ecuad76y.fsf@HIDDEN>
Date: Sun, 20 Jul 2025 22:07:10 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <00737E70-01B4-4C25-A133-642352168659@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> <86ecuad76y.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)



> On 20 Jul 2025, at 20.54, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> From: Bror Winther <bbw@HIDDEN>
>> Date: Sun, 20 Jul 2025 19:20:22 +0200
>> Cc: 79058 <at> debbugs.gnu.org
>>=20
>> Sure, no problem at all. I use a tiling window manager. For this I =
have a script
>> for navigating between OS windows and for consistency I use the same =
script to
>> navigate windows in Emacs. The script uses emacsclient --eval =
=E2=80=9C(evil-window-up
>> 1)=E2=80=9D to navigate a window up, if this fails it will call the =
window manager
>> instead because it means that there is no window in that direction. =
Because the
>> wait is now 2 seconds it takes 2 seconds to shift focus out of emacs. =
This might
>> be a minor nuisance but enough to be annoying.
>=20
> Sorry, I don't understand: the wait is only when an error message is
> to be displayed.  Your description above doesn't involve any messages,
> AFAIU, so how is the recipe you've shown related to your real problem?

The script waits for emacsclient to finish execution, and execution is =
halted
for 2 seconds to wait for the error message to be displayed. This means =
that any
script calling an Emacs command with emacsclient that results in an =
error now
takes 2 seconds longer to complete than it did previously.

In my case, the script I use for OS window management calls Emacs to =
change
windows. If there is no window in the requested direction Emacs throws =
an error.
The script then tells the OS window manager to change focus instead. =
This now
takes 2 seconds extra.

For example, if you=E2=80=99re not using Evil, consider (windmove-up). =
Previously,
calling it with: `emacsclient --eval "(windmove-up)"` would return =
instantly,
even if there was no window in that direction and Emacs showed "No =
window up
from the selected window". This immediate return allowed my script to =
pass
control to the window manager. Currently, with the new 2-second delay, =
the
script halts for 2 seconds before passing control, only to display an =
error in the
minibuffer.

>> +(defcustom server-error-display-wait 2
>> +  "Number of seconds the server waits when displaying an error."
>> +  :type 'integer
>> +  :version "30.1")
>=20
> Thanks, but I don't see any need to make this a user option.  If some
> rare Lisp program needs to control the wait time after showing an
> error message, it can let-bind a simple variable.  Users have no
> reason to customize this time globally.

=46rom a user perspective, calling emacsclient --eval from a shell or =
script, I
would not expect it to halt execution for 2 seconds just to display an =
error on
the server. Especially since this also affects workflows where Emacs is =
run
daemonized.=20

For instance:

```
emacs =E2=80=94daemon=20
emacsclient --eval "(windmove-up)=E2=80=9D=20
```

will now take 2 seconds longer due to the display wait. Having it as a =
user
option would empower users to decide whether their scripts should incur =
this
delay or not, preserving the responsiveness of Emacs in integrated =
window
management or automation setups.  _(please note I know that these two =
commands
are a bit nonsensical given that there are no windows)_

Maybe I'm misunderstanding the intetion. =46rom the doc string I =
understand that
the delay is a means to fix a bug where the error might not be written =
to stderr
and thus showing the message somewhere. In daemonized mode that message =
is not
being displayed anywhere yet the client waits for it to finish =
displaying.
While I understand the reasoning behind the fixed delay, I believe it =
would be
more user-friendly to make it configurable, since the current approach =
halts
execution and may not suit all use cases.






Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 18:54:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 14:54:24 2025
Received: from localhost ([127.0.0.1]:51806 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udZB1-0000IY-MO
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 14:54:24 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:54706)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udZAz-0000IL-V8
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 14:54:22 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udZAt-0003an-54; Sun, 20 Jul 2025 14:54:15 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=6G901e6aq3z2VTfceTlQDnO5DCVAJCyGT2wLgA7NoTI=; b=HXBJYFYKTbfMJVvndCWU
 F3sKJNhYVkqQQi5jcOu2dJw1zhX3axl1rO71rw/sY2FFwf4jpj+cXqs3WqhRcmLndKqMqKlpst4vp
 IrIkfXKVV+23isCXTJlTO081sV/pLeZ3jyhL40UB3GXESUawgw8cSKIgieRjCN6ETU1ig3snaDQoh
 XuNU+96WPoDssPO+iopsHx4E+iTwO9RzKZVQ42kPJYV6kNvpl8D2VtL0eJqs9U7L8RfAdGFX5dYZC
 IFzr43S3pIjRmp8+5WntNmHyJLpp2B8jI8xDHVu1JWnU2KuLemha3My8m4GNSLNT+DMWmXvrNSjJ6
 Nq09QQk/2DWThw==;
Date: Sun, 20 Jul 2025 21:54:13 +0300
Message-Id: <86ecuad76y.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN> (message from
 Bror Winther on Sun, 20 Jul 2025 19:20:22 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
 <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Sun, 20 Jul 2025 19:20:22 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> Sure, no problem at all. I use a tiling window manager. For this I have a script
> for navigating between OS windows and for consistency I use the same script to
> navigate windows in Emacs. The script uses emacsclient --eval “(evil-window-up
> 1)” to navigate a window up, if this fails it will call the window manager
> instead because it means that there is no window in that direction. Because the
> wait is now 2 seconds it takes 2 seconds to shift focus out of emacs. This might
> be a minor nuisance but enough to be annoying.

Sorry, I don't understand: the wait is only when an error message is
to be displayed.  Your description above doesn't involve any messages,
AFAIU, so how is the recipe you've shown related to your real problem?

> +(defcustom server-error-display-wait 2
> +  "Number of seconds the server waits when displaying an error."
> +  :type 'integer
> +  :version "30.1")

Thanks, but I don't see any need to make this a user option.  If some
rare Lisp program needs to control the wait time after showing an
error message, it can let-bind a simple variable.  Users have no
reason to customize this time globally.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 17:20:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 13:20:44 2025
Received: from localhost ([127.0.0.1]:51489 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udXiN-0002YY-Q7
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 13:20:44 -0400
Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]:60564)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1udXiL-0002Y6-6m
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 13:20:42 -0400
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-608acb0a27fso6079868a12.0
 for <79058 <at> debbugs.gnu.org>; Sun, 20 Jul 2025 10:20:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753032035; x=1753636835;
 darn=debbugs.gnu.org; 
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=avfGTyLns0sOqOV5iHSSPF8+o3DPDLot5VGQ8ar2vcM=;
 b=z1pXfyHXjwd0y2dp1IuS50H+zSJ001sxAgqagLFVVHSIU90IsnPyZR/31NJ22YcyJL
 0qKFw+MnmYX4lWP7fRQ87KHahstd9KB86ue68eExpT7ZjaOYiWPRq4uWmbi8cqWTNxe6
 wRbBaJO3LNb2DhzfJ/8iQwjhyst1uMxMiR7rE7jBJ6UjNrNTDhsIzr9GVpYK0gRhAQ8K
 gYSagQGCEh244xY0Y5RwJ187cmMtPEWqcNtd/Dawr3d0WwseSONGow6TFWPHOsFs9bjS
 wYdVxNH8FSKH9Lc3/YrHRq471PWQ6IAoTddJ0HPmaGXUVlEYNzx91aEMITpewUj+gWCA
 tBkg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753032035; x=1753636835;
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=avfGTyLns0sOqOV5iHSSPF8+o3DPDLot5VGQ8ar2vcM=;
 b=EK4nzipDaV76Z5mEjatVaI1DRZC9eXJIGg9r4iCt6IqHinRgGtnpb1Ns9Xtw8tMMrc
 HtgmOE45BbgpAw2l/1CZl0CViapciDKI1QqSQ4xW/shHzTOSigSMNJuDX+Q86sGl55RU
 EsyogXFsoJTxTozTmHrnzdwvN2Oxy27L43Yjs4J66Pu9IpJeZ/+YtTlyHKiE9fPutrfj
 snACltyz/2zs5w7G9h0sk2vhNQmTb4Dyt8nUPxdCVrcsyPSuFwtXhWwrfi3aDP64tACJ
 bXqEAOMCCX3JdCoc+mBgkHuvJRSsY9gurq1pFtPmlBM27zkusQ8uKNIlhFWhM78doazg
 1/og==
X-Gm-Message-State: AOJu0YzIcujR+eo9BZgko+aWmoK/+eZMujJOD14vanDqSNxUJt1655pN
 Bm9F8CCvA+Z0bqvENghu1J7rhfhHZo8J3WrKlv7KIN9040U64stJW/VPPWMDeunX+kc=
X-Gm-Gg: ASbGncubtWo6+T532p5cLsGLWGxFy5N4WhrVNA1/wv3APK4sbYbu6JfJvhM73CsN5/H
 Yimq9F8IRt6IKRLuCuwDMiXd4OYr02AnqLDRHrePx04JhBF5OQTpf18ja3GdnaUT8tZMIEhgbFP
 LSo+tjVDi1XPEA3i+grJvGqwEINZ4Dodv2Ya6cjPkiwx3v75Xwr9QPkrR1hqpdM6S0gouh1G9Hz
 0KIA+l2KCylJEhwlaVMxJBwFuakW8TLfR6VoThP4ykOaE1mEB9w2pqq02VMgPCpUElNezCYCXBJ
 WcMZcTXSpcbZqM+zYrt4060YYwqgcKgWYQolJG7leljqKtVBugKCp7dV2zzpfOWnjaUKuBnLA9w
 BvXRuf7u9A5mpkg5OjYRWoefNXBNZ1Avvp3DsHTtbwiiVlhXWw5YWQ0Cak2XrrmrWJwrbyspY+8
 F2jJQvbGOY+ri8
X-Google-Smtp-Source: AGHT+IEk8szxRwXEPx2YZYZYPw2yjqHpIiy5ccH08Y8xrNzcPD11DAQwVqYlFDaBYDeGeijFQ1VCkg==
X-Received: by 2002:a05:6402:518c:b0:60e:e4b:b8e1 with SMTP id
 4fb4d7f45d1cf-61285dfe88dmr15300682a12.34.1753032034565; 
 Sun, 20 Jul 2025 10:20:34 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-612c8f07e0fsm4155783a12.13.2025.07.20.10.20.33
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 20 Jul 2025 10:20:33 -0700 (PDT)
From: Bror Winther <bbw@HIDDEN>
Message-Id: <7C990395-4E29-41FB-97D5-717C4BF4B3CC@HIDDEN>
Content-Type: multipart/mixed;
 boundary="Apple-Mail=_12497A49-F042-4DE0-BC50-6BA4543FF6F3"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
Date: Sun, 20 Jul 2025 19:20:22 +0200
In-Reply-To: <86ikjnc7b0.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN> <86ikjnc7b0.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--Apple-Mail=_12497A49-F042-4DE0-BC50-6BA4543FF6F3
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Sure, no problem at all. I use a tiling window manager. For this I have =
a script
for navigating between OS windows and for consistency I use the same =
script to
navigate windows in Emacs. The script uses emacsclient --eval =
=E2=80=9C(evil-window-up
1)=E2=80=9D to navigate a window up, if this fails it will call the =
window manager
instead because it means that there is no window in that direction. =
Because the
wait is now 2 seconds it takes 2 seconds to shift focus out of emacs. =
This might
be a minor nuisance but enough to be annoying.


--Apple-Mail=_12497A49-F042-4DE0-BC50-6BA4543FF6F3
Content-Disposition: attachment;
	filename=0001-Make-error-display-timout-configurable.patch
Content-Type: application/octet-stream;
	x-unix-mode=0644;
	name="0001-Make-error-display-timout-configurable.patch"
Content-Transfer-Encoding: quoted-printable

=46rom=20e918ae260ce72a9674a02a3475006d4bf00538ec=20Mon=20Sep=2017=20=
00:00:00=202001=0AFrom:=20Bror=20<git@HIDDEN>=0ADate:=20Sun,=2020=20=
Jul=202025=2014:35:17=20+0200=0ASubject:=20[PATCH]=20Make=20error=20=
display=20timout=20configurable=0A=0A*=20lisp/server.el=20=
(server-return-error):=20New=20user=20option=20to=20control=20how=20long=0A=
error=20messages=20are=20displayed=20when=20using=20`emacsclient=20=
--eval`.=20Previously=20this=0Awas=20hardcoded=20to=202=20seconds.=20=
Users=20can=20set=20it=20to=200=20to=20skip=20the=20wait.=0A---=0A=20=
lisp/server.el=20|=207=20++++++-=0A=201=20file=20changed,=206=20=
insertions(+),=201=20deletion(-)=0A=0Adiff=20--git=20a/lisp/server.el=20=
b/lisp/server.el=0Aindex=204415c45971e..d1eb1add836=20100644=0A---=20=
a/lisp/server.el=0A+++=20b/lisp/server.el=0A@@=20-173,6=20+173,11=20@@=20=
space=20(this=20means=20characters=20from=20!=20to=20~;=20or=20from=20=
code=2033=20to=0A=20=20=20:type=20'boolean=0A=20=20=20:version=20"22.1")=0A=
=20=0A+(defcustom=20server-error-display-wait=202=0A+=20=20"Number=20of=20=
seconds=20the=20server=20waits=20when=20displaying=20an=20error."=0A+=20=20=
:type=20'integer=0A+=20=20:version=20"30.1")=0A+=0A=20(defcustom=20=
server-visit-hook=20nil=0A=20=20=20"Hook=20run=20when=20visiting=20a=20=
file=20for=20the=20Emacs=20server."=0A=20=20=20:type=20'hook)=0A@@=20=
-1562,7=20+1567,7=20@@=20invocations=20of=20\"emacs\".")=0A=20=20=20=20=20=
;;=20Display=20the=20error=20as=20a=20message=20and=20give=20the=20user=20=
time=20to=20see=0A=20=20=20=20=20;;=20it,=20in=20case=20the=20error=20=
written=20by=20emacsclient=20to=20stderr=20is=20not=0A=20=20=20=20=20;;=20=
visible=20for=20some=20reason.=0A-=20=20=20=20(server--message-sit-for=20=
2=20(error-message-string=20err))=0A+=20=20=20=20=
(server--message-sit-for=20server-error-display-wait=20=
(error-message-string=20err))=0A=20=20=20=20=20(server-send-string=0A=20=20=
=20=20=20=20proc=20(concat=20"-error=20"=20(server-quote-arg=0A=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20(error-message-string=20err))))=0A--=20=0A2.49.0=0A=0A=

--Apple-Mail=_12497A49-F042-4DE0-BC50-6BA4543FF6F3
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii



//bror

> On 20 Jul 2025, at 15.37, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> Cc: 79058 <at> debbugs.gnu.org
>> Date: Sun, 20 Jul 2025 16:30:40 +0300
>> From: Eli Zaretskii <eliz@HIDDEN>
>>=20
>>> From: Bror Winther <bbw@HIDDEN>
>>> Date: Sun, 20 Jul 2025 14:58:06 +0200
>>> Cc: 79058 <at> debbugs.gnu.org
>>>=20
>>> Oh. Okay. I understand that this is probably not the best place to =
discuss
>>> features but having such a delay configurable would be nice. I have =
created a
>>> small patch. What email should I send it to?
>>=20
>> Post it to this very discussion thread.
>=20
> Btw, would you mind telling why it is important to have a script that
> yields an error message finish quickly?  Scripts don't usually emit
> errors, and when they do, the error should be clearly visible before
> it disappears from sight.


--Apple-Mail=_12497A49-F042-4DE0-BC50-6BA4543FF6F3--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 14:54:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 10:54:13 2025
Received: from localhost ([127.0.0.1]:50913 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udVQX-0000p9-SO
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 10:54:13 -0400
Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]:61555)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1udTcW-0000yo-5o
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 08:58:27 -0400
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-607cc1a2bd8so5534238a12.2
 for <79058 <at> debbugs.gnu.org>; Sun, 20 Jul 2025 05:58:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1753016298; x=1753621098;
 darn=debbugs.gnu.org; 
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=eeQSnDq2Gl+P1T+oN0U3ATSQ+xKhEUyLjrccczfpAhs=;
 b=Q1svl13UiXK1+YLHMWrtpkyU2H7PBT4/t4HvUBP7fcQQc4rGuSsDVheF9tUSwjjdQy
 SwQdW/1PO7pAZD4lZSIHvSdKwcNkwTl5SByK0fUnNYVLAAFKmntv4CdA10md9bkyLx0Y
 K1uzKr8eg3tVvWqit3u0iAWR3lx41LHis8sfavjZYMG1gnojsy9SBdvQ/1f7LONtqaPo
 5UmyyV94zl5VY2g1ZSYTGujEnZS0serud9j4g4qpO0EZ46zTguYnexJ5kZvgpWtzKfUL
 +4z0qunL01nzxC+HYFslkxQt+dFrcF2PBOr1DS76Tyi4yjzPt2x07/zXMennEWQmLh4/
 9oNQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1753016298; x=1753621098;
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=eeQSnDq2Gl+P1T+oN0U3ATSQ+xKhEUyLjrccczfpAhs=;
 b=X71owFfOBvCnv1gvI3dpvQoE8Et1HxrlbS5Z5tHJ8sLh4fvQLN6qNaxBEhpoKG5iET
 Zl/6O4gdCwDbf/gaC9VFL+ECjQvguia6iE3WOkNd9HnFiNCfidLNsI0xBWqgz5RwKu4q
 O4zhglcu7jfPloZYdRnrRjlR/kuYNZp3+Ba9m+rhQiUFE7j/44Wb1LSLPmSgT3rLxp5C
 Wx0lt0/g4+ArXbT4bJiKvdmOWqIEWOdsGy54Ynw3hp0LXmMnVM+VCSrGNRYxfx9s9AyS
 mQLXvxiMDIJ6VVCl5/Yw8SFNH+2mgl+yGc8zcAWK7Rl2bBx8NWSjbYYZ4zwshBto00ej
 AOQQ==
X-Gm-Message-State: AOJu0Yw0k/PKd8zDE0n6F9FZfdyuBrq8+ZiXN4rBT+TQNsZPIM0KPtox
 9Mx+pWPj+Xa5k+0u/YXNYm28QTkffFeHX9+Lwvy9yUXH0tM2Tqff1YyXZkHngeFrbkI/rjTBame
 oBnfO
X-Gm-Gg: ASbGncv7sj/cOrQtMrQSt1YfJCjspL69wyHPmYcgaGhiPcuZIbwK2PjlQrZjMywxcbB
 YlZKbM1z7R3WEHF5HxS62XtsyAEnunyJk6PbyK4LTwp+Nrwmo1bLhn80w1kDp4G3JlWeCTQw/f7
 2x2VwwaImIWCRZium7tPOfpmoPIJ/KoTVuI2zc53W2QI9uCc04bGsSBicdDDQ2s7PwkwPxJt97N
 NKh6Gtd2hVMrLGDUNMwEHvmIYNLFWg3p9ntIL5QVLlZIBnUSq6zss7m2Mm55ZyirJf4lZ5VtBC9
 KwWIAfUwV+8ksO1VIJuRvXmN4FOitNiluv/OygZyAS2cpV1lnM8D9r4yahpBH/Xwqgk1gLwZr45
 LZJcaJA0+gk/Gc7afHHte81RGEwMU2AQMmMIlErh2aUrRwUtwwQhu2CNe978zUTMRtKsJ2Hy+zk
 ztEQ==
X-Google-Smtp-Source: AGHT+IEo0x71VP2yvY2EArQiVN5fD/hXWFBg9qo1KIFmfeoN173gKPFwRrVQUNN7MsVg5m5Ab4AS/g==
X-Received: by 2002:a17:906:2a5b:b0:ae9:c2b9:7eba with SMTP id
 a640c23a62f3a-ae9cde4ab94mr1259597066b.24.1753016297545; 
 Sun, 20 Jul 2025 05:58:17 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-aec6c7dcf56sm488383666b.67.2025.07.20.05.58.17
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 20 Jul 2025 05:58:17 -0700 (PDT)
From: Bror Winther <bbw@HIDDEN>
Message-Id: <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
Content-Type: multipart/alternative;
 boundary="Apple-Mail=_62490806-72E3-44D7-A086-5076D663BB71"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
Date: Sun, 20 Jul 2025 14:58:06 +0200
In-Reply-To: <86o6tfcbod.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3774.200.91.1.1)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79058
X-Mailman-Approved-At: Sun, 20 Jul 2025 10:54:08 -0400
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--Apple-Mail=_62490806-72E3-44D7-A086-5076D663BB71
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

Oh. Okay. I understand that this is probably not the best place to =
discuss
features but having such a delay configurable would be nice. I have =
created a
small patch. What email should I send it to?

//bror

> On 20 Jul 2025, at 14.02, Eli Zaretskii <eliz@HIDDEN> wrote:
>=20
>> From: Bror Winther <bbw@HIDDEN>
>> Date: Sun, 20 Jul 2025 04:15:53 +0200
>>=20
>> After upgrading to 30.1 I have noticed that all my external scripts =
take
>> very long to finish from time to time. In particular I noticed the =
line
>> in my window manager script `emacsclient --eval "(evil-window-up 1)`
>> would take a long time to finish if there is no window found. This
>> causes the script to be very slow. I think I have narrowed it down to
>> `signal`.
>>=20
>> The time it takes to execute a simple signal seems to be very high.
>>=20
>> time emacsclient --eval "(signal 'user-error (list (apply =
#'format-message \"%s\" '(test))))"
>> *ERROR*: test
>> emacsclient --eval   0.00s user 0.00s system 0% cpu 2.013 total
>=20
> This is a feature: the Emacs server waits fore 2 sec after showing an
> error message, to make sure the user has time to see it:
>=20
>  (defun server-return-error (proc err)
>    (ignore-errors
>      ;; Display the error as a message and give the user time to see
>      ;; it, in case the error written by emacsclient to stderr is not
>      ;; visible for some reason.
>      (server--message-sit-for 2 (error-message-string err))
>      (server-send-string
>       proc (concat "-error " (server-quote-arg
> 			       (error-message-string err))))


--Apple-Mail=_62490806-72E3-44D7-A086-5076D663BB71
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; =
charset=3Dus-ascii"></head><body style=3D"overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><div>Oh. Okay. =
I understand that this is probably not the best place to =
discuss</div><div>features but having such a delay configurable would be =
nice. I have created a</div><div>small patch. What email should I send =
it to?</div><div><br></div><div><div>//bror<br =
id=3D"lineBreakAtBeginningOfMessage"><div><br><blockquote =
type=3D"cite"><div>On 20 Jul 2025, at 14.02, Eli Zaretskii =
&lt;eliz@HIDDEN&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div><meta =
charset=3D"UTF-8"><blockquote type=3D"cite" style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;">From: Bror Winther =
&lt;bbw@HIDDEN&gt;<br>Date: Sun, 20 Jul 2025 04:15:53 =
+0200<br><br>After upgrading to 30.1 I have noticed that all my external =
scripts take<br>very long to finish from time to time. In particular I =
noticed the line<br>in my window manager script `emacsclient --eval =
"(evil-window-up 1)`<br>would take a long time to finish if there is no =
window found. This<br>causes the script to be very slow. I think I have =
narrowed it down to<br>`signal`.<br><br>The time it takes to execute a =
simple signal seems to be very high.<br><br>time emacsclient --eval =
"(signal 'user-error (list (apply #'format-message \"%s\" =
'(test))))"<br>*ERROR*: test<br>emacsclient --eval &nbsp;&nbsp;0.00s =
user 0.00s system 0% cpu 2.013 total<br></blockquote><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">This is a feature: the Emacs server waits =
fore 2 sec after showing an</span><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;">error =
message, to make sure the user has time to see it:</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;(defun server-return-error (proc =
err)</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;"><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline =
!important;">&nbsp;&nbsp;&nbsp;(ignore-errors</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;; Display =
the error as a message and give the user time to see</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;; it, in =
case the error written by emacsclient to stderr is not</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;; visible =
for some reason.</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline =
!important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(server--message-sit-for 2 =
(error-message-string err))</span><br style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline =
!important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(server-send-string</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proc =
(concat "-error " (server-quote-arg</span><br style=3D"caret-color: =
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><span class=3D"Apple-tab-span" =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: pre; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;">	=
</span><span class=3D"Apple-tab-span" style=3D"caret-color: rgb(0, 0, =
0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
pre; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;">	</span><span class=3D"Apple-tab-span" style=3D"caret-color: =
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: pre; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;">	</span><span style=3D"caret-color: =
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; float: none; display: inline !important;"><span =
class=3D"Apple-converted-space">&nbsp;</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;(error-message-string =
err))))</span></div></blockquote></div><br></div></div></body></html>=

--Apple-Mail=_62490806-72E3-44D7-A086-5076D663BB71--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 13:37:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 09:37:21 2025
Received: from localhost ([127.0.0.1]:49724 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udUEC-0003gK-MV
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 09:37:21 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:35188)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udUE9-0003fj-Hy
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 09:37:18 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udUE3-0006yc-Vg; Sun, 20 Jul 2025 09:37:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=XlbTeeQtg6uzqtfOpB2q5D+R7tc8Lp7QYH7XnJvrfbg=; b=MqH9kYAr98No
 uJDGlkNC7E0Jpt34RHquhBVFprIUAuM9m+VNo561EyUV2FtjP6SYgsK7e84fRHR3JMmx7a0seoHWa
 +oAw7Vhli4StPPsPzgiWSOqCUH1pVrxHbL8Po9rPxhl13JGQ2jD3efHA8HNA7q6rQ5s37zjsawwnS
 7J17s5e298+k2I+UMsjND6/z+cWIrAcG+tn42SbQO/+wAnuo2ngPYMoOKH1OV3EhSzZs9HN/Va4ia
 tMzIgG2ZI3b34oXlzsfVnaFashweAeY7aZv/0Levfjg+rgq2XaSlfDKgOx1Ed7PmBfiSS33N3vQIy
 XktdbYX56Zmcqbb0eJcIUg==;
Date: Sun, 20 Jul 2025 16:37:07 +0300
Message-Id: <86ikjnc7b0.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: bbw@HIDDEN
In-Reply-To: <86jz43c7lr.fsf@HIDDEN> (message from Eli Zaretskii on Sun, 20
 Jul 2025 16:30:40 +0300)
Subject: Re: bug#79058: 30.1;
 involking signal using emacsclient takes very long time to complete
 ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
 <86jz43c7lr.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 79058 <at> debbugs.gnu.org
> Date: Sun, 20 Jul 2025 16:30:40 +0300
> From: Eli Zaretskii <eliz@HIDDEN>
> 
> > From: Bror Winther <bbw@HIDDEN>
> > Date: Sun, 20 Jul 2025 14:58:06 +0200
> > Cc: 79058 <at> debbugs.gnu.org
> > 
> > Oh. Okay. I understand that this is probably not the best place to discuss
> > features but having such a delay configurable would be nice. I have created a
> > small patch. What email should I send it to?
> 
> Post it to this very discussion thread.

Btw, would you mind telling why it is important to have a script that
yields an error message finish quickly?  Scripts don't usually emit
errors, and when they do, the error should be clearly visible before
it disappears from sight.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 13:31:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 09:31:06 2025
Received: from localhost ([127.0.0.1]:49698 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udU89-0003II-JE
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 09:31:06 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:43578)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udU7t-0003H8-Nb
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 09:30:58 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udU7n-00064u-DH; Sun, 20 Jul 2025 09:30:43 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=lhuNoKJnJl9rsXP4k9Pv6IuT/OvhW/u1pnwzVtSg4Jg=; b=CU1u0BSndPwG
 O7AskHbE6vLYrCdnWnjqfof+q/doPyIBEGQrZRZ3V0i015sdaLhmJogQlimEvV5tCVNbZ3Ug9ebnk
 FeT4CREpbcPbe+uRlYQwfAwzal3HabjBcViLhiRp8lkU9aNnHhZc8rcT8NhCJBTye6QoWUVso/N12
 b+kU5mU3P0GjPRGWccRXvBT4v6xdCgrqu8RNhwCHVc8NcuZmB6jeR7iHWO5Lpg2nHY9mdkhL2N3vT
 Ha6t4WLnqJgcn7sAG9zJT2kRkPuJKAo4qJlnrsQIsUYWHrkgzQ3Ic+SVS/z8aCfWm2HsKVbNQuUOG
 vD/cUpd2XcAw8MK0OdMZNg==;
Date: Sun, 20 Jul 2025 16:30:40 +0300
Message-Id: <86jz43c7lr.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN> (message from
 Bror Winther on Sun, 20 Jul 2025 14:58:06 +0200)
Subject: Re: bug#79058: 30.1; involking signal using emacsclient takes very
 long time to complete ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
 <86o6tfcbod.fsf@HIDDEN> <9F2CC53A-3617-4859-A222-B51ECBB8E3AD@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Sun, 20 Jul 2025 14:58:06 +0200
> Cc: 79058 <at> debbugs.gnu.org
> 
> Oh. Okay. I understand that this is probably not the best place to discuss
> features but having such a delay configurable would be nice. I have created a
> small patch. What email should I send it to?

Post it to this very discussion thread.

Thanks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at 79058 <at> debbugs.gnu.org:


Received: (at 79058) by debbugs.gnu.org; 20 Jul 2025 12:03:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 08:03:18 2025
Received: from localhost ([127.0.0.1]:49407 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udSlB-00038e-W0
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 08:03:18 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:57192)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1udSl6-000387-Tg
 for 79058 <at> debbugs.gnu.org; Sun, 20 Jul 2025 08:03:15 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1udSl0-0003PS-RL; Sun, 20 Jul 2025 08:03:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=F4eWwlTIKc8JTsWdSis0ePsF/zzeXP+y6DOEZwu0aKI=; b=b2N8DdmsS2eM
 KKNq2Z9cQAeAaSjqB1CHoMLjuBkKnyhWxDV4eFFmqP8AU/qb86hOCXJXgey28S1fqGlG81dKruydU
 vEiElQm5ozdslA2XAKK9p9C5ntd1FC4HWkMJOm0aJlaKUkVRt0nW9yoSQ8w/zwJtdyoRVN1mWA869
 Sg6+09NdYXrrSYNRs8NMpUaAhFyK62uq0lUd1OjRaa3J8mxPCih1ffAHXDNto5V7atKKd8/Z8fkts
 8oD7opi3+4pVkuZq6+85w38Z7l0iFxx32TxbWSUDO9nmWS7jubR2RmPB9WYRldoji+vi438jXM8xs
 IqqLywqw9rmVGe1VanzEZw==;
Date: Sun, 20 Jul 2025 15:02:42 +0300
Message-Id: <86o6tfcbod.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Bror Winther <bbw@HIDDEN>
In-Reply-To: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN> (message from
 Bror Winther on Sun, 20 Jul 2025 04:15:53 +0200)
Subject: Re: bug#79058: 30.1;
 involking signal using emacsclient takes very long time to complete
 ~2 seconds
References: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79058
Cc: 79058 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Bror Winther <bbw@HIDDEN>
> Date: Sun, 20 Jul 2025 04:15:53 +0200
> 
> After upgrading to 30.1 I have noticed that all my external scripts take
> very long to finish from time to time. In particular I noticed the line
> in my window manager script `emacsclient --eval "(evil-window-up 1)`
> would take a long time to finish if there is no window found. This
> causes the script to be very slow. I think I have narrowed it down to
> `signal`.
> 
> The time it takes to execute a simple signal seems to be very high.
>  
> time emacsclient --eval "(signal 'user-error (list (apply #'format-message \"%s\" '(test))))"
> *ERROR*: test
> emacsclient --eval   0.00s user 0.00s system 0% cpu 2.013 total

This is a feature: the Emacs server waits fore 2 sec after showing an
error message, to make sure the user has time to see it:

  (defun server-return-error (proc err)
    (ignore-errors
      ;; Display the error as a message and give the user time to see
      ;; it, in case the error written by emacsclient to stderr is not
      ;; visible for some reason.
      (server--message-sit-for 2 (error-message-string err))
      (server-send-string
       proc (concat "-error " (server-quote-arg
			       (error-message-string err))))




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 20 Jul 2025 10:50:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 20 06:50:28 2025
Received: from localhost ([127.0.0.1]:49063 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1udRcf-0003Z4-Pa
	for submit <at> debbugs.gnu.org; Sun, 20 Jul 2025 06:50:28 -0400
Received: from lists.gnu.org ([2001:470:142::17]:33976)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <bbw@HIDDEN>) id 1udJbA-00087G-U4
 for submit <at> debbugs.gnu.org; Sat, 19 Jul 2025 22:16:24 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <bbw@HIDDEN>) id 1udJb4-0000lG-UW
 for bug-gnu-emacs@HIDDEN; Sat, 19 Jul 2025 22:16:14 -0400
Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <bbw@HIDDEN>) id 1udJb0-0003qk-8K
 for bug-gnu-emacs@HIDDEN; Sat, 19 Jul 2025 22:16:14 -0400
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-ae401ebcbc4so541427766b.1
 for <bug-gnu-emacs@HIDDEN>; Sat, 19 Jul 2025 19:16:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=nobad-coffee.20230601.gappssmtp.com; s=20230601; t=1752977767; x=1753582567;
 darn=gnu.org; 
 h=to:date:message-id:subject:mime-version:content-transfer-encoding
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=e4bAiLaVXJggkd96Oz95aIjYwy+PJjF4mm4SpnrEi0A=;
 b=Lrti0Av9QCQKHUhoJ/CVsfqxUOi7lhj6sHzR2GVR8AV8zTXkGffzR7wTi4g+y6KNhg
 NWqXBdT52isWx5oYSgHw5Mg6jMChrs+n16styvij48jC+ec7bFs4Tg6Mt61LWHZCahsX
 QkB9Ia39gvFHJeYfW+E5YFOtHf5QvyM82WbHTT+eAL2ygwPT5P+tkFKKhESVbroOYwLy
 /Aay4SY61CnliCqg9wv743QtQuZdJu8CHl99PpzELX+5bXjn0sSvdnEKmPv+msALE516
 B1DVEyWKOovG25b+0MaG7MMdJL0pxodQ1sJklqeHcqwWryBIwcI/lA8ExKmCK80W82vM
 RU8w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1752977767; x=1753582567;
 h=to:date:message-id:subject:mime-version:content-transfer-encoding
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=e4bAiLaVXJggkd96Oz95aIjYwy+PJjF4mm4SpnrEi0A=;
 b=LwGC/4BFVUvHWDco4n1zxgni/CX8vh3UKSgO3zqhWJDPw4hkLpEWpuHdpf9F20rz7O
 Es37ruJP6pnVkOH5y7fysS2CTLXwWBXoxWKVaPVxhE0tBU0AZPLc6nRq9YgxBT7L0GfN
 kTyWuDpkdBQ3DYewCwoZqPUb7YG8cfoWj2OX+X+3LLlo0UGjeT+6d6qiuquGnUvS8ytA
 tHLTtwjpNHaZ90+JyxMQNP67GrwOh1DUqXxcsQJXH+ebjFdNtilMJ3jgI7ECdeelNnPX
 w5xNUJYUtZ5VvkwCHH2xfUzU1MGLCM2xqJqK6kEngoXbFPtsuBxns0+HvK9EyvzabyYZ
 05ng==
X-Gm-Message-State: AOJu0YyFzEXTIkjJdgAAGBDYOObQgOmZ0zmhlj+ENwYjXLBmQWzyD9UX
 SOx9jAU00fVzztNXiptVKV2l7LlwNN75iBdRp67IPONFRV0PyLL40l6Bb0zSVm9L0skaVvR4OhY
 Gdh4L
X-Gm-Gg: ASbGncuwCq1VtUUEc9nE4OSuIhYwGBr/eCPNOrOP4MRPpRaF5qYAUT10F4I/H1hYPfr
 bJDhzXPe9VRs1VBakl4sZ+zCODpxP5nnf7VAuQrEmV1psuLYgRcC7aUKq3KyPYvmZ94wW6W3WSe
 a9G6x8Ieq/qDRz6NvyUHIYDNvwIQw6XobNAJ7h48zj+V0OLBQJeZ6olin4twodrTHx5OgnVdHDY
 Of7JbhYTUgUHSGHMf0zgMmehOgDHcr5Ob/qRfN16U3Hh/cqQcpLJvETEu7kcFCWrNmXdoFnGitr
 W2tUOF3OcaZplBu3DLyf1yoLOwGASbQUm3lFTBbMGNYpVzrBL/DSO5wMTIPSpbTRrTk6ztxAndZ
 g15SMgA36oOznpioB6mRZwJpssU61nNuImLjkDevjGOLHB/KRbC54laXhJU1WLhlSRp7Zt3EgZa
 iaoVvEMZ/xbnOb
X-Google-Smtp-Source: AGHT+IE3F2RuNbzN0FZe/ncJrd5PFxhyrF992lfdaFlEN/pt4s0UuXBt0ZFJUb+0BHf6X81wVQ1d1w==
X-Received: by 2002:a17:907:3c94:b0:ae0:35fb:5c83 with SMTP id
 a640c23a62f3a-aec6a5fa8c4mr741592266b.28.1752977766807; 
 Sat, 19 Jul 2025 19:16:06 -0700 (PDT)
Received: from smtpclient.apple (80-163-18-196-cable.dk.customer.tdc.net.
 [80.163.18.196]) by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-aec6c7d475fsm405130866b.43.2025.07.19.19.16.06
 for <bug-gnu-emacs@HIDDEN>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 19 Jul 2025 19:16:06 -0700 (PDT)
From: Bror Winther <bbw@HIDDEN>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\))
Subject: 30.1; involking signal using emacsclient takes very long time to 
 complete ~2 seconds
Message-Id: <6D5FA875-C5F3-4364-B107-EA9CE61C0C07@HIDDEN>
Date: Sun, 20 Jul 2025 04:15:53 +0200
To: bug-gnu-emacs@HIDDEN
X-Mailer: Apple Mail (2.3774.200.91.1.1)
Received-SPF: none client-ip=2a00:1450:4864:20::62d;
 envelope-from=bbw@HIDDEN; helo=mail-ej1-x62d.google.com
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_NONE=0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Sun, 20 Jul 2025 06:50:22 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

After upgrading to 30.1 I have noticed that all my external scripts take
very long to finish from time to time. In particular I noticed the line
in my window manager script `emacsclient --eval "(evil-window-up 1)`
would take a long time to finish if there is no window found. This
causes the script to be very slow. I think I have narrowed it down to
`signal`.

The time it takes to execute a simple signal seems to be very high.
=20
time emacsclient --eval "(signal 'user-error (list (apply =
#'format-message \"%s\" '(test))))"
*ERROR*: test
emacsclient --eval   0.00s user 0.00s system 0% cpu 2.013 total

//bror

In GNU Emacs 30.1 (build 2, x86_64-apple-darwin23.1.0, NS appkit-2487.20
Version 14.1 (Build 23B74)) of 2025-06-23 built on baldr.nobad.coffee
Windowing system distributor 'Apple', version 10.3.2487
System Description:  macOS 14.1

Configured using:
'configure --disable-dependency-tracking --disable-silent-rules
--enable-locallisppath=3D/usr/local/share/emacs/site-lisp
--infodir=3D/usr/local/Cellar/emacs-plus@30/30.1/share/info/emacs
--prefix=3D/usr/local/Cellar/emacs-plus@30/30.1
--with-native-compilation=3Daot --with-xml2 --with-gnutls
--without-compress-install --without-dbus --without-imagemagick
--with-modules --with-rsvg --with-webp --with-xwidgets --with-ns
--disable-ns-self-contained 'CFLAGS=3D-O2 -DFD_SETSIZE=3D10000
-DDARWIN_UNLIMITED_SELECT -I/usr/local/opt/sqlite/include
-I/usr/local/opt/gcc/include -I/usr/local/opt/libgccjit/include'
'LDFLAGS=3D-L/usr/local/opt/sqlite/lib -L/usr/local/lib/gcc/15
-I/usr/local/opt/gcc/include -I/usr/local/opt/libgccjit/include''

Configured features:
ACL GIF GLIB GMP GNUTLS JPEG LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY
KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP XIM XWIDGETS ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: C/*l

Minor modes in effect:
  sly-symbol-completion-mode: t
  evil-traces-mode: t
  eros-mode: t
  tree-sitter-hl-mode: t
  global-ts-fold-mode: t
  ts-fold-mode: t
  tree-sitter-mode: t
  +format-with-lsp-mode: t
  lsp-diagnostics-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  lsp-modeline-workspace-status-mode: t
  lsp-modeline-diagnostics-mode: t
  lsp-modeline-code-actions-mode: t
  lsp-ui-mode: t
  lsp-ui-doc-mode: t
  lsp-ui-sideline-mode: t
  lsp-completion-mode: t
  lsp-managed-mode: t
  lsp-mode: t
  hl-todo-mode: t
  copilot-mode: t
  windmove-mode: t
  flycheck-popup-tip-mode: t
  flyspell-lazy-mode: t
  vi-tilde-fringe-mode: t
  display-line-numbers-mode: t
  save-place-mode: t
  global-so-long-mode: t
  diff-hl-flydiff-mode: t
  global-diff-hl-mode: t
  diff-hl-mode: t
  envrc-global-mode: t
  envrc-mode: t
  which-key-mode: t
  savehist-mode: t
  better-jumper-mode: t
  better-jumper-local-mode: t
  company-box-mode: t
  global-company-mode: t
  company-mode: t
  vertico-posframe-mode: t
  vertico-multiform-mode: t
  vertico-mode: t
  marginalia-mode: t
  evil-goggles-mode: t
  ultra-scroll-mode: t
  pixel-scroll-precision-mode: t
  evil-escape-mode: t
  evil-snipe-override-mode: t
  evil-snipe-mode: t
  evil-snipe-override-local-mode: t
  evil-snipe-local-mode: t
  org-roam-db-autosync-mode: t
  bug-reference-prog-mode: t
  global-git-commit-mode: t
  recentf-mode: t
  server-mode: t
  gcmh-mode: t
  global-hl-line-mode: t
  hl-line-mode: t
  winner-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  undo-fu-session-global-mode: t
  undo-fu-session-mode: t
  undo-fu-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  editorconfig-mode: t
  global-wakatime-mode: t
  wakatime-mode: t
  global-ligature-mode: t
  ligature-mode: t
  persp-mode: t
  doom-modeline-mode: t
  dtrt-indent-mode: t
  override-global-mode: t
  ue-global-mode: t
  projectile-mode: t
  solaire-global-mode: t
  global-atomic-chrome-edit-mode: t
  global-whitespace-mode: t
  whitespace-mode: t
  global-subword-mode: t
  subword-mode: t
  ns-auto-titlebar-mode: t
  +lsp-optimization-mode: t
  evil-mode: t
  evil-local-mode: t
  +popup-mode: t
  general-override-mode: t
  apheleia-global-mode: t
  apheleia-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  window-divider-mode: t
  minibuffer-regexp-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  abbrev-mode: t

Load-path shadows:
/Users/nah/.config/emacs/.local/straight/build-30.1/buck/buck hides =
/Users/nah/.config/emacs/.local/straight/build-30.1/ghub/buck
/Users/nah/.config/emacs/.local/straight/build-30.1/gtea/gtea hides =
/Users/nah/.config/emacs/.local/straight/build-30.1/ghub/gtea
/Users/nah/.config/emacs/.local/straight/build-30.1/glab/glab hides =
/Users/nah/.config/emacs/.local/straight/build-30.1/ghub/glab
/Users/nah/.config/emacs/.local/straight/build-30.1/gogs/gogs hides =
/Users/nah/.config/emacs/.local/straight/build-30.1/ghub/gogs
/Users/nah/.config/emacs/.local/straight/build-30.1/straight/straight-x =
hides =
/Users/nah/.config/emacs/.local/straight/repos/straight.el/straight-x
/Users/nah/.config/emacs/.local/straight/build-30.1/straight/straight =
hides =
/Users/nah/.config/emacs/.local/straight/repos/straight.el/straight
=
/Users/nah/.config/emacs/.local/straight/build-30.1/straight/straight-ert-=
print-hack hides =
/Users/nah/.config/emacs/.local/straight/repos/straight.el/straight-ert-pr=
int-hack
/Users/nah/.config/emacs/.local/straight/build-30.1/which-key/which-key =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/which-key
/Users/nah/.config/emacs/.local/straight/build-30.1/transient/transient =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/transient
/Users/nah/.config/emacs/.local/straight/repos/straight.el/indent hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/indent
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig-conf-mode hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig-co=
nf-mode
/Users/nah/.config/emacs/.local/straight/build-30.1/jsonrpc/jsonrpc =
hides /usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/jsonrpc
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig-core hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig-co=
re
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig-tools hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig-to=
ols
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig-core-handle hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig-co=
re-handle
/Users/nah/.config/emacs/.local/straight/build-30.1/bind-key/bind-key =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/bind-key
=
/Users/nah/.config/emacs/.local/straight/build-30.1/editorconfig/editorcon=
fig-fnmatch hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/editorconfig-fn=
match
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-jump hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-jump
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-ensure-system-package hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-ensure-system-package
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-diminish hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-diminish
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-delight hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-delight
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-lint hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-lint
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-core hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-core
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-ensure hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-ensure
=
/Users/nah/.config/emacs/.local/straight/build-30.1/use-package/use-packag=
e-bind-key hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/use-package/use=
-package-bind-key
/Users/nah/.config/emacs/.local/straight/build-30.1/xref/xref hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/progmodes/xref
/Users/nah/.config/emacs/.local/straight/build-30.1/project/project =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/progmodes/proje=
ct
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-comint hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-comint
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-exp hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-exp
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-ctags hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-ctags
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-emacs-lisp =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-emacs-li=
sp
/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-texinfo hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-texinfo
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-irc hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-irc
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-doi hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-doi
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-refile hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-refile
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-version =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-version=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-num hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-num
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-mhe hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-mhe
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-shell hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-shell
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-attach hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-attach
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-C hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-C
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-macs hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-macs
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-entities =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-entitie=
s
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-dot hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-dot
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-sql hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-sql
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-eww hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-eww
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-datetree =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-datetre=
e
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-macro hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-macro
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-eval hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-eval
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-haskell hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-haskell
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-org hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-org
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-rmail hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-rmail
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-awk hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-awk
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-groovy hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-groovy
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-icalendar =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-icalenda=
r
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-octave hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-octave
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-scheme hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-scheme
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-mobile hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-mobile
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-processing =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-processi=
ng
/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc-biblatex =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc-biblatex=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc-csl hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc-csl
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-colview =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-colview=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-R hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-R
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-table hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-table
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-html hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-html
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-fortran hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-fortran
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-plantuml =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-plantuml=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-docview hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-docview
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-perl hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-perl
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-sqlite hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-sqlite
/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc-basic hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc-basic
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-sed hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-sed
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-fold-core =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-fold-co=
re
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-ditaa hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-ditaa
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-ruby hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-ruby
/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc-bibtex hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc-bibtex
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-habit hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-habit
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-loaddefs =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-loaddef=
s
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-gnus hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-gnus
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-screen hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-screen
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-mouse hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-mouse
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-css hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-css
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-inlinetask =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-inlinet=
ask
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-lisp hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-lisp
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-eshell hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-eshell
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-pcomplete =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-pcomple=
te
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-lint hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-lint
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-id hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-id
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-capture =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-capture=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-sass hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-sass
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-tangle hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-tangle
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-calc hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-calc
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-java hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-java
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-compat hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-compat
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-attach-git =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-attach-=
git
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-beamer hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-beamer
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-protocol =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-protoco=
l
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-element =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-element=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-lob hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-lob
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-tempo hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-tempo
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-python hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-python
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-latex hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-latex
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-w3m hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-w3m
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-agenda hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-agenda
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-persist =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-persist=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-ocaml hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-ocaml
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-ref hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-ref
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-fold hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-fold
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-julia hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-julia
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-lilypond =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-lilypond=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-table hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-table
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-clojure hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-clojure
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-indent hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-indent
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-plot hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-plot
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-latex hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-latex
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-src hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-src
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-duration =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-duratio=
n
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-makefile =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-makefile=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-info hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-info
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-clock hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-clock
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-forth hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-forth
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-odt hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-odt
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-man hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-man
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-publish hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-publish
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-archive =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-archive=

/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-org hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-org
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-lua hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-lua
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-keys hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-keys
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-eshell hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-eshell
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-faces hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-faces
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-man hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-man
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-list hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-list
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-md hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-md
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-goto hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-goto
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-bbdb hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-bbdb
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ol-bibtex hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ol-bibtex
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-koma-letter =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-koma-let=
ter
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox-ascii hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox-ascii
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-matlab hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-matlab
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ox hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ox
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-timer hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-timer
/Users/nah/.config/emacs/.local/straight/build-30.1/org/oc-natbib hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/oc-natbib
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-core hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-core
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-feed hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-feed
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-gnuplot hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-gnuplot
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-js hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-js
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-element-ast =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-element=
-ast
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-footnote =
hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-footnot=
e
/Users/nah/.config/emacs/.local/straight/build-30.1/org/ob-maxima hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/ob-maxima
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-cycle hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-cycle
/Users/nah/.config/emacs/.local/straight/build-30.1/org/org-crypt hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/org/org-crypt
/Users/nah/.config/emacs/.local/straight/build-30.1/compat/compat hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/emacs-lisp/comp=
at
/Users/nah/.config/emacs/.local/straight/build-30.1/map/map hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/emacs-lisp/map
/Users/nah/.config/emacs/.local/straight/build-30.1/seq/seq hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/emacs-lisp/seq
/Users/nah/.config/emacs/.local/straight/build-30.1/eldoc/eldoc hides =
/usr/local/Cellar/emacs-plus@30/30.1/share/emacs/30.1/lisp/emacs-lisp/eldo=
c

Features:
(shadow sort adaptive-wrap mail-extr emacsbug make-mode bat-mode
dumb-jump emacsql-sqlite-builtin macrostep-c cmacexp
evil-collection-macrostep macrostep gitignore-mode consult-xref
evil-collection-shortdoc shortdoc sly-completion sly-buttons
sly-messages sly-common hyperspec evil-traces evil-ex char-fold
elisp-def ert eros elisp-demos highlight-quoted evil-collection-helpful
helpful cc-langs trace cl-print evil-collection-edebug edebug
evil-collection-debug debug backtrace lisp-mode info-look help-fns
radix-tree evil-collection-elisp-refs elisp-refs
evil-textobj-tree-sitter evil-textobj-tree-sitter-thing-at-point
evil-textobj-tree-sitter-core tree-sitter-langs tree-sitter-langs-build
tree-sitter-hl ts-fold ts-fold-summary ts-fold-parsers ts-fold-util
tree-sitter tree-sitter-load tree-sitter-cli tsc tsc-dyn tsc-dyn-get
dired-aux tsc-obsolete conf-mode apheleia apheleia-rcs apheleia-dp
apheleia-formatters apheleia-utils apheleia-log
apheleia-formatter-context jka-compr delsel files-x consult-flycheck
evil-collection-consult consult evil-collection-flymake flymake
lsp-diagnostics doom-snippets doom-snippets-lib yasnippet elisp-mode
company-yasnippet lsp-modeline lsp-icons lsp-lens hide-mode-line lsp-ui
lsp-ui-flycheck lsp-ui-doc evil-collection-xwidget xwidget
evil-collection-image image-mode exif magit-bookmark
evil-collection-bookmark bookmark goto-addr evil-collection-lsp-ui-imenu
lsp-ui-imenu lsp-ui-peek lsp-ui-sideline lsp-ui-util
evil-collection-view view lsp-zig lsp-yang lsp-yaml lsp-xml lsp-wgsl
lsp-volar lsp-vimscript lsp-vhdl lsp-vetur lsp-html lsp-verilog lsp-vala
lsp-v lsp-typespec lsp-typeprof lsp-ttcn3 lsp-ts-query lsp-trunk
lsp-toml-tombi lsp-toml lsp-tilt lsp-tex lsp-svelte lsp-steep lsp-sqls
lsp-sql lsp-sourcekit lsp lsp-sorbet lsp-solidity lsp-solargraph
lsp-semgrep lsp-rust lsp-ruff lsp-ruby-syntax-tree lsp-ruby-lsp
lsp-rubocop lsp-roslyn lsp-roc lsp-rf lsp-remark lsp-racket lsp-r
lsp-qml lsp-python-ty lsp-pylsp lsp-pyls lsp-pwsh lsp-purescript
lsp-postgres lsp-pls lsp-php lsp-perlnavigator lsp-perl lsp-openscad
lsp-ocaml lsp-nushell lsp-nix lsp-nim lsp-nginx lsp-nextflow lsp-move
lsp-mojo lsp-mint lsp-meson lsp-mdx lsp-matlab lsp-marksman lsp-markdown
lsp-magik lsp-fennel lsp-lua lsp-lisp lsp-kubernetes-helm lsp-kotlin
lsp-json lsp-jq lsp-javascript lsp-idris lsp-haxe lsp-hack lsp-groovy
lsp-graphql lsp-golangci-lint lsp-glsl lsp-gleam lsp-gdscript lsp-fsharp
lsp-futhark lsp-fortran lsp-eslint lsp-erlang lsp-emmet lsp-elm
lsp-elixir lsp-earthly lsp-dockerfile lsp-dhall lsp-d lsp-cypher
lsp-cucumber lsp-copilot lsp-css lsp-c3 lsp-csharp lsp-crystal lsp-credo
lsp-cobol lsp-cmake lsp-clojure lsp-clangd lsp-bufls lsp-go
lsp-completion lsp-beancount lsp-bash lsp-awk lsp-autotools lsp-astro
lsp-asm lsp-ansible lsp-angular lsp-ada lsp-semantic-tokens
lsp-actionscript ccls ccls-member-hierarchy ccls-inheritance-hierarchy
ccls-call-hierarchy ccls-tree ccls-code-lens ccls-semantic-highlight
ccls-common cc-mode-expansions smartparens-c cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs lsp-mode
lsp-protocol spinner network-stream hl-todo copilot copilot-balancer
jsonrpc gdscript-mode gdscript-ts-mode gdscript-eglot gdscript-hydra
hydra lv gdscript-godot gdscript-project gdscript-history
gdscript-comint gdscript-debug gdscript-format gdscript-comint-gdformat
gdscript-completion gdscript-fill-paragraph gdscript-imenu
gdscript-indent-and-nav gdscript-rx gdscript-utils gdscript-syntax
gdscript-keywords gdscript-docs evil-collection-eww eww url-queue mm-url
gdscript-customization vertico-directory windmove evil-collection-vc-git
vc-git auto-minor-mode flycheck-popup-tip evil-collection-popup popup
org-contacts gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum
gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail
mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win
evil-collection-gnus gnus nnheader range embrace expand-region
subword-mode-expansions text-mode-expansions the-org-mode-expansions
er-basic-expansions expand-region-core expand-region-custom
flyspell-lazy flyspell ispell writegood-mode toc-org org-eldoc evil-org
vi-tilde-fringe display-line-numbers indent-bars evil-collection-custom
cus-edit cus-start cus-load org-indent oc-basic ol-bibtex bibtex
smartparens-go evil-collection-go-mode go-mode find-file ffap etags
fileloop evil-collection-xref xref saveplace evil-collection-so-long
so-long diff-hl-flydiff evil-collection-diff-hl diff-hl
evil-collection-log-view log-view evil-collection-vc-dir vc-dir ewoc vc
vc-dispatcher envrc inheritenv vertico-sort vertico-repeat
evil-collection-which-key which-key savehist better-jumper company-box
company-box-doc frame-local company-box-icons company-capf php-extras
company vertico-posframe posframe vertico-multiform
evil-collection-vertico vertico orderless marginalia evil-goggles
evil-collection-ultra-scroll ultra-scroll pixel-scroll cua-base
evil-easymotion avy evil-escape evil-snipe pulse org-agenda
evil-collection-org evil-collection-org-roam org-roam-migrate
org-roam-log org-roam-mode org-roam-capture org-roam-id org-roam-node
org-roam-db org-roam-utils org-roam-compat org-roam org-capture
org-element org-persist xdg avl-tree generator org-attach org-id
org-refile org-element-ast inline smartparens-org org ob-emacs-lisp
org-table org-loaddefs ob ob-tangle ol ob-ref ob-lob ob-table ob-exp
org-macro org-src evil-collection-sh-script sh-script smie treesit
executable org-keys oc ob-comint ob-core org-cycle org-fold ob-eval
org-pcomplete org-list org-footnote org-fold-core org-entities org-faces
org-version org-compat org-macs evil-collection-calendar cal-menu
calendar cal-loaddefs code-review code-review-actions
code-review-comment code-review-section code-review-bitbucket
code-review-faces shr pixel-fill kinsoku url-file svg xml dom emojify
evil-collection-apropos apropos evil-collection-tar-mode tar-mode
evil-collection-arc-mode arc-mode archive-mode ht code-review-gitlab
code-review-utils evil-collection-forge forge-repos forge-tablist
forge-topics forge-commands forge-semi forge-bitbucket buck forge-gogs
gogs forge-gitea gtea forge-gitlab glab forge-github forge-forgejo
forge-notify forge-revnote forge-pullreq forge-issue forge-discussion
forge-topic yaml parse-time iso8601 eieio-custom bug-reference
forge-post smartparens-markdown evil-collection-markdown-mode
markdown-mode edit-indirect color evil-collection-outline noutline
outline forge-repo forge forge-core forge-db code-review-parse-hunk
code-review-github code-review-db uuidgen calc-misc calc-ext
evil-collection-calc calc calc-loaddefs calc-macs a
code-review-interfaces deferred ghub-graphql treepy gsexp ghub url-http
url-gw nsm url-auth gnutls closql emacsql-sqlite emacsql
emacsql-compiler eieio-base magit-autoloads evil-collection-magit
magit-submodule magit-blame magit-stash magit-reflog magit-bisect
magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
evil-collection-magit-repos magit-repos magit-apply magit-wip magit-log
which-func magit-diff evil-collection-smerge-mode smerge-mode diff
evil-collection-diff-mode diff-mode track-changes magit-core
magit-autorevert magit-margin magit-transient git-commit
evil-collection-log-edit log-edit message sendmail yank-media puny
evil-collection-dired dired dired-loaddefs rfc822 mml mml-sec
evil-collection-epa epa epg rfc6068 epg-config gnus-util time-date
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log magit-process magit-mode transient pp benchmark
magit-git magit-base evil-collection-magit-section magit-section
format-spec cursor-sensor crm llama evil-collection-with-editor
with-editor shell pcomplete recentf tree-widget wid-edit server
autorevert filenotify gcmh hl-line winner smartparens-config
smartparens-text smartparens advice loadhist undo-fu-session undo-fu
evil-collection-flycheck flycheck-package package-lint
evil-collection-imenu imenu evil-collection-finder finder finder-inf
lisp-mnt evil-collection-package-menu package browse-url url url-proxy
url-privacy url-expand url-methods url-history mailcap url-handlers
flycheck find-func ws-butler editorconfig editorconfig-core
editorconfig-core-handle editorconfig-fnmatch wakatime-mode ligature
persp-mode doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core shrink-path f s dash nerd-icons nerd-icons-faces
nerd-icons-data nerd-icons-data-mdicon nerd-icons-data-flicon
nerd-icons-data-codicon nerd-icons-data-devicon nerd-icons-data-sucicon
nerd-icons-data-wicon nerd-icons-data-faicon nerd-icons-data-powerline
nerd-icons-data-octicon nerd-icons-data-pomicon nerd-icons-data-ipsicon
compat dtrt-indent use-package-bind-key bind-key ue projectile project
evil-collection-grep grep evil-collection-compile compile
text-property-search evil-collection-comint comint ansi-osc ansi-color
evil-collection-ibuffer ibuffer-vc ibuf-ext ibuffer ibuffer-loaddefs
generic doom-themes-ext-org solaire-mode face-remap doom-one-theme
doom-themes doom-themes-base evil-collection-atomic-chrome atomic-chrome
websocket url-cookie generate-lisp-file url-domsuf url-util url-parse
auth-source eieio password-cache url-vars bindat disp-table whitespace
cap-words superword subword json map evil-collection-tabulated-list
evil-collection-tab-bar evil-collection-simple evil-collection-replace
evil-collection-process-menu evil-collection-kmacro evil-collection-info
evil-collection-indent evil-collection-help evil-collection-eldoc
evil-collection-buff-menu evil-collection annalist let-alist
smartparens-elixir ns-auto-titlebar ibuf-macs evil evil-integration
evil-maps evil-commands reveal evil-jumps evil-command-window evil-types
evil-search evil-macros evil-repeat evil-states evil-core evil-common
thingatpt rect evil-vars ring edmacro kmacro byte-opt derived
doom-editor doom-projects doom-ui doom-keybinds use-package-core general
info eieio-core comp comp-cstr cl-extra help-mode warnings icons
comp-run bytecomp byte-compile comp-common rx :system easy-mmode
doom-start doom doom-lib cl-seq cl-macs cl-loaddefs cl-lib doom-compat
gv jansson dynamic-modules pcase subr-x rmc iso-transl tooltip cconv
eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type mwheel
term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch
easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads xwidget-internal kqueue cocoa
ns lcms2 multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1723170 514800) (symbols 48 110486 3) (strings 32 387607 =
49338)
(string-bytes 1 13385179) (vectors 16 162710) (vector-slots 8 1980397 =
462793)
(floats 8 1687 7990) (intervals 56 39429 795) (buffers 992 58))







Acknowledgement sent to Bror Winther <bbw@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#79058; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 23 Jul 2025 11:30:02 UTC

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