GNU bug report logs - #63469
29.0.90; project.el doesn't add menu-bar entries

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: Spencer Baugh <sbaugh@HIDDEN>; dated Fri, 12 May 2023 17:49:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 18:42:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 25 14:42:48 2023
Received: from localhost ([127.0.0.1]:48131 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q2FvE-0000Tu-IJ
	for submit <at> debbugs.gnu.org; Thu, 25 May 2023 14:42:48 -0400
Received: from relay9-d.mail.gandi.net ([217.70.183.199]:50177)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q2FvC-0000Tf-Qy
 for 63469 <at> debbugs.gnu.org; Thu, 25 May 2023 14:42:47 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id EFF37FF804;
 Thu, 25 May 2023 18:42:39 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <db4d9f6e-2e48-2334-aeee-9a0fff771fb7@HIDDEN> (Dmitry Gutov's
 message of "Thu, 25 May 2023 19:14:36 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
 <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
 <86jzwyw8j5.fsf@HIDDEN>
 <6a5c2251-52a8-e389-f2ab-08da775fab82@HIDDEN>
 <867csw53fm.fsf@HIDDEN>
 <db4d9f6e-2e48-2334-aeee-9a0fff771fb7@HIDDEN>
Date: Thu, 25 May 2023 21:41:32 +0300
Message-ID: <868rdcfe3n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

>>> -(cl-defmethod project-name ((_project (head vc)))
>>> -  (or project-vc-name
>>> +(cl-defmethod project-name ((project (head vc)))
>>> +  (or (project--value-in-dir 'project-vc-name (project-root project))
>>>         (cl-call-next-method)))
>> Thanks, I confirm this uses project-vc-name from dir-locals in non-file
>> buffers.
>
> If you had a chance to verify that the performance is good enough (for
> using the result in the mode-line), that would be great.
>
> Either way...
>
>>>> ;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)
>>>
>>> Huh, so the attribute :safe only makes proper sense for preloaded packages
>>> and autoloaded defcustom forms (which are discouraged anyway).
>>>
>>> Do you want to write a patch for all those vars in project.el? It will
>>> probably make sense to push it to emacs-29.
>> With this patch the problem is solved.  I can push it to emacs-29.
>
> ...this patch LGTM too. Please go ahead and install it, or even both
> patches.

I pushed ###autoload to emacs-29.  But not sure about your patch
since currently I have no idea how to verify its performance.
Maybe it should be pushed to master so that everyone can test it?




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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 16:18:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 25 12:18:02 2023
Received: from localhost ([127.0.0.1]:47946 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q2Df8-0002Fx-1u
	for submit <at> debbugs.gnu.org; Thu, 25 May 2023 12:18:02 -0400
Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:56271)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q2Df6-0002FS-CY
 for 63469 <at> debbugs.gnu.org; Thu, 25 May 2023 12:18:00 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.west.internal (Postfix) with ESMTP id A4301320084E;
 Thu, 25 May 2023 12:17:54 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Thu, 25 May 2023 12:17:54 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1685031474; x=1685117874; bh=A82dlXkcUr5PCMkSp888Cva4V8jN/fzq8vy
 PvyvX5+w=; b=u5Fhy7aVWN9otex5Qu1gYbp74Rqidg0w9A+uUMcG+Csv+L4cedT
 /lDERvpxTnGY9ocB+XxPz3LnJLRqAkUjxXfiGwlQLTOh17uFNHuQqKtx8pmT1ylo
 MlMSE1bc85j80hWg9kUfk9ZtsC38QQhiYXEggOQWYOvLxnD3AgTS8VL36Yyn39Me
 vMDi3ucDyUg1nJzwt1JcNc2qd1W79Xka6tNCefE0Tk+mB0MFgFsiuTYJEEYf3e5c
 wjJ5MIYY/LSUFkuvM2p/w6XfV+XkEWFsaHsLqTCqCp1Qd0v6weEbIL3x499kPF1T
 hjONnppsXqZfd2AYrjR0HYHY5/eoOMTcvyw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1685031474; x=1685117874; bh=A82dlXkcUr5PCMkSp888Cva4V8jN/fzq8vy
 PvyvX5+w=; b=XYR3stsQ0b5RuMSL1LDnOTCehVnHxNBl/wPdfL5pG6dmoX6vGMZ
 rpt/UF2vl6ImRmxuIaoUdYefVjDx/uKPHTlnmA3NXELs9IjROudqaaolVXsozoEG
 TZMdVEjWhJIgHWnlrs9dRusW+1Igmee41Ihncb7ETEeCeIaNJ9W43WSPumIXgLqZ
 6N32WHIyeJY2vOlQrrZf+PhrRtd9vvHyQOecO4BRIwKEfX11N1KaILmX1G6UTcFT
 JGQL/w+/NcnSIpYAXGmSdJ8YK0TSt9la0NBQh+JrGmUgvxMNN9qwNGXf9yyIh9bv
 kdRUgzc5j4H673pFYWH3kmZccrOKhJr6X0w==
X-ME-Sender: <xms:MYpvZOSk97KzwlPuH0qv9SWBnw1ShE-9romkJVV-R6CeTDgZNP-iRQ>
 <xme:MYpvZDwpvLOK3GNxbfvcUpK2h1zdV4uPWHhGLMnt2kHx5m8MOgr5pRvYswLi6fBnT
 XU9ZMDjJbO2mIUfl1c>
X-ME-Received: <xmr:MYpvZL3O2ZZbBycdTIaQ8gxs8cr57IxGMhGtxGSpDdrtjQwr4EzpqxjWom_t9zM>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejjedgleekucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:MYpvZKBAmquyZeVyhMFlxtXGsjAIEPqj3wvIEReXYltN7uzlUL2wJA>
 <xmx:MYpvZHgIgTaitXjdTNCG-yh2ZvsdUkGy9sJvWzqTn2f4B-ga7o8vkA>
 <xmx:MYpvZGoHE4IR42xiCP6IpCqFG0qAog_M6McZykL4U_38A5QvkZyCrQ>
 <xmx:MopvZKusB6mTX7oeysPcJEV95BQ-PjVOhi1H1tkTugh1_CCD2h9KQA>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 25 May 2023 12:17:52 -0400 (EDT)
Message-ID: <3a0fca4f-1ec5-ae9c-2ae5-fcadda8f3755@HIDDEN>
Date: Thu, 25 May 2023 19:17:51 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
 <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN>
 <868rdexnrz.fsf@HIDDEN>
 <30e11f7d-0015-b509-33ee-c2afdd6dffaf@HIDDEN>
 <865y8g53cn.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <865y8g53cn.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <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: -2.9 (--)

On 25/05/2023 09:35, Juri Linkov wrote:
>>>>> Sharing between vc and project would be nice.  If possible, this will
>>>>> allow a shorter modeline indicator that will combine vc and project like
>>>>>      --- project-branch ---
>>>>> where the project name replaces the vc-backend name.
>>>> That indeed sounds like something that should require specific
>>>> configuration. There can be projects without a branch, or branches without
>>>> "current project".
>>>>
>>>> Or situations like the project root is not the vc root. E.g. when the
>>>> current buffer is in a submodule (so the current branch is submodule's),
>>>> and the project pertains to the parent repository.
>>> The idea is simple: just to replace the backend name by the project name
>>> when the project and its name are non-nil.
>> I'm not sure the effect will be clear enough and appreciated by all of our
>> users.
> This is intended only after customization like this that shows the backend
> by default:
> 
>    (defcustom vc-mode-line-format '(backend status revision)
>      "What items to display on the mode line.
>    Possible values:
>    `project' - the current project name;
>    `backend' - backend name;
>    `status' - a character that denotes the vc status;
>    `revision' - revision number and/or lock status;
>    `commit' - commit name;
>    `commit-abbr' - abbreviated commit name;
>    `branch' - branch name;
>    `separator' - a string between items.
>    See more at Info node (emacs) VC Mode Line."
>      :type '(repeat
>              (choice
>               (const :tag "Project name" project)
>               (const :tag "Backend name" backend)
>               (const :tag "Status character" status)
>               (const :tag "Revision number/Lock status" revision)
>               (const :tag "Commit name" commit)
>               (const :tag "Abbreviated commit name" commit-abbr)
>               (const :tag "Branch name" branch)
>               (function :tag "Custom function")
>               (string :tag "Separator")))
>      :version "30.1"
>      :group 'vc)

It's not quite ideal, since there are projects without VCS and VC 
without projects (as mentioned previously), but it sounds like a worthy 
experiment.

Especially since the new behavior will be optional.




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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 16:14:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 25 12:14:47 2023
Received: from localhost ([127.0.0.1]:47941 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q2Dbz-0002Ad-FG
	for submit <at> debbugs.gnu.org; Thu, 25 May 2023 12:14:47 -0400
Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:40207)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q2Dbx-0002AR-Vq
 for 63469 <at> debbugs.gnu.org; Thu, 25 May 2023 12:14:46 -0400
Received: from compute6.internal (compute6.nyi.internal [10.202.2.47])
 by mailout.west.internal (Postfix) with ESMTP id 11FF8320090F;
 Thu, 25 May 2023 12:14:40 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute6.internal (MEProxy); Thu, 25 May 2023 12:14:40 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1685031279; x=1685117679; bh=E+qBiSK5ZMSV7mVQahV1qfDNSKThGvMcR5Z
 aCRGPbDo=; b=jryUmoZBMwKSLhUb9lMJHL+ahzD/oVtb1kDVy5lpSg/P5uzUJpX
 G0V8qSKgLAZc77Vu/8Vf8/l+/CWKWvuJPmZRz1pLskZ6eKIJgXc+/0B/3gUHL2kx
 YNyoWzDAAXMRdK9YbehF69meNdQJfb8+CEQ3LeF1ZktsGzI3tKBXNT/fVXAX/wDV
 SGwWT0sw3JGdO2LwP55AVk1WPkIc2garaLLd5y9s3YdzCmVP3PC5s738V0YtyXZN
 ZkwOpjN2v5ewJPGZW9PhttZCawAjhElBuS1mxkX2kZsF1If2uf37VpHfEHQqNg3Q
 cwPo7B5I2gnkhVjRQFcSD6NRzdJMrwR2tXQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1685031279; x=1685117679; bh=E+qBiSK5ZMSV7mVQahV1qfDNSKThGvMcR5Z
 aCRGPbDo=; b=yuSB+QNWXr/S5E2FMiNkQKuCcyGvupORUBAN9YZDfnVW1cCq6is
 70sCvLHYjDBR82wNxsY0e5xFZvg7hE8TU3mc2dwEgc3SEclgWlga1bt8V0TcU6Hc
 +Yu+BYVZ+nFIzxHnDD1a6qecBW1PQJJgRBi1MoR2zh3yhELMjQqMSdNh9nGk1+ix
 lEewLQMnAlVtB/yEL/ylD3iwqFqvp82AGG05BKTKP0dZK+/4FmwcqUTXb2F2lYHP
 64Uj83kWLfstxU9IVR2VvByUHo0/tDkJGZiEUMbKbZKC8nxtKTFmgDVm6OfLT+uA
 TQTFMFtWDENzOwFKOSJD7tfwovYbKcsWk7w==
X-ME-Sender: <xms:b4lvZPW1BS_a8fvm3QMIvh2Av-GffyTExwrn5yDMyXDK0DDg5bOEXQ>
 <xme:b4lvZHmzuqKDKnuyNjygwysnOw_3r2PjwF9wW_2WZbmkckHudn-nSuORApEMOr4Sr
 1TQmmMu4hAK_pD6eNw>
X-ME-Received: <xmr:b4lvZLZ4qV_d4-zTp9Pty-M-DvOhYmRQTykiiaJL710Dy9iUyaCiSAe5ETwkOeg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejjedgleejucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:b4lvZKVVR16tu9w-ygLWguLLdi7uoZwM3E-bZKkZtnCAX82GsUiiZw>
 <xmx:b4lvZJl5sYGsRbGx5xzcPc_wPXWm5oEqMC2UtJJWylUdLZhWZym-nQ>
 <xmx:b4lvZHfYwvP-KUlgn3fuWFVFTrjDW56cJBcOkzIkpp6fnk9S3vE1UQ>
 <xmx:b4lvZOzATknWqqBRWTrv4v2zcGpWPBmX7ndm8JR0QNkO87uHx1txzQ>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 25 May 2023 12:14:38 -0400 (EDT)
Message-ID: <db4d9f6e-2e48-2334-aeee-9a0fff771fb7@HIDDEN>
Date: Thu, 25 May 2023 19:14:36 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
 <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
 <86jzwyw8j5.fsf@HIDDEN>
 <6a5c2251-52a8-e389-f2ab-08da775fab82@HIDDEN>
 <867csw53fm.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <867csw53fm.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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: -2.9 (--)

On 25/05/2023 09:29, Juri Linkov wrote:
>>> I see no way to set the same project name both for
>>> non-file and file buffers.
>>
>> Please try the patch below. It might have non-negligible effect on
>> performance though. Please try and report back.
>>
>> diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
>> index 7c51778d5d4..1494665d565 100644
>> --- a/lisp/progmodes/project.el
>> +++ b/lisp/progmodes/project.el
>> @@ -816,8 +816,8 @@ project-buffers
>>           (push buf bufs)))
>>       (nreverse bufs)))
>>
>> -(cl-defmethod project-name ((_project (head vc)))
>> -  (or project-vc-name
>> +(cl-defmethod project-name ((project (head vc)))
>> +  (or (project--value-in-dir 'project-vc-name (project-root project))
>>         (cl-call-next-method)))
> 
> Thanks, I confirm this uses project-vc-name from dir-locals in non-file buffers.

If you had a chance to verify that the performance is good enough (for 
using the result in the mode-line), that would be great.

Either way...

>>> The standard solution is just to use e.g.:
>>> ;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)
>>
>> Huh, so the attribute :safe only makes proper sense for preloaded packages
>> and autoloaded defcustom forms (which are discouraged anyway).
>>
>> Do you want to write a patch for all those vars in project.el? It will
>> probably make sense to push it to emacs-29.
> 
> With this patch the problem is solved.  I can push it to emacs-29.

...this patch LGTM too. Please go ahead and install it, or even both 
patches.





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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 06:47:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 25 02:47:35 2023
Received: from localhost ([127.0.0.1]:45750 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q24l1-0006Ry-H9
	for submit <at> debbugs.gnu.org; Thu, 25 May 2023 02:47:35 -0400
Received: from relay7-d.mail.gandi.net ([217.70.183.200]:36671)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q24ku-0006RO-3a
 for 63469 <at> debbugs.gnu.org; Thu, 25 May 2023 02:47:27 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id D17C620007;
 Thu, 25 May 2023 06:47:16 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <30e11f7d-0015-b509-33ee-c2afdd6dffaf@HIDDEN> (Dmitry Gutov's
 message of "Thu, 25 May 2023 04:15:32 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
 <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN>
 <868rdexnrz.fsf@HIDDEN>
 <30e11f7d-0015-b509-33ee-c2afdd6dffaf@HIDDEN>
Date: Thu, 25 May 2023 09:35:36 +0300
Message-ID: <865y8g53cn.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <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.7 (-)

>>>> Sharing between vc and project would be nice.  If possible, this will
>>>> allow a shorter modeline indicator that will combine vc and project like
>>>>     --- project-branch ---
>>>> where the project name replaces the vc-backend name.
>>> That indeed sounds like something that should require specific
>>> configuration. There can be projects without a branch, or branches without
>>> "current project".
>>>
>>> Or situations like the project root is not the vc root. E.g. when the
>>> current buffer is in a submodule (so the current branch is submodule's),
>>> and the project pertains to the parent repository.
>> The idea is simple: just to replace the backend name by the project name
>> when the project and its name are non-nil.
>
> I'm not sure the effect will be clear enough and appreciated by all of our
> users.

This is intended only after customization like this that shows the backend
by default:

  (defcustom vc-mode-line-format '(backend status revision)
    "What items to display on the mode line.
  Possible values:
  `project' - the current project name;
  `backend' - backend name;
  `status' - a character that denotes the vc status;
  `revision' - revision number and/or lock status;
  `commit' - commit name;
  `commit-abbr' - abbreviated commit name;
  `branch' - branch name;
  `separator' - a string between items.
  See more at Info node (emacs) VC Mode Line."
    :type '(repeat
            (choice
             (const :tag "Project name" project)
             (const :tag "Backend name" backend)
             (const :tag "Status character" status)
             (const :tag "Revision number/Lock status" revision)
             (const :tag "Commit name" commit)
             (const :tag "Abbreviated commit name" commit-abbr)
             (const :tag "Branch name" branch)
             (function :tag "Custom function")
             (string :tag "Separator")))
    :version "30.1"
    :group 'vc)




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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 06:47:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 25 02:47:23 2023
Received: from localhost ([127.0.0.1]:45746 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q24kt-0006RZ-1Y
	for submit <at> debbugs.gnu.org; Thu, 25 May 2023 02:47:23 -0400
Received: from relay4-d.mail.gandi.net ([217.70.183.196]:53783)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q24kq-0006RJ-Aa
 for 63469 <at> debbugs.gnu.org; Thu, 25 May 2023 02:47:21 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 38A62E000C;
 Thu, 25 May 2023 06:47:11 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <6a5c2251-52a8-e389-f2ab-08da775fab82@HIDDEN> (Dmitry Gutov's
 message of "Thu, 25 May 2023 04:14:41 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
 <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
 <86jzwyw8j5.fsf@HIDDEN>
 <6a5c2251-52a8-e389-f2ab-08da775fab82@HIDDEN>
Date: Thu, 25 May 2023 09:29:49 +0300
Message-ID: <867csw53fm.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

--=-=-=
Content-Type: text/plain

>> I see no way to set the same project name both for
>> non-file and file buffers.
>
> Please try the patch below. It might have non-negligible effect on
> performance though. Please try and report back.
>
> diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
> index 7c51778d5d4..1494665d565 100644
> --- a/lisp/progmodes/project.el
> +++ b/lisp/progmodes/project.el
> @@ -816,8 +816,8 @@ project-buffers
>          (push buf bufs)))
>      (nreverse bufs)))
>
> -(cl-defmethod project-name ((_project (head vc)))
> -  (or project-vc-name
> +(cl-defmethod project-name ((project (head vc)))
> +  (or (project--value-in-dir 'project-vc-name (project-root project))
>        (cl-call-next-method)))

Thanks, I confirm this uses project-vc-name from dir-locals in non-file buffers.

>> The standard solution is just to use e.g.:
>> ;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)
>
> Huh, so the attribute :safe only makes proper sense for preloaded packages
> and autoloaded defcustom forms (which are discouraged anyway).
>
> Do you want to write a patch for all those vars in project.el? It will
> probably make sense to push it to emacs-29.

With this patch the problem is solved.  I can push it to emacs-29.


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=project-autoload-safe.patch

diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index 7c51778d5d4..8b5a1abf900 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -412,8 +412,8 @@ project-vc
 
 (defcustom project-vc-ignores nil
   "List of patterns to add to `project-ignores'."
-  :type '(repeat string)
-  :safe #'listp)
+  :type '(repeat string))
+;;;###autoload(put 'project-vc-ignores 'safe-local-variable #'listp)
 
 (defcustom project-vc-merge-submodules t
   "Non-nil to consider submodules part of the parent project.
@@ -422,14 +422,14 @@ project-vc-merge-submodules
 you might have to restart Emacs to see the effect."
   :type 'boolean
   :version "28.1"
-  :package-version '(project . "0.2.0")
-  :safe #'booleanp)
+  :package-version '(project . "0.2.0"))
+;;;###autoload(put 'project-vc-merge-submodules 'safe-local-variable #'booleanp)
 
 (defcustom project-vc-include-untracked t
   "When non-nil, the VC-aware project backend includes untracked files."
   :type 'boolean
-  :version "29.1"
-  :safe #'booleanp)
+  :version "29.1")
+;;;###autoload(put 'project-vc-include-untracked 'safe-local-variable #'booleanp)
 
 (defcustom project-vc-name nil
   "When non-nil, the name of the current VC-aware project.
@@ -439,8 +439,8 @@ project-vc-name
   :type '(choice (const :tag "Default to the base name" nil)
                  (string :tag "Custom name"))
   :version "29.1"
-  :package-version '(project . "0.9.0")
-  :safe #'stringp)
+  :package-version '(project . "0.9.0"))
+;;;###autoload(put 'project-vc-name 'safe-local-variable #'stringp)
 
 ;; Not using regexps because these wouldn't work in Git pathspecs, in
 ;; case we decide we need to be able to list nested projects.
@@ -467,8 +467,8 @@ project-vc-extra-root-markers
 variables, such as `project-vc-ignores' or `project-vc-name'."
   :type '(repeat string)
   :version "29.1"
-  :package-version '(project . "0.9.0")
-  :safe (lambda (val) (and (listp val) (cl-every #'stringp val))))
+  :package-version '(project . "0.9.0"))
+;;;###autoload(put 'project-vc-extra-root-markers 'safe-local-variable (lambda (val) (and (listp val) (cl-every #'stringp val))))
 
 ;; FIXME: Using the current approach, major modes are supposed to set
 ;; this variable to a buffer-local value.  So we don't have access to
@@ -1476,8 +1476,8 @@ project-kill-buffers-display-buffer-list
   :type 'boolean
   :version "29.1"
   :group 'project
-  :package-version '(project . "0.8.2")
-  :safe #'booleanp)
+  :package-version '(project . "0.8.2"))
+;;;###autoload(put 'project-kill-buffers-display-buffer-list 'safe-local-variable #'booleanp)
 
 (defun project--buffer-check (buf conditions)
   "Check if buffer BUF matches any element of the list CONDITIONS.

--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 01:15:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 24 21:15:41 2023
Received: from localhost ([127.0.0.1]:45511 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1zZt-0002oO-FU
	for submit <at> debbugs.gnu.org; Wed, 24 May 2023 21:15:41 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:52455)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1zZr-0002oA-U6
 for 63469 <at> debbugs.gnu.org; Wed, 24 May 2023 21:15:40 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id CFD9E5C0092;
 Wed, 24 May 2023 21:15:34 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Wed, 24 May 2023 21:15:34 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684977334; x=1685063734; bh=uWTisdgLfpUlrvRDdoM1o4J8u/UGQqPSjXk
 OEYljuFY=; b=ov9KxRxuVWExp9VW3RvnxmbtKWjLHAksIM9Oz2Q7jvw06XyRJWb
 o0zJCnm/KzUpOH+0BiI5d1FcJL91KM0L7W7sq0HoEoga5eyRECaHgBfKFxeXPOZo
 JPEdCzEkNQ0k5fXxqPjqNCZatRY+Tq3pnlSHQ5QyZZAoT048jB1kUYtOFL01I1bE
 vT2GvScoQhR0NVYvexS6UukMoMHkoRS8hy5MPqby0evo7pZaQxwb+5DW3rQXZja1
 E3VTlcbdOPU2dpVslj/mt69czMtPuxad6cYAXkha7Gtlmq+9qe+Y70P84Kqs1Xny
 gGM0AAthfx38VKmzm+DtmD7uRPRCSWxjiGw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684977334; x=1685063734; bh=uWTisdgLfpUlrvRDdoM1o4J8u/UGQqPSjXk
 OEYljuFY=; b=tHla+m8vkp+yPQmjZNf9usvLignrMvzDJ66wZKXc2vj7t6CbxE+
 LmaeQPyqv0NgOl9HrwqEKmdRF5l4XkBhABxNOyIgtf+XUKt75mSHTXFirEXv6jl4
 LvItyvNn1UqoxAAQF2hVqGdN3mj7VMfYoThWlhUxr1jDWNgN/3hjTYG+TPQMWav2
 WSXAg0xgn0EOcvHb3tc3Fi2yctgbJvA8cy903J7LPwSxXEonCnRv2fH3SUaU57Gv
 bM0ekt5bheArbTaZYDA9NnSf9gLebW8HyCVvkQPk8cGnI37lXjCpKIMXtnfptlaG
 5LmkMML0dl5DBNNq7jHayERvFa/gFaow/kQ==
X-ME-Sender: <xms:trZuZNOZxAsbkiWEowRlhtw1365UfnBheQ-nHj9sR6CKzD3ICAHJuA>
 <xme:trZuZP8sY7VPJdGMlUGFItQ5uJkcJ9tE-zh6aeCKQDtVEs6pCFjW8G9CkocBRWYtf
 O9Rig-52FEOeVPMYAw>
X-ME-Received: <xmr:trZuZMSaG-qwMvwTlW_DWaVPtXOGAoDIs2cfqBfomSrN1zFXo-hwFL_7s50hQKQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejiedggeegucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:trZuZJtpYGTf0Vmugrulr_QnBhUcIl64KNftaeqaIUibVnl2Dz-qjQ>
 <xmx:trZuZFf9FV3Hiyp_KMhVN5fk34k2oW4_75-4cl9kGWVJ0bIR24vXdw>
 <xmx:trZuZF2kE-M5OC_dh6HJERn0vYx7DDexU63pp39YwXHhKhxGlXs0OA>
 <xmx:trZuZGq-jAtqo5A2-KOrAgq6goTFNSKeobEqlkHGObxdB7vHztJkcg>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 24 May 2023 21:15:33 -0400 (EDT)
Message-ID: <30e11f7d-0015-b509-33ee-c2afdd6dffaf@HIDDEN>
Date: Thu, 25 May 2023 04:15:32 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
 <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN>
 <868rdexnrz.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <868rdexnrz.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <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: -2.9 (--)

On 24/05/2023 09:25, Juri Linkov wrote:
>>> Sharing between vc and project would be nice.  If possible, this will
>>> allow a shorter modeline indicator that will combine vc and project like
>>>     --- project-branch ---
>>> where the project name replaces the vc-backend name.
>> That indeed sounds like something that should require specific
>> configuration. There can be projects without a branch, or branches without
>> "current project".
>>
>> Or situations like the project root is not the vc root. E.g. when the
>> current buffer is in a submodule (so the current branch is submodule's),
>> and the project pertains to the parent repository.
> The idea is simple: just to replace the backend name by the project name
> when the project and its name are non-nil.

I'm not sure the effect will be clear enough and appreciated by all of 
our users.




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

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


Received: (at 63469) by debbugs.gnu.org; 25 May 2023 01:14:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 24 21:14:53 2023
Received: from localhost ([127.0.0.1]:45503 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1zZ7-0002mD-0O
	for submit <at> debbugs.gnu.org; Wed, 24 May 2023 21:14:53 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:57719)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1zZ3-0002ly-8T
 for 63469 <at> debbugs.gnu.org; Wed, 24 May 2023 21:14:51 -0400
Received: from compute6.internal (compute6.nyi.internal [10.202.2.47])
 by mailout.nyi.internal (Postfix) with ESMTP id 0D48F5C0039;
 Wed, 24 May 2023 21:14:44 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute6.internal (MEProxy); Wed, 24 May 2023 21:14:44 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684977284; x=1685063684; bh=KKoKrLsRaNHgylyFSuRQpYq/yzAvQE3xnt7
 7QajfYsg=; b=BR34vTxSA8I410t1FEiGAm29i+cl2zhuxeicq9jm1JEL1pl6+4f
 BYyTZ876OFfWJK5ClgCHYCQDLp3KaBggIHX8R4uFU77RLe4ft094kUoxTpoCMmr7
 9qdFrZybLkyK9lZkkalACEB7PPV2lFbr5COwSiVKt3iai6sfFZErIX956KOMjDQS
 054iSik61hF5CItAxAWe+j5dCkXMhxKdYQeD18GRBs5xrjJOmuixBFt4CXqWtOJv
 Bh61BYFEYdObI5YvlVR9FHHRkXxW+OUGfECvXpDLiHxABB4W5qsIHwQtpPxIEWsj
 IKEyw4QUjXcSv4a36MXIi61pLHEof6MnzeA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684977284; x=1685063684; bh=KKoKrLsRaNHgylyFSuRQpYq/yzAvQE3xnt7
 7QajfYsg=; b=ApTyQ4l7hEIqiICMdnxvQRB/GNd7PNmpCmQS0GDfmbfdWxgiIR4
 Z9hGP11VQ9h3mA0bT0uZvfwYHPqdQlSIIuo9nqcCvaXVP6FZAzvTNX430oR20hy1
 bHflDMbbAZtPlLSwQpL1N+99NDhoJTYX8dA/pCj5p+U0U+PnBCZtKSsC7GyK18VL
 z2epiDQU2iZU7tE4INdqDf3LY9Fat8cfkZwBF+hXAhuFScP3+ZXInwjEWXpvTupN
 HQok5Rrxa+s8aQsI6270JgmtA4tUUmasfMsLiKd9Ea63bI0JHiViLrBOxTlKj4Xk
 KfdtBf7+QjtjAfr1C2jTwV0VldnmFfSXTfQ==
X-ME-Sender: <xms:g7ZuZNof3DuTZgHoZ4eK_5WNxgQv2CqPIDnNKQd9JXuYVNzMr940WA>
 <xme:g7ZuZPqHRfJsQtwS0J4KezHoFQb4B71t3BxttOM-VXiNdNSgeyhsfztl_OXc5ar0R
 0dMFiYQrB-AkLqxFx0>
X-ME-Received: <xmr:g7ZuZKPZnb0QoMnKRflRzw6hU368KpbkellKkFjSM6P6ruaFKN7_CPJP8kyyZTk>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejiedggeefucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:g7ZuZI6I5c76od3LkhmhDVJxGZFBV5Sr_XMzwHbPyS3OM-OGa9awuA>
 <xmx:g7ZuZM58lpMCdDKz5vmy84Z3WBdlIjBZtM-bLkYkkY1MtSVb2X4b8A>
 <xmx:g7ZuZAjUAj4ayVa7hiCZljn-q0Y-sudTvLCndISlIrVw-c6NnR9BSg>
 <xmx:hLZuZMEVeza_2S4KKTUDw1-I9UpyQAGCtdQzd4PVgbmg0cD2AgqUQA>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 24 May 2023 21:14:42 -0400 (EDT)
Message-ID: <6a5c2251-52a8-e389-f2ab-08da775fab82@HIDDEN>
Date: Thu, 25 May 2023 04:14:41 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
 <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
 <86jzwyw8j5.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86jzwyw8j5.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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: -2.9 (--)

On 24/05/2023 09:29, Juri Linkov wrote:
>>>> Maybe in .dir-locals.el.  Actually this works:
>>>>
>>>>     ((nil . ((project-vc-name . "emacs-29"))))
>>>>
>>>> Not sure why non-VC projects can't be named the same way.
>>> And indeed this is a real problem: in file buffers there is
>>> one project name that comes from project-vc-name, and in
>>> non-file buffers another project name deduced from dirs.
>>
>> Are you saying that non-file buffers don't obey the value of
>> project-vc-name set in parent dir's dir-locals.el?
> 
> Exactly.  I see no way to set the same project name both for
> non-file and file buffers.

Please try the patch below. It might have non-negligible effect on 
performance though. Please try and report back.

diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index 7c51778d5d4..1494665d565 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -816,8 +816,8 @@ project-buffers
          (push buf bufs)))
      (nreverse bufs)))

-(cl-defmethod project-name ((_project (head vc)))
-  (or project-vc-name
+(cl-defmethod project-name ((project (head vc)))
+  (or (project--value-in-dir 'project-vc-name (project-root project))
        (cl-call-next-method)))

>>> This distinction became visible while testing project-mode
>>> on the mode-line.
>>>
>>>> Also noticed that project-vc-name is not marked as safe,
>>>> so always asks a confirmation.
>>> This problem exists only until project.el is loaded.
>>> So maybe the 'safe' cookie should be in ###autoload.
>>
>> Possibly. Would that mean that all :safe attribute assignments should be
>> moved outside of defcustom forms, though?
>>
>> There is a whole bunch of them in project.el alone, most of them are
>> expected to be settable from .dir-locals.el (that's the only point of this
>> attribute).
> 
> I tried out other defcustoms, and indeed all they require confirmation:
> project-vc-ignores, project-vc-merge-submodules,
> project-vc-include-untracked, project-vc-name,
> project-vc-extra-root-markers, project-kill-buffers-display-buffer-list.
> 
> The standard solution is just to use e.g.:
> 
> ;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)

Huh, so the attribute :safe only makes proper sense for preloaded 
packages and autoloaded defcustom forms (which are discouraged anyway).

Do you want to write a patch for all those vars in project.el? It will 
probably make sense to push it to emacs-29.




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 08:39:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 24 04:39:06 2023
Received: from localhost ([127.0.0.1]:41406 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1k1S-0007uR-2M
	for submit <at> debbugs.gnu.org; Wed, 24 May 2023 04:39:06 -0400
Received: from mout.gmx.net ([212.227.15.19]:35701)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>) id 1q1k1O-0007tr-GR
 for 63469 <at> debbugs.gnu.org; Wed, 24 May 2023 04:39:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417;
 t=1684917531; i=michael.albinus@HIDDEN;
 bh=YK3o3nm0FK6vywQmp5K3rFZ/jnqhO6hCPzFUBfLcO2k=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=qWLNrAnh0E4YLtLit0yw7CTcnMONU183Svdi9bGbLnX2/o5aANl7ZsDgiuqrXpY+M
 lwZpUokS0HP3Wbshc4I5cx/8An2B56gBzezFXLOpEu8ssEpoqfdvA+i6mDtUUsV0f4
 mM4gRfUq7uiFuB6LwdJD2c7dGJWmVjGa91ePhcU8ZMPxEHDcDDgLgNkucv30OSyDpA
 r2ZSTBPupkdsvtRov8a9+Cg5M2+xOJz1k33y01ugxsUZMK1usQR+fRMS3PNk+E+maX
 G6CWAqlCE4fAT7BkTEdCLulxQTfycFazmFBexNtIhFyjNkgSoAtPUh+N1sC3WtMVZ0
 g+bzilD7mWHSg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.13]) by mail.gmx.net (mrgmx004
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M9o1v-1q4mHn3OBZ-005rRz; Wed, 24
 May 2023 10:38:50 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <76bf6326-94b3-f4c8-7a7e-f0743a83d7c8@HIDDEN> (Dmitry Gutov's
 message of "Wed, 24 May 2023 04:07:07 +0300")
References: <iercz35fnkw.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
 <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
 <ierfs7o6p2k.fsf@HIDDEN>
 <be6a17f5-2659-596d-2020-91afb11cc246@HIDDEN>
 <87ttw3w3ot.fsf@HIDDEN>
 <76bf6326-94b3-f4c8-7a7e-f0743a83d7c8@HIDDEN>
Date: Wed, 24 May 2023 10:38:49 +0200
Message-ID: <87ilcinmxy.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:JJaym0LDHQgRZab1IhW1uDZxGFu2Ncz4g6tvcDyPP7sQhncy/or
 SYw5qApqo7fFMdnkEnsNkzvgl+fC/qj28YDOq2nWRFnyT/dgswwlljwgPWafpP+NQW3jMn9
 zlhSDFd8t87biuHl6J2L2azJz4d3qCbDlJxm8aRLhQlD94Jzc1Rfa4L2iYaU428Lylhi0Zc
 PQKf8qRWqdU3N2eSkZmKQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:GjXK2xMQVL8=;pcbHA2wSttHQ47UNdQlmOzPdUpg
 xsfb9hFurU31R24S+Rk2DJrdO3jZpZw87pCjwSuM1FiMvEB19BwuRLI5AynWt8AOXCT2MVC0u
 wQmAbv1OyuhlsIoDh9H9C4L/ZPlGkSdjNnozJqbDu/2BbcKUO3WA0Umat7iTknxI+pa1Rf5ZC
 t7e3++vgm/S+cNegqGuQNs5Khw2A1G6+cCskco+eELgKpFWhH6LofrbBsrt4j3bU9C8rZ2a7A
 qGMp7D6EShGQtnvaVF9NVtkUrUUIP34Xs8ooEiDiSLlse3h6Ycwn1K821KR/hElWHrziL1PKJ
 yVjovhW9LUO2TxUTg5HOZRv4z+qgZQEaxnQFHYNn/L6etyqg/R+rCpHdutBGOuuEaVumbvJu8
 sEA52V3PGj3FXm2kHqEyUCPaYX91P0ZPX2iGjWpCzhuaBWfV8+lilrPnEEHWEZlawlA+BtoQy
 HazBUCOZ5ze/y3juZZxrGooFukpORhfwcLoVxzehlBfwCknVRB54VJPfuKfJ1sMcq2TCuQxXY
 le/87ASClPSHYu/7Sl4PJa7ayjhoad7D/MJocY0PtBBeFrvfq96sbNieR8od6CxUgwC9W5268
 /dPuicAnnyOFDsw/s/o+7ceS5hrK1smSnxBW7VE0wOJDEFzHFNK5mdJvtHjKq18W/qLX+xT3K
 Jbw0n2JmfsTVznsKI5JXpwTS2tnydeQKFlRlieSf6N16/n5lp4qDDsZZFjW0YEme5sDeKTsKD
 y/MIUuytNEzSXnTVIXRaNRAnrSkprF+FJR/pEaGqKKzJ2uvxEifTjTgLXBxshvHVwu00czdze
 a2BbdNmpEs9C/t8ZI94wxoETrDVaEz93+SRfPSSbl7xQPDPj6kxviWGJqHzhKOn5+Zv1Hui8c
 T7zTp0CQaxbOWIcH/Np841uJr4SLb7YuH3NJMPERR7PW77Kv/g2GlnNjtjM9Pjw/DFm+K4tI0
 n+u6L0OI03nVR6TgYeoDQxMCdww=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN>
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.7 (-)

Dmitry Gutov <dmitry@HIDDEN> writes:

> Hi Michael,

Hi Dmitry,

>>> Tramp often disables certain costly features (or Emacs packages
>>> provide options disable such features, when used remotely). This will
>>> need to be taken into account somehow.
>> Tramp is a library, and as such it is stupid. It shouldn't have an
>> opinion what's best suited for anybody.
>> IOW, it doesn't enables/disables features on its own. There are
>> configuration knobs Tramp follows, that's all.
>
> You can say that, but it's a relatively minor distinction. My point
> way, one should be on the lookout for potential performance problems.

We don't disagree :-) I just wanted to clarify the point.

> For example, we have the user option called enable-remote-dir-locals,
> which you added yourself. We might add a somewhat similar setting,
> though it's not obvious what to call it. Or, perhaps better, the user
> option which governs the addition of the new logic (off by default)
> would have a separate value which would mean "enable in remote buffers
> too".

Although I've added the user option, it isn't something restricted to
Tramp internals. If you want to use it in a broader sense (meaning more
different values), that's possible of course. We must respect backward
compatibility, of course.

Best regards, Michael.




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 06:33:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 24 02:33:28 2023
Received: from localhost ([127.0.0.1]:40997 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1i3r-0004DE-Pf
	for submit <at> debbugs.gnu.org; Wed, 24 May 2023 02:33:28 -0400
Received: from relay7-d.mail.gandi.net ([217.70.183.200]:51287)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1i3m-0004Cd-Ra
 for 63469 <at> debbugs.gnu.org; Wed, 24 May 2023 02:33:23 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id B6AF020002;
 Wed, 24 May 2023 06:33:15 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN> (Dmitry Gutov's
 message of "Wed, 24 May 2023 04:03:40 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
 <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
Date: Wed, 24 May 2023 09:29:18 +0300
Message-ID: <86jzwyw8j5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

>>> Maybe in .dir-locals.el.  Actually this works:
>>>
>>>    ((nil . ((project-vc-name . "emacs-29"))))
>>>
>>> Not sure why non-VC projects can't be named the same way.
>> And indeed this is a real problem: in file buffers there is
>> one project name that comes from project-vc-name, and in
>> non-file buffers another project name deduced from dirs.
>
> Are you saying that non-file buffers don't obey the value of
> project-vc-name set in parent dir's dir-locals.el?

Exactly.  I see no way to set the same project name both for
non-file and file buffers.

>> This distinction became visible while testing project-mode
>> on the mode-line.
>>
>>> Also noticed that project-vc-name is not marked as safe,
>>> so always asks a confirmation.
>> This problem exists only until project.el is loaded.
>> So maybe the 'safe' cookie should be in ###autoload.
>
> Possibly. Would that mean that all :safe attribute assignments should be
> moved outside of defcustom forms, though?
>
> There is a whole bunch of them in project.el alone, most of them are
> expected to be settable from .dir-locals.el (that's the only point of this
> attribute).

I tried out other defcustoms, and indeed all they require confirmation:
project-vc-ignores, project-vc-merge-submodules,
project-vc-include-untracked, project-vc-name,
project-vc-extra-root-markers, project-kill-buffers-display-buffer-list.

The standard solution is just to use e.g.:

;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 06:33:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 24 02:33:21 2023
Received: from localhost ([127.0.0.1]:40994 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1i3l-0004Cv-FR
	for submit <at> debbugs.gnu.org; Wed, 24 May 2023 02:33:21 -0400
Received: from relay8-d.mail.gandi.net ([217.70.183.201]:48133)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1i3i-0004CS-Lh
 for 63469 <at> debbugs.gnu.org; Wed, 24 May 2023 02:33:18 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 8D5651BF206;
 Wed, 24 May 2023 06:33:11 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN> (Dmitry Gutov's
 message of "Wed, 24 May 2023 04:10:23 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
 <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN>
Date: Wed, 24 May 2023 09:25:40 +0300
Message-ID: <868rdexnrz.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <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.7 (-)

>> Sharing between vc and project would be nice.  If possible, this will
>> allow a shorter modeline indicator that will combine vc and project like
>>    --- project-branch ---
>> where the project name replaces the vc-backend name.
>
> That indeed sounds like something that should require specific
> configuration. There can be projects without a branch, or branches without
> "current project".
>
> Or situations like the project root is not the vc root. E.g. when the
> current buffer is in a submodule (so the current branch is submodule's),
> and the project pertains to the parent repository.

The idea is simple: just to replace the backend name by the project name
when the project and its name are non-nil.




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 01:10:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 21:10:33 2023
Received: from localhost ([127.0.0.1]:40692 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1d1M-00012k-Px
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 21:10:33 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:49153)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1d1L-00012Y-RS
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 21:10:32 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id C48A05C0180;
 Tue, 23 May 2023 21:10:26 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Tue, 23 May 2023 21:10:26 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684890626; x=1684977026; bh=MYPUtpqHkknzB3DeMiKilTOC94cF+p58Riv
 xiwpgPxs=; b=oaTNRmOrjJEXrXqZWdWjj9QM9ug8nGU+piysDbEyZEX3zHAf0wH
 Y2wXr/AH5kBGosItezLVVaGeB5KVLURIPd2MjaoEykRY2qPIaLfOlMal2EMgdy7L
 4eXDCSXz7i8Px3ivGzDe3VEzSk/YBDC+dYYRrunYKFNTRGAYqoh0OpsCQCwYtWc1
 Cs+dgF5QOHpx8pJEk0Cb5Qvge9oADywlBdlP0lRWXq/DneGSUBHpy8VCc0CSUxIJ
 kdep5m3gcuoWOU7VL84JzvPqoXRsxj/p277AevfhwGOT796WfzMYvk9u15Xxa4Q9
 lRz0E8MwZ3PRBvzRckYI3lsy3VfxIpMFi7Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684890626; x=1684977026; bh=MYPUtpqHkknzB3DeMiKilTOC94cF+p58Riv
 xiwpgPxs=; b=cuvXYDQKJzYy50ldMcc+hru69OP88eR+QXa5xx8wIfMP82J1A7+
 681389W5gDP/n5ipfabhUHYvuCcTD/SJ6LgnhWniWxJ7TDsIhG4vdonYsQx52saK
 4qD1ZqjrFh3uOiIIL4DB5qOwrDVCoZUOOKUf764X0V5LWsY6in5CTXmRNbV02LCL
 RNLQsFtnyx79FsKBooxEvJcGTFllhHTZhWq1I0EIkaPqyRRtIJAjbCCNvFmoJ1dW
 u8Hq5vhBjGl0QU+6FkNmwexM2tcGG6F58CROBxBQyOHH03KdppB8ltrUjlyCOxVy
 nxZVUEIiP29Btaa4LDvL+1xcxeQml/YiWVQ==
X-ME-Sender: <xms:AmRtZJ4lZ0-mhpxX9nZRvLzRblPaY2zTFvvICGvHYwkLkPXO-ogTsg>
 <xme:AmRtZG4UVXS8A_W2qaM-tV0nNTI0FNq97may1SNQUYtYnLiLyjyCtBOL_LVLu3gEY
 VmKi8D51ue9aoXBH9I>
X-ME-Received: <xmr:AmRtZAffXCnZmWxcbUsBTkZRoDe3o76EWD0Tn3J0jwo_lksGnMe-Kb0Ea1vAUQg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejgedggeefucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:AmRtZCKsQv42umMhl08QLABPJxxpnA8kGN2U0rIOy1c2I9zN2KQiMw>
 <xmx:AmRtZNKapZD38CUaBL1LCXpuZwPeNMXr4U8QVKcZKtiDP-YsyyXOow>
 <xmx:AmRtZLwzGrbRBCpleSqllpjF999QGza2jh8429zaypvIeshVOvQgdQ>
 <xmx:AmRtZEVwpguhoWFv9Bjn77HsE4jKm0nGdKH682VFwQX0ptbxD6MEFQ>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 23 May 2023 21:10:25 -0400 (EDT)
Message-ID: <da267492-64e8-f2aa-bdd7-c948b9f829e3@HIDDEN>
Date: Wed, 24 May 2023 04:10:23 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>, Spencer Baugh <sbaugh@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <834jod1lvc.fsf@HIDDEN>
 <ierwn19ph50.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86r0r7a6aq.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: Eli Zaretskii <eliz@HIDDEN>, 63469 <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: -2.8 (--)

On 23/05/2023 09:52, Juri Linkov wrote:
>> Still, I would like this feature.  And actually, the mention of VC makes
>> me realize: We already do something expensive by default for every new
>> buffer: Query the VC state.  So maybe it's not so bad to run
>> project-current every time we make a new buffer?  Or at least, in the
>> exact same situations that we query the VC state?  Maybe we can even
>> implement some sharing between the project-current lookup and the VC
>> state query, for the vc project backend?
> Sharing between vc and project would be nice.  If possible, this will
> allow a shorter modeline indicator that will combine vc and project like
> 
>    --- project-branch ---
> 
> where the project name replaces the vc-backend name.

That indeed sounds like something that should require specific 
configuration. There can be projects without a branch, or branches 
without "current project".

Or situations like the project root is not the vc root. E.g. when the 
current buffer is in a submodule (so the current branch is submodule's), 
and the project pertains to the parent repository.





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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 01:07:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 21:07:18 2023
Received: from localhost ([127.0.0.1]:40687 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1cyE-0000yB-8D
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 21:07:18 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:41139)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1cyB-0000xx-Pr
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 21:07:16 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id BB13A5C0148;
 Tue, 23 May 2023 21:07:10 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Tue, 23 May 2023 21:07:10 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684890430; x=1684976830; bh=qKuZbYQUCbhjiKnoIpGqEIRAfEKwGivJexr
 XU6Hk6Wk=; b=LZm3W0E1ySPzKDfSzPMiRKamF0k5lfU5T5wbq5Fgyw96Rv2uETK
 bdo3A21kvPHxn4gwNgHeXmhPCWWWCdLp1RWZHB3Y2euDdwfYdb9Ep/rsESZ65VsK
 i8MgsxZGV/p0xDE3C0quia/ji9HRW6aXYacFL+jbF/zVtOiEdnfXBZ2EFtLcD5Pq
 VpC9tai6XgAvForY+9mtFNYuqbMyTOO+bB5QrWv35yNEagkyTDH3oPXrKTafqJ5a
 t0sPw5oK3M6D5aKxe7BEuBkCikiZ1+AVccYrzTTwC+1xxYrCMebDKbclQ4vQWeaU
 6jWhFpdy3a8l3h7+gp8tqMEIJRpY+g3ILyQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684890430; x=1684976830; bh=qKuZbYQUCbhjiKnoIpGqEIRAfEKwGivJexr
 XU6Hk6Wk=; b=kYqmRjri3PuFtozsc5IviLaRN7lDu5rRq0UFz9ZD5W0AcVu0QQO
 o4x3nQKj6r4rRM/eOw3gWNJJn3Pk/ywVuR51IcRyLd23HLjhCk0Jhf15q2lYCp6t
 H66ZoEhuhzy7b822TtcXkuns+D/lQ/lhyyC4sEGAvUkHVwdMJE4bJVCu8eWt9dzI
 7+6N2xIv8cVJChBlQGNeuTRjUSLmKCjDz04rou418vCycB0zYr5bb5m1fATKHCxd
 w3kQn+D9EuOFoA37dayi5ktIxs8FSESIQkAgTK7PQMfDU9OtHBd8q9c2WesKuWKx
 D+1Wr+RY7SXevYHiYu1fTlQhc8feWW3iUwA==
X-ME-Sender: <xms:PmNtZADbdN3nGeUoPsH15uEticXQa3CUXmNQxrwmvQ3FtPyM-OtUKg>
 <xme:PmNtZChbeXNLRbekfz4LZuqncz3q_4FqMN8OdfNh8f68v3DfOI5jnEZxl4kXCNeZu
 phbSH6agh6jSXdZr34>
X-ME-Received: <xmr:PmNtZDkY0uL22WQJEutSIdxMABAx2IAUXGHEMw01QnQJlt6-Ui18-Goz7bMuWV0>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejgedggedvucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:PmNtZGzyplzo1PJwlngRnlX1paiclf-ISO8drv54leb3wYjiaP8PWA>
 <xmx:PmNtZFQEttDgG-AQ1cTMTwVrH6SKR2HFysmo-z0ihu-Q3vA3GooUZg>
 <xmx:PmNtZBbsubtzWACkDG-Yh0B2IdH2E9Y1W_o9cj-I7IRhYx2Dy7ByIg>
 <xmx:PmNtZHd-b1sFk7Khz6BtJfh-V1HCilYu51T4Plx6oc3eTsPOJkqOKw>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 23 May 2023 21:07:09 -0400 (EDT)
Message-ID: <76bf6326-94b3-f4c8-7a7e-f0743a83d7c8@HIDDEN>
Date: Wed, 24 May 2023 04:07:07 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Michael Albinus <michael.albinus@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
 <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
 <ierfs7o6p2k.fsf@HIDDEN>
 <be6a17f5-2659-596d-2020-91afb11cc246@HIDDEN> <87ttw3w3ot.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <87ttw3w3ot.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN>
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: -2.8 (--)

Hi Michael,

On 23/05/2023 16:57, Michael Albinus wrote:

>> Tramp often disables certain costly features (or Emacs packages
>> provide options disable such features, when used remotely). This will
>> need to be taken into account somehow.
> Tramp is a library, and as such it is stupid. It shouldn't have an
> opinion what's best suited for anybody.
> 
> IOW, it doesn't enables/disables features on its own. There are
> configuration knobs Tramp follows, that's all.

You can say that, but it's a relatively minor distinction. My point way, 
one should be on the lookout for potential performance problems.

For example, we have the user option called enable-remote-dir-locals, 
which you added yourself. We might add a somewhat similar setting, 
though it's not obvious what to call it. Or, perhaps better, the user 
option which governs the addition of the new logic (off by default) 
would have a separate value which would mean "enable in remote buffers too".




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 01:03:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 21:03:50 2023
Received: from localhost ([127.0.0.1]:40682 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1cus-0000tC-KP
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 21:03:50 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:36557)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1cur-0000t0-6d
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 21:03:49 -0400
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 29CB05C00E3;
 Tue, 23 May 2023 21:03:44 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Tue, 23 May 2023 21:03:44 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684890224; x=1684976624; bh=k23AtSOElylmKwbUX8S0LD3f2HECVX+ZWpr
 SfJp2+vk=; b=1Pt4tqTLQf06J/EI96E3AUg1TjhSWbmpCVCf3oD+0biq4/33bfF
 KCEMkSZ7Ya4JqsdW80ug2UoN8LHkiwFXKXXXuC9jJxqKIDgeYoCmnDsgrz9PmUxK
 5n2I7A5efPGK9j2smwM+R3T2BPz37V7zAlq7zKVJkQLaxekkeB5JfKm9HqtFhNRx
 HxQbOOD+xsGnXMKPVB6vUOcTy/XhzEOo5QWW321Hkzh4zm5+pOCUxnz8Mvww8QD4
 dNKNiOujw1ssyzarYYoUgylIn7Itr24tHwopUl8T+YTQWQkgsr8KUpvpHZE3SIia
 RFRqlYmfKWSU4jlZafeVhXNHpZv7It+QH/g==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684890224; x=1684976624; bh=k23AtSOElylmKwbUX8S0LD3f2HECVX+ZWpr
 SfJp2+vk=; b=DHBqKxO0bImrDjd6RvL7pkakXmGUxAHZTQI3nhkyCBvTE9Mm7Gt
 1s2aHsbEikhEXuTLg9en5wB1wRCrNrHg7AbtduQMfPrqxz517H+wLmB+l/Rh3ctA
 J+lir7/XOjpoJ9A3lnUhmA5O45yaC3+ChIn+EBH5Mq5y5LFBuqiHGQX7phoMYXSX
 bapZnIid4y43bX7SUaFjC6tC1fLgykOvpV7xJidF+Z/a22f2ckagNjdjQCXGHSbh
 URGHM20U/yT+L0rCk7qe8oNf4VeH/HTq1JHy2UynXiRCt3tqEWJ9RXBPd54Z0k2M
 mkAjRU/Pheh3pKoNhm9Mv6/8jC2kcd7cEqQ==
X-ME-Sender: <xms:b2JtZEyK1BIRqv4_e11Qo6L0RGeSmT_lwwEQzsjJfI1KbOjF9n4yMA>
 <xme:b2JtZIRGxabQLyiPmz0a_tkFgyeiUYwWf8ah69Nv6Z7bpm0xdn7xbEVPwffD9IB-z
 dRq1GBXurAP7upGjjQ>
X-ME-Received: <xmr:b2JtZGX2abCMWzv3qAA92PLrGs8uNtBNCyFvT--a_fr0GGaBmKfz-9YJI2WGx_4>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejgedggeduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:b2JtZCgTfFDl3UAICBP6vpWoUoQ0I8SOUtIt6wYvVF0Iu9981gcY7g>
 <xmx:b2JtZGDcLVNnEy4Bzv0W2lGgre8fJg1oUp1Nu_Pvb5SgnTtELke2pA>
 <xmx:b2JtZDKx64fGUK6tLXHy3zcFGE3EUDukkSvz4F7fEZNw3rmp9uV-8A>
 <xmx:cGJtZJMVdGskjtCYp0M5K3vSNj1nJ2gRvlKJIkPQqLvWvzr-4e_msg>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 23 May 2023 21:03:41 -0400 (EDT)
Message-ID: <e998ea30-9b12-dc58-a7af-78d8c046f788@HIDDEN>
Date: Wed, 24 May 2023 04:03:40 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <834jod1lvc.fsf@HIDDEN>
 <ierwn19ph50.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> <83h6savsz4.fsf@HIDDEN>
 <iersfbtognw.fsf@HIDDEN> <83mt21vfgl.fsf@HIDDEN>
 <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN> <86sfbm6hp5.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86sfbm6hp5.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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: -2.8 (--)

On 23/05/2023 21:11, Juri Linkov wrote:
>> BTW, there is another problem: by default 'project-name' is defined as
>> (file-name-nondirectory (directory-file-name (project-root project))).
>> But then project name often is the same for different projects
>> because the directory name is the same for the same repository.
>> For example, in a subtree:
>>
>>    emacs-master/emacs/...
>>    emacs-29/emacs/...
>>    emacs-28/emacs/...
>>
>> All project names are the same 'emacs'.  How would it be possible to
>> customize project names?  Trying to get a parent dir might be too
>> unreliable.  So probably the only way is to define the name manually.
>> Maybe in .dir-locals.el.  Actually this works:
>>
>>    ((nil . ((project-vc-name . "emacs-29"))))
>>
>> Not sure why non-VC projects can't be named the same way.
> 
> And indeed this is a real problem: in file buffers there is
> one project name that comes from project-vc-name, and in
> non-file buffers another project name deduced from dirs.

Are you saying that non-file buffers don't obey the value of 
project-vc-name set in parent dir's dir-locals.el?

> This distinction became visible while testing project-mode
> on the mode-line.
> 
>> Also noticed that project-vc-name is not marked as safe,
>> so always asks a confirmation.
> 
> This problem exists only until project.el is loaded.
> So maybe the 'safe' cookie should be in ###autoload.

Possibly. Would that mean that all :safe attribute assignments should be 
moved outside of defcustom forms, though?

There is a whole bunch of them in project.el alone, most of them are 
expected to be settable from .dir-locals.el (that's the only point of 
this attribute).




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

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


Received: (at 63469) by debbugs.gnu.org; 24 May 2023 01:00:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 21:00:31 2023
Received: from localhost ([127.0.0.1]:40677 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1cre-0000of-VF
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 21:00:31 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:59795)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1crd-0000oQ-Ak
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 21:00:30 -0400
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id 449A55C020A;
 Tue, 23 May 2023 21:00:24 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Tue, 23 May 2023 21:00:24 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684890024; x=1684976424; bh=NNndDkcZlUYiMNecf0C3Q3VFZ0lC5bID0Fs
 TisOrRnE=; b=V7Bcj0M6LuCa+UNU1Ovq+TfLcWkBNbzVHI8ttT6e193qFetGy/n
 YeLkvpd06MgUE9UbzHLDzzQMGoXMof/0mlSoJ2uHfCLwbuJg/K439IxpJ8JB9YpN
 hn798FwISrOQ1UEd9hvPszDVxUyIXEVXkkDOmJg9nAPGo3KoRcdJ1S3/tJ+t83E3
 o+rB1EeFfMIkWqd4U+lnkzSTT1jNy4pUzUP0sLgeKwaUC11j+tcYj/Y+SGftinRr
 +K68cJh6LdKYETY2OhU5aS4sDM6UDD9dzDxKqO16vLYUGZ73cqAjSAGUNIudjI87
 OAfR1SUTpU0I24pC58q9cJoZILfEsoioH3Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684890024; x=1684976424; bh=NNndDkcZlUYiMNecf0C3Q3VFZ0lC5bID0Fs
 TisOrRnE=; b=dejjt7QwUvzsLBzNrCcEIrXQ8O70QkF8iC19B4ZRD2nJI4ReLRo
 yFpIEThG32bXcOOmW3BCBo7qeUSJTu6n7Loz6714nh/+8DyQBu2pxwdxvJEZs5Jt
 J/VrUxbxdsZG54tjlluALYv8pGPHC+rsnI6OKPGsSn+FwQq4lcowYbDe6FFN8Bmv
 JFfw04omiOeHE1Chb5dxmeeVrypSz4MZfiJLvZzgtDaMAS8U72KCt+fATqd0HgR3
 IslFHqUaOBx94erfyria83S2cJS7pGKfmOKa6ByAwhGSw2pb2czoaWGiTGQ3eYv6
 GlsTGUQyVaKNajq1KDPNDFCF/n4rgTMJSiw==
X-ME-Sender: <xms:p2FtZF3iJ2ol0JKm1G6Tfalgk-U8N0bfXjSsFdb75gjI4jlYmBqwag>
 <xme:p2FtZMELDaTqJcvfG0KakKrMeLvXY0GcsN7A6UEJHIv0hcC_kgk0-UK0wVmTIUu1k
 SR8-_sf9K3foFBYDnk>
X-ME-Received: <xmr:p2FtZF6_ab07ZWamnaMOlgAgnMt3YdYiIEYE7hmuNWim_U4Bwa-gakABWIqHBug>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejgedggeduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:qGFtZC1bgNtLzA7BoCv_K14RTw6RoNeeX2CXf9h4Z32PSN1rLSth-w>
 <xmx:qGFtZIEEURe0mc7E9or7_9EGzDG6QybWviiiYX0_qIw14fS5Tomg6Q>
 <xmx:qGFtZD9tXT1fyUt0dlB7fwq04hNzP-VkezDt7rvukvqYT6G7sTSf1A>
 <xmx:qGFtZNTArdW_aF1k-WkHmGWX5cBmigq6rb34rQIaXugp_x0favuKlQ>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 23 May 2023 21:00:22 -0400 (EDT)
Message-ID: <0a09aefc-85b4-ec8d-e9a7-d7e881d4a96b@HIDDEN>
Date: Wed, 24 May 2023 04:00:20 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86ttw3blc6.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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: -2.8 (--)

On 23/05/2023 09:46, Juri Linkov wrote:
>>> +(define-minor-mode project-mode
>>> +  "Toggle display of project menu in the project-aware buffers."
>>> +  (if project-mode
>>> +      (setq-local project-name (concat
>>> +	                        " "
>>> +	                        (propertize
>>> +	                         (project-name (project-current))
>>> +	                         'mouse-face 'mode-line-highlight
>>> +	                         'local-map project-mode-line-map)))))
>>
>> At the very least, this will need some better name, because project
>> features don't need any mode to be turned on to be used.
>>
>> project-menu-mode?
> 
> 'project-mode' will be more like 'vc-mode' that actually is not a minor mode.
> I don't know why it was named 'vc-mode'.

vc-mode is not a mode at all: you can't choose to enable or disable it.

>> Next, I'm not quite sure about the caching of project-name. There is no
>> scenario when it will be invalidated, right?
> 
> I can't imagine such scenario.

Any scenario where the user assigns of changes the name, e.g. by 
changing the value of project-vc-name.

>> Try simply calling (project-name (project-current t)) every time, see how
>> the performance is. Or, more thoroughly, copy the if-let logic from
>> project-prefixed-buffer-name.
> 
> Ok, will try.
> 
> BTW, there is another problem: by default 'project-name' is defined as
> (file-name-nondirectory (directory-file-name (project-root project))).
> But then project name often is the same for different projects
> because the directory name is the same for the same repository.
> For example, in a subtree:
> 
>    emacs-master/emacs/...
>    emacs-29/emacs/...
>    emacs-28/emacs/...
> 
> All project names are the same 'emacs'.  How would it be possible to
> customize project names?  Trying to get a parent dir might be too
> unreliable.  So probably the only way is to define the name manually.
> Maybe in .dir-locals.el.  Actually this works:
> 
>    ((nil . ((project-vc-name . "emacs-29"))))
> 
> Not sure why non-VC projects can't be named the same way.

They can -- using whatever way the respective backend provides.

> Also noticed that project-vc-name is not marked as safe,
> so always asks a confirmation.





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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 18:14:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 14:14:40 2023
Received: from localhost ([127.0.0.1]:40403 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1WWu-0006ED-IU
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 14:14:40 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:38611)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1WWp-0006Di-TP
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 14:14:36 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 97CEF40003;
 Tue, 23 May 2023 18:14:28 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <86ttw3blc6.fsf@HIDDEN> (Juri Linkov's message of "Tue, 
 23 May 2023 09:46:01 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <834jod1lvc.fsf@HIDDEN>
 <ierwn19ph50.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
 <86ttw3blc6.fsf@HIDDEN>
Date: Tue, 23 May 2023 21:11:50 +0300
Message-ID: <86sfbm6hp5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

> BTW, there is another problem: by default 'project-name' is defined as
> (file-name-nondirectory (directory-file-name (project-root project))).
> But then project name often is the same for different projects
> because the directory name is the same for the same repository.
> For example, in a subtree:
>
>   emacs-master/emacs/...
>   emacs-29/emacs/...
>   emacs-28/emacs/...
>
> All project names are the same 'emacs'.  How would it be possible to
> customize project names?  Trying to get a parent dir might be too
> unreliable.  So probably the only way is to define the name manually.
> Maybe in .dir-locals.el.  Actually this works:
>
>   ((nil . ((project-vc-name . "emacs-29"))))
>
> Not sure why non-VC projects can't be named the same way.

And indeed this is a real problem: in file buffers there is
one project name that comes from project-vc-name, and in
non-file buffers another project name deduced from dirs.

This distinction became visible while testing project-mode
on the mode-line.

> Also noticed that project-vc-name is not marked as safe,
> so always asks a confirmation.

This problem exists only until project.el is loaded.
So maybe the 'safe' cookie should be in ###autoload.




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 18:14:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 14:14:34 2023
Received: from localhost ([127.0.0.1]:40400 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1WWo-0006Dt-9g
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 14:14:34 -0400
Received: from relay3-d.mail.gandi.net ([217.70.183.195]:51301)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1WWm-0006De-AQ
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 14:14:32 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 97B2060008;
 Tue, 23 May 2023 18:14:24 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83edn7paa2.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 23 May
 2023 14:17:09 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
 <83edn7paa2.fsf@HIDDEN>
Date: Tue, 23 May 2023 21:08:31 +0300
Message-ID: <86bkia7wf4.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <at> debbugs.gnu.org, dmitry@HIDDEN
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.7 (-)

>> For most projects there is no need to show the backend name all the time.
>> So instead of "Git-emacs-29" better to add a user option to be able
>> to keep only the branch name, i.e. in 'vc-default-mode-line-string'
>> such hard-coded string should be customizable:
>
> Maybe the customizable user option should leave to the user whether to
> show the VC info, the project info, or both?

One possibility is to allow more values for the existing user option
'vc-display-status'.  Currently it's boolean, so even doesn't allow
disabling display of the backend name on the mode line.




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 13:57:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 09:57:59 2023
Received: from localhost ([127.0.0.1]:40034 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1SWV-0002LN-K2
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 09:57:59 -0400
Received: from mout.gmx.net ([212.227.17.20]:55949)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>) id 1q1SWS-0002L9-Lh
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 09:57:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417;
 t=1684850259; i=michael.albinus@HIDDEN;
 bh=XST1Eq+h7qT4amFekvOYRa5nSkmkU1CuWOrrsY4jyG4=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=p4YCyzqBufMu88SUn661E6gKIch5pImRDZOPG+hafMgHhbd2XBBXFb5+ujiZWK/e3
 OiXtM16FGAq2H8OA1egMZ/GZ/7tD0td1ok42Wt9JlC0ei9iRvh0aclXD1nIpjGmPBG
 2xSi3YpZbXv3dzKV7KfrWrqViHFJ/WnZ+seJT9hFY2tlvjwITvwGbKyNCMIPofyB23
 JnX3XZWnYDAy1BJn1HD9+W/E7LFrsosb1iw1/Y33SFF85aSXsmQ5ENktK2t4hNwWO/
 IE8HMoZiXxV2yGDs40j9plkbRKF1PevW7lFOAKcVLZ9zYXJqWASMnQTU92uR3JEdrX
 w69aEIPmf/hYA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.13]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mn2WF-1qRTTo1Pst-00k4Su; Tue, 23
 May 2023 15:57:39 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <be6a17f5-2659-596d-2020-91afb11cc246@HIDDEN> (Dmitry Gutov's
 message of "Tue, 23 May 2023 00:30:00 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
 <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
 <ierfs7o6p2k.fsf@HIDDEN>
 <be6a17f5-2659-596d-2020-91afb11cc246@HIDDEN>
Date: Tue, 23 May 2023 15:57:38 +0200
Message-ID: <87ttw3w3ot.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:+Da1I9ODZFeoxQbYnfW6aSEZ1RA+FmcrsL6nWiZnauYPVQDdcjk
 dtFQ9+zQlAbW4DPW0+oBLcO+3Cwvkgi5FV42uMSCgXuZNzL7DhH16ckxjHbSXeIhqpgo0SW
 1yp22+oiuAMJnRcfToCMwNRz9ZiYZk/Ex56szbQL77b9d9VaOQTbfqIiKNrVAVKqyoVi7w9
 uAToDAom++RU2Mts9hm0w==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:lnMPnLCG4Kc=;V+fExClnFd4XfC8H3TCAtohdUoq
 XkihSam/FumrKs6NUVITpCxauLTVnnm9wJWNmeGcQQhaLJVqA4YbR6MM6N0yAAy1tZF7mScV+
 uDBu8F7DKjEFVC3MWLTEuLfRQOIexox1EV9ye9fC+9UUsYNVZo3TTnStVe7BaoSmwoW37ioP6
 QcwNVq27eunteT6I04YimrkQxF2ExGexSRYOZcZUUvim3z+VhAbXsDaqucIEd+o9G5jOhMwI3
 WB24bnO/X14Yu/+s0EuMUWLwcvLU9ZAXAoogPyA6XbH91VfnKdRK2LIvAgdUnwXkcyluLOgH6
 ZHntnBfDe82nL8shWe7D+Y11+WKJ6c52cZZxA+08oUMA/Z8EF6Cd+xp/DsUA2CmR6n8h0Yv3O
 Asr2bbSvMEGbrz/m36i8yrOKurvGXsUmiAHyHerKj5yeNyZ1fUy4LQOeH8IdNrHkSW/ZDBVx7
 WJru16RjmyaM6arZ+pMHYpiErZNZaSGzZrnsBBsbu/mtmxEuCCk9SqwC5sII+kfrNfxbfUm7T
 qFiWDC4DimTHfmlbtR1UqTK2T6X7j0JFX46Nkw5894b+f9V7Td1gf2gahePSIAW1c0gVbIQ5U
 CNid11a+gyYHv2Ro8pNZEu43h454DGPt6gjNhicfSEg+rW0XSjm8qTLtFP8FpLvAd11uar1lD
 jlOAwJUPvz9xAPYYrwAkjLTNOhkknblNgnI7f9H9GpZws/1CPPpfxAis1KuDQNNlidsyTSU58
 lx7SFGOfD//hvpvxox1ZT9wYmrKHvrZq287vSzvRlz5D/70L+2gABtie1L25IpFv66GN+4qBn
 gC286HJd1N23MVx6gLt2PYP1dmNxtn0FT2nuM7r0gztzldN8WX2mKQluqGJSGsZrDFNap1ZBK
 Nqi8Orf6DIZax3+d00aBxChep/KA3xZLfXgs0vRiQLYPa50JeoiR5uN5Nywrkcko8mmkAulM4
 oT4/jNYHJomcBGltT5nhfai9tO8=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN>
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.7 (-)

Dmitry Gutov <dmitry@HIDDEN> writes:

Hi Dmitry,

> Tramp often disables certain costly features (or Emacs packages
> provide options disable such features, when used remotely). This will
> need to be taken into account somehow.

Tramp is a library, and as such it is stupid. It shouldn't have an
opinion what's best suited for anybody.

IOW, it doesn't enables/disables features on its own. There are
configuration knobs Tramp follows, that's all.

Best regards, Michael.




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 11:16:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 07:16:53 2023
Received: from localhost ([127.0.0.1]:38348 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1Q0b-0006dc-JY
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 07:16:53 -0400
Received: from eggs.gnu.org ([209.51.188.92]:35064)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1q1Q0Z-0006dM-DH
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 07:16:52 -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 1q1Q0T-0007e9-9y; Tue, 23 May 2023 07:16:45 -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=toJMB4+h/8+CCGyQdiAj5261eV9ApJAscJCAlCFjMc4=; b=pRuSkqqKNlPP
 Hmg4x5jmDKPolszoZLzons7wwxUmzvQ2lgRm+yvsIMAKszbS2Ioh/3lbCxYz7h3QuYF/FRd1Sy39T
 r00Rfim9e1pmJZWhPLvqmOUmhWuwhhE5lDKvK3RAGESeP/ZkZ59Tm/ypxvH6onKjTv/ycppvgoAQH
 rnwpW330+dr1Lozk36kpg7MVAvcDdgSj1HItI/5wWN8lhTr0LXLcRYLq5cOVLJYsRwBpXFqr03ptD
 AfuLSlosVD4e/E31iU1eMf/zOcEXfJ6xVDYmefIjMEs5CEv2Nj70LeDvXEmy17V3EHl/JI1r1NaVg
 uYIfAFDhQeIaMBwswV+89w==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1q1Q0S-0002s1-QU; Tue, 23 May 2023 07:16:45 -0400
Date: Tue, 23 May 2023 14:17:09 +0300
Message-Id: <83edn7paa2.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86r0r7a6aq.fsf@HIDDEN> (message from Juri Linkov on
 Tue, 23 May 2023 09:52:13 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <834jod1lvc.fsf@HIDDEN>
 <ierwn19ph50.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN> <86r0r7a6aq.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <at> debbugs.gnu.org, dmitry@HIDDEN
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: Juri Linkov <juri@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  dmitry@HIDDEN,  63469 <at> debbugs.gnu.org
> Date: Tue, 23 May 2023 09:52:13 +0300
> 
> > This might get crowded when there's also the VC modeline indicator.
> 
> To get it less crowded the VC modeline indicator could be shorter.
> For most projects there is no need to show the backend name all the time.
> So instead of "Git-emacs-29" better to add a user option to be able
> to keep only the branch name, i.e. in 'vc-default-mode-line-string'
> such hard-coded string should be customizable:

Maybe the customizable user option should leave to the user whether to
show the VC info, the project info, or both?




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 07:04:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 03:04:31 2023
Received: from localhost ([127.0.0.1]:38097 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1M4M-00056W-Qw
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:31 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:58359)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1M4F-00055o-Br
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:24 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 5AE2940006;
 Tue, 23 May 2023 07:04:15 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <ierilck6t94.fsf@HIDDEN> (Spencer Baugh's message of
 "Mon, 22 May 2023 15:49:59 -0400")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <834jod1lvc.fsf@HIDDEN>
 <ierwn19ph50.fsf@HIDDEN> <83o7mkz2ap.fsf@HIDDEN>
 <iermt24p5i3.fsf@HIDDEN> <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
Date: Tue, 23 May 2023 09:52:13 +0300
Message-ID: <86r0r7a6aq.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

>>> Actually I miss this feature very much.  There is already the mode-line
>>> indication with the VC system name and the VC branch name, but
>>> no indication with a project name, so similar files
>>> in different projects all are showing the same "Git-master".
>>
>> We can show this on the mode line always, whenever there's a project.
>> No need for a minor mode.
>
> This might get crowded when there's also the VC modeline indicator.

To get it less crowded the VC modeline indicator could be shorter.
For most projects there is no need to show the backend name all the time.
So instead of "Git-emacs-29" better to add a user option to be able
to keep only the branch name, i.e. in 'vc-default-mode-line-string'
such hard-coded string should be customizable:

   (concat backend-name "-" rev))

> Still, I would like this feature.  And actually, the mention of VC makes
> me realize: We already do something expensive by default for every new
> buffer: Query the VC state.  So maybe it's not so bad to run
> project-current every time we make a new buffer?  Or at least, in the
> exact same situations that we query the VC state?  Maybe we can even
> implement some sharing between the project-current lookup and the VC
> state query, for the vc project backend?

Sharing between vc and project would be nice.  If possible, this will
allow a shorter modeline indicator that will combine vc and project like

  --- project-branch ---

where the project name replaces the vc-backend name.

> (I personally agree that this should be always on, with perhaps a user
> option to turn it off.)

Probably a boolean option would be simpler for users than such line:

  (assq-delete-all 'project-mode mode-line-format)




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 07:04:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 03:04:25 2023
Received: from localhost ([127.0.0.1]:38095 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1M4H-00056J-JV
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:25 -0400
Received: from relay8-d.mail.gandi.net ([217.70.183.201]:59911)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1M4B-00055j-W0
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:20 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id C63491BF20A;
 Tue, 23 May 2023 07:04:12 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83lehgp6s6.fsf@HIDDEN> (Eli Zaretskii's message of "Mon, 22 May
 2023 21:20:25 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
Date: Tue, 23 May 2023 09:49:00 +0300
Message-ID: <865y8jef13.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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.7 (-)

>> Actually I miss this feature very much.  There is already the mode-line
>> indication with the VC system name and the VC branch name, but
>> no indication with a project name, so similar files
>> in different projects all are showing the same "Git-master".
>
> We can show this on the mode line always, whenever there's a project.
> No need for a minor mode.

Agreed.

>> Now here is the implementation of 'project-mode' based on 'vc-mode',
>> and 'project-menu-entry' based on 'vc-menu-entry' that shows
>> a project name alongside of vc info, and the mouse click opens
>> the project menu using 'menu-bar-project-menu' implemented by Spencer.
>
> I still don't understand why this has to be a minor mode.  Both
> mode-line indication and the menu bar can show this stuff regardless
> of any mode.  It sounds like this mode is an unnecessary complication.

Agreed as well.  The existing variable 'vc-mode' is not a minor mode.




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

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


Received: (at 63469) by debbugs.gnu.org; 23 May 2023 07:04:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 23 03:04:19 2023
Received: from localhost ([127.0.0.1]:38091 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1M4B-00055v-5d
	for submit <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:19 -0400
Received: from relay5-d.mail.gandi.net ([217.70.183.197]:34893)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q1M48-00055f-Q1
 for 63469 <at> debbugs.gnu.org; Tue, 23 May 2023 03:04:18 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 430C81C0003;
 Tue, 23 May 2023 07:04:08 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN> (Dmitry Gutov's
 message of "Mon, 22 May 2023 22:59:50 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
 <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
Date: Tue, 23 May 2023 09:46:01 +0300
Message-ID: <86ttw3blc6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

>> +(define-minor-mode project-mode
>> +  "Toggle display of project menu in the project-aware buffers."
>> +  (if project-mode
>> +      (setq-local project-name (concat
>> +	                        " "
>> +	                        (propertize
>> +	                         (project-name (project-current))
>> +	                         'mouse-face 'mode-line-highlight
>> +	                         'local-map project-mode-line-map)))))
>
> At the very least, this will need some better name, because project
> features don't need any mode to be turned on to be used.
>
> project-menu-mode?

'project-mode' will be more like 'vc-mode' that actually is not a minor mode.
I don't know why it was named 'vc-mode'.

> Next, I'm not quite sure about the caching of project-name. There is no
> scenario when it will be invalidated, right?

I can't imagine such scenario.

> Try simply calling (project-name (project-current t)) every time, see how
> the performance is. Or, more thoroughly, copy the if-let logic from
> project-prefixed-buffer-name.

Ok, will try.

BTW, there is another problem: by default 'project-name' is defined as
(file-name-nondirectory (directory-file-name (project-root project))).
But then project name often is the same for different projects
because the directory name is the same for the same repository.
For example, in a subtree:

  emacs-master/emacs/...
  emacs-29/emacs/...
  emacs-28/emacs/...

All project names are the same 'emacs'.  How would it be possible to
customize project names?  Trying to get a parent dir might be too
unreliable.  So probably the only way is to define the name manually.
Maybe in .dir-locals.el.  Actually this works:

  ((nil . ((project-vc-name . "emacs-29"))))

Not sure why non-VC projects can't be named the same way.

Also noticed that project-vc-name is not marked as safe,
so always asks a confirmation.




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 21:30:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 17:30:13 2023
Received: from localhost ([127.0.0.1]:36975 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1D6a-0001LE-NO
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 17:30:13 -0400
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:36953)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1D6X-0001Js-1b
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 17:30:10 -0400
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id DBE645C012C;
 Mon, 22 May 2023 17:30:03 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Mon, 22 May 2023 17:30:03 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684791003; x=1684877403; bh=wMGYVpDC93uuhIv2z0Viqt+4kucuyw6QXBq
 LARBLe7c=; b=PkxiEqLBv2X2zFfYEy6QOs82IfeYDKfnSk+3gPxthjRQud4z8pR
 DZtXwoZKywvfjOlvO8xawemzZEL8ccX5rAO78ln4SEd7sKDmym08iChgl12/44GK
 MMPrtBG+4QrTfRvCWxNNzAvY8nYUxwLetpparjRqkv2xSlywdJCCJxa1am2jRAGD
 MfA4Csbc9kGLnZ6AIPuuKGUma+iMio6MtmJ91umLTMhM9Xf+gTUZXNJPhAuhI7yF
 yuSNjdATZyXN4RMStm9eUNu4rAYlKqnElyNbYSLpgxXWJWbB4Q1A9eUep/CFEKCS
 RgUtcyZN5vdC96u8dH3VVAM1u1UTkzjaKmA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684791003; x=1684877403; bh=wMGYVpDC93uuhIv2z0Viqt+4kucuyw6QXBq
 LARBLe7c=; b=EWqicx/KvLCAXu2zg1gVZF/hcTwfxkfUWegcHxvdNzi1SvgY64/
 n/Iad1VBYucnoQahzN9oHW4iDLHz+Tonoc3SVr8YBAkEd3ETnxStBxtBvhxUu1aJ
 jsFBJ2c4jMV9EMIAAhdz4P6S7ArYGSuIYZaXwAu038G2/emrtlkkQ74buHSXwSyX
 ejEy0McVRMSl0IZNjuT1sD1EIUkq5Lw3J2XEO2QDdC2G6KHhkVdMVOz2XrVSUDGM
 k0hcXz1itNYBNY/NAQY2MEHqOaVAajjNf7vBACs/pTmiU2l8oeULbVoz5mzuE93x
 haXlFNlSm3KA5O/SIOdbaaNfTBp4Ne7nPNA==
X-ME-Sender: <xms:295rZCkDlzlLJUkfo0wML52G_33yZgPKtgESOlyYBGh9WXqQBjoovg>
 <xme:295rZJ1K5fF3FJUcGJrPjUkkfkFCFxc3N3jXvltVxo_VQa_PCt6kdNZdEzOrMft62
 m08_YzU7fka7JyH1NQ>
X-ME-Received: <xmr:295rZAorxuXikrGbVkSN75pPU_K-v9RHX8NTBjq6mzWsBSiqSrWEANiN5L7KaG0>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejuddgudegkecutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:295rZGm7Jn6Qqsa5Jj0SGcIg-cMATYy-29WeCzSOUIg1dxm2LfkIFQ>
 <xmx:295rZA3m7ZGPRZw9EqO3-RRieoLz6A6MlF9Mn_94NRDe0MpJ6kQqEw>
 <xmx:295rZNs93bkuJNWGPmCfBO1NN26Z-TAVrtq2UFfXxsuQmFP1DBDpaw>
 <xmx:295rZODHOKGkParzKqUbXTyO6eJSlKQqr-y7_E86DQne8xHpG6ZZBA>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 22 May 2023 17:30:02 -0400 (EDT)
Message-ID: <be6a17f5-2659-596d-2020-91afb11cc246@HIDDEN>
Date: Tue, 23 May 2023 00:30:00 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Spencer Baugh <sbaugh@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
 <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
 <ierfs7o6p2k.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <ierfs7o6p2k.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: Eli Zaretskii <eliz@HIDDEN>, Juri Linkov <juri@HIDDEN>,
 63469 <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: -2.8 (--)

On 23/05/2023 00:20, Spencer Baugh wrote:

>> The VC project backend is not the only backend out there. Others'
>> performance characteristics may well be different.
>>
>> Further, its root-finding logic is different from VC. We also cannot
>> simply see which backend the current file is registered at because
>> project-vc has different options which affect how the root is
>> determined.
>>
>> Long story short, we won't be able to simply reuse VC's cached info.
> 
> I assume you've already considered this thoroughly, but could we just
> get rid of all those differences/merge them into vc?  For example, I
> wonder if we could teach vc to have an option like
> project-vc-merge-submodules...  or at least, teach vc to discover the
> parent project.  That could maybe be useful in vc...

I haven't spent much time on that question, to be honest.

But offhand I could say that those options won't necessarily make sense 
for VC. What would it mean for it to "discover parent project"?

VC doesn't deal with projects, it deals with repositories. And altering 
what repository root it finds (or making the logic customizable) can 
have adverse effects. E.g. we have an option like 
project-vc-merge-submodules which moves the project root to the top 
repository. But as far as VC goes, it needs to be able to check in 
changes inside submodules. One of the steps in vc-git-checkin is to 
change default-directory to the return value of vc-git-root, to have the 
command called there.

Similarly, I'm not sure what kind of effect would be appropriate for 
project-vc-extra-root-markers to have on VC functionality.

>>> (I personally agree that this should be always on, with perhaps a user
>> option to turn it off.)
>>
>> I'm fairly sure not everybody will like the additional delay when
>> visiting files over Tramp.
> 
> We could simply not run it automatically for files on TRAMP.  Do we run
> the vc find-file hook for files on TRAMP?  Maybe we shouldn't...

I thought there was some advice for vc-refresh-state somewhere, but I 
can't find it now. If you have time, you're welcome to look around.

Tramp often disables certain costly features (or Emacs packages provide 
options disable such features, when used remotely). This will need to be 
taken into account somehow.




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 21:20:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 17:20:27 2023
Received: from localhost ([127.0.0.1]:36935 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1Cx8-00013o-GG
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 17:20:26 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:44037)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1q1Cx6-00013Y-Nv
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 17:20:25 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN> (Dmitry Gutov's
 message of "Mon, 22 May 2023 22:54:52 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
 <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
Date: Mon, 22 May 2023 17:20:19 -0400
Message-ID: <ierfs7o6p2k.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: Eli Zaretskii <eliz@HIDDEN>, Juri Linkov <juri@HIDDEN>,
 63469 <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 (-)

Dmitry Gutov <dmitry@HIDDEN> writes:

> On 22/05/2023 22:49, Spencer Baugh wrote:
>> And actually, the mention of VC makes
>> me realize: We already do something expensive by default for every new
>> buffer: Query the VC state.  So maybe it's not so bad to run
>> project-current every time we make a new buffer?  Or at least, in the
>> exact same situations that we query the VC state?  Maybe we can even
>> implement some sharing between the project-current lookup and the VC
>> state query, for the vc project backend?
>
> The VC project backend is not the only backend out there. Others'
> performance characteristics may well be different.
>
> Further, its root-finding logic is different from VC. We also cannot
> simply see which backend the current file is registered at because
> project-vc has different options which affect how the root is
> determined.
>
> Long story short, we won't be able to simply reuse VC's cached info.

I assume you've already considered this thoroughly, but could we just
get rid of all those differences/merge them into vc?  For example, I
wonder if we could teach vc to have an option like
project-vc-merge-submodules...  or at least, teach vc to discover the
parent project.  That could maybe be useful in vc...

>> (I personally agree that this should be always on, with perhaps a user
> option to turn it off.)
>
> I'm fairly sure not everybody will like the additional delay when
> visiting files over Tramp.

We could simply not run it automatically for files on TRAMP.  Do we run
the vc find-file hook for files on TRAMP?  Maybe we shouldn't...




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 20:00:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 16:00:00 2023
Received: from localhost ([127.0.0.1]:36835 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1BhI-0007Ah-1q
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 16:00:00 -0400
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:50029)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1BhG-0007AS-3z
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 15:59:58 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 12A205C00F8;
 Mon, 22 May 2023 15:59:53 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Mon, 22 May 2023 15:59:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684785593; x=1684871993; bh=orkHQfpJV9RUh25dFmkDPJ4fah5A3OcAgh0
 zMbcB25w=; b=0DmWidLT96fAU0CJn2gpgVyT8KI3016PGh61NM9xGHF6JqHAh0u
 dOOrhYUX0di9HV/G8S7exNiOIGhEUEYilHQwf07EanGyBG8fDy9i7bBPIkAgn0CS
 2UJbDJ+53owNe2Hxp9D3572672NwRBbVism73y9wd58mFwooag2jDAcXqcjmAcZJ
 TXFk90PraZPnYt7rEI6jjlb34ToRZn9AMGulECS8tAfwYPRBv95pcOa75IsgV4iY
 AvsfRqbNPbGYgE5ZUZWeoUvN/VF7XhnuSt9H5uTMxTPz9xMeMbKKisBIZ5NocxFG
 PWT8+MrsCU76cyeqA63eJAbOYcEjDvTFI5Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684785593; x=1684871993; bh=orkHQfpJV9RUh25dFmkDPJ4fah5A3OcAgh0
 zMbcB25w=; b=r5cSKJK/WunclR3+8mM03iqRYLktB8e25Uff9D5GTBu3tID8YQF
 raF1i3Qnr08/zfKbMaaH/5ml6TVmGtGauEjQa6cNuSF4g+k8rS+FLBp0z6rkQtVq
 P3wqL2o2EdTvbDeTf8XqM5djgj9vnCuTRw5c70kfG2w4IE6BHTwh1sIy2pd7t9qa
 VLzRRJwwkV25ApISC0+9fVFsHN6tMCf5IXU5l/GR3TndJsmwO1eLjRTUSghESrmT
 /vZvpVj48IO+hrosLA0mB5Lx558/MfNDLWGC3fC/rmKwExHPn5+aQQwfdRjVDrKi
 8vwExV3908EPeJXdeMCX03da8+IQ6W8/Q0A==
X-ME-Sender: <xms:uMlrZDyS176AJjFEUN0-SHnQsgsq_e8TpAv1fta7xT5EtHrhxB_rfQ>
 <xme:uMlrZLRHcQ4DbVbCxgUqsvklHLsX84hgBCY94WDlyUf9o_4WEd7c-MFgukruh9rdt
 gVCdpRnLWDS2wQCcNA>
X-ME-Received: <xmr:uMlrZNWX9xXwoJ0qfibvDKcagF1EHk9N3j5aDmNUed7JG25KfB0ESBbwANja1u4>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejuddgudefudcutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:uMlrZNhvFMDrjLxxGZlC_xmFsQQUfOavZHXgfLpGf3IKCYxtVPizqg>
 <xmx:uMlrZFBzk8yc7K04rs59X6EfCaoSnMNKGLizw1rQ9Q15Rv1hNhZgfA>
 <xmx:uMlrZGKVCMMnmkFjHZQsmxIuib2_Ket7bIxg23gEySJaMAAMI-egvw>
 <xmx:uclrZIOa-wqYL1ZviJWfu60q2c-LIGXIs2ghHMHXPj4ROufrXJSTKQ>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 22 May 2023 15:59:51 -0400 (EDT)
Message-ID: <63854a1a-8178-d039-288c-34b1e67e5b06@HIDDEN>
Date: Mon, 22 May 2023 22:59:50 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86o7mccl5z.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <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: -2.8 (--)

On 22/05/2023 20:48, Juri Linkov wrote:
> +;;;###autoload
> +(define-minor-mode project-mode
> +  "Toggle display of project menu in the project-aware buffers."
> +  (if project-mode
> +      (setq-local project-name (concat
> +	                        " "
> +	                        (propertize
> +	                         (project-name (project-current))
> +	                         'mouse-face 'mode-line-highlight
> +	                         'local-map project-mode-line-map)))))

At the very least, this will need some better name, because project 
features don't need any mode to be turned on to be used.

project-menu-mode?

Next, I'm not quite sure about the caching of project-name. There is no 
scenario when it will be invalidated, right?

Try simply calling (project-name (project-current t)) every time, see 
how the performance is. Or, more thoroughly, copy the if-let logic from 
project-prefixed-buffer-name.




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 19:55:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 15:55:06 2023
Received: from localhost ([127.0.0.1]:36830 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1BcY-00070S-6P
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 15:55:06 -0400
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:50711)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1q1BcU-0006yz-3Z
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 15:55:04 -0400
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 1A4185C0148;
 Mon, 22 May 2023 15:54:56 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Mon, 22 May 2023 15:54:56 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm3; t=
 1684785296; x=1684871696; bh=qgzCptI9a99B2GhoEVlYIKbc11RPt8ZPsRd
 8mbBZ4es=; b=tcYBz6Mx71W/XeMoKdZnwSAGpyd+IRanNrpqQHtsUoeZAkoeDku
 WNMuvi8kmjZ1rd7pzV8nFoFcT6Adpj79ve/DM9dGsKG6VtPMfXWL4pV9RHXJWo6D
 Mv8QOGqShYoyOaYcAhi3aVV+w8dDFK8D3pyFCqQdwHGe8aDchErSEzjxx5EjC4wl
 Z83t849F1eM3vZS6IYYbYNFkrZ1Z38NbJOzxeeWLUqrjXjbafHHcH/4I6lhXJj1t
 ZbWzwct9TRI6pxU2cbK0RsygAIIH3Ye9Q05rnuS2oib9p67fY/LLjcQIn44jW+Zs
 +PE4PXasfaaXOgh71xK/LYiCk9KW0pKkBUA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684785296; x=1684871696; bh=qgzCptI9a99B2GhoEVlYIKbc11RPt8ZPsRd
 8mbBZ4es=; b=QeWMJqAih5EzeY6Pzr90g5pi7X6zuDd57P3StKo6JtiIgmic2T4
 ta7mvBiOIZzmEqdUI4WYZDcGdhEmR6CFv5t5X+p+1VLFztvkyMmLT84yPQKS+P36
 b+9fz/5DfCmcMeOqaiCgE3plOT79B5B16ly9RSD6DrwixoFAu59o7WuDyJkEjAw0
 5L8gu9jc3vCbSZQBj7otsGzObnPpJ8YcQ8yNXRiiuJPw/LXWWgLts9/USQ39Ek9i
 TXXxu8tvvQHX8iBI+w/zEjX5j4ZN02a80u217oEpYr6+aSg0G9reiCsMHdFumX1v
 RfiIVw+I4WaLoDBbEHMDrxmIYU7/Xo09Y7Q==
X-ME-Sender: <xms:j8hrZOX_EUn3WjwRDwuWzE4nZi4DkaciUkjLYHWs3rMrx1zcLG594w>
 <xme:j8hrZKnOow3CUry4ellmkTExKIcHzmvePdaMx2g90nVm63Dqbgzg_diAsuF1N25gg
 VlMoUCy1WlfYr4ZvHg>
X-ME-Received: <xmr:j8hrZCYslwOWfALFlMfZGTrldAYqzavlPpM_Fo-ddgMzj-9XTl1cFAChjdRz8gU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejuddguddvlecutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:j8hrZFVc80QSBfBBCWg092yMUkkiOb4624F6VxVQphVT4zHHzelwow>
 <xmx:j8hrZIlyMhHyc3pgzZp9KUsFntkWJLmwtTSk1qShAeMHbKpIikF-vA>
 <xmx:j8hrZKd2lIomMCHrWsziEY9Amfpz41X0-l4HPf_6UYL9CoYyhc5irg>
 <xmx:kMhrZNznO-4KhtpJbrtaYqrm19CN454zgtVailDHyjOwTyjD_Lr8bA>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 22 May 2023 15:54:54 -0400 (EDT)
Message-ID: <9b95edb4-ce9e-9dfe-4ad8-24d08422a5ae@HIDDEN>
Date: Mon, 22 May 2023 22:54:52 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
 <ierilck6t94.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <ierilck6t94.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN>
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: -2.8 (--)

On 22/05/2023 22:49, Spencer Baugh wrote:
> And actually, the mention of VC makes
> me realize: We already do something expensive by default for every new
> buffer: Query the VC state.  So maybe it's not so bad to run
> project-current every time we make a new buffer?  Or at least, in the
> exact same situations that we query the VC state?  Maybe we can even
> implement some sharing between the project-current lookup and the VC
> state query, for the vc project backend?

The VC project backend is not the only backend out there. Others' 
performance characteristics may well be different.

Further, its root-finding logic is different from VC. We also cannot 
simply see which backend the current file is registered at because 
project-vc has different options which affect how the root is determined.

Long story short, we won't be able to simply reuse VC's cached info.

 > (I personally agree that this should be always on, with perhaps a user
option to turn it off.)

I'm fairly sure not everybody will like the additional delay when 
visiting files over Tramp.




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 19:50:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 15:50:06 2023
Received: from localhost ([127.0.0.1]:36815 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1BXi-0006nW-8E
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 15:50:06 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:59047)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1q1BXg-0006mu-Hd
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 15:50:05 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83lehgp6s6.fsf@HIDDEN> (Eli Zaretskii's message of "Mon, 22 May
 2023 21:20:25 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN> <83lehgp6s6.fsf@HIDDEN>
Date: Mon, 22 May 2023 15:49:59 -0400
Message-ID: <ierilck6t94.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN>
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 (-)

Eli Zaretskii <eliz@HIDDEN> writes:

>> From: Juri Linkov <juri@HIDDEN>
>> Cc: dmitry@HIDDEN,  sbaugh@HIDDEN,  63469 <at> debbugs.gnu.org
>> Date: Mon, 22 May 2023 20:48:08 +0300
>> 
>> >> It can be used for anything.  For example, to display the project name
>> >> on the mode-line.  (Then better to cache the project name in a new
>> >> buffer-local variable.)
>> >
>> > I don't see anything but the menu in the patch you suggested.  I
>> > understand that in principle we could do many things there, but if you
>> > are proposing a real patch, not just an initial idea, please show all
>> > of the code you want to include in this mode.
>> 
>> Actually I miss this feature very much.  There is already the mode-line
>> indication with the VC system name and the VC branch name, but
>> no indication with a project name, so similar files
>> in different projects all are showing the same "Git-master".
>
> We can show this on the mode line always, whenever there's a project.
> No need for a minor mode.

This might get crowded when there's also the VC modeline indicator.

Still, I would like this feature.  And actually, the mention of VC makes
me realize: We already do something expensive by default for every new
buffer: Query the VC state.  So maybe it's not so bad to run
project-current every time we make a new buffer?  Or at least, in the
exact same situations that we query the VC state?  Maybe we can even
implement some sharing between the project-current lookup and the VC
state query, for the vc project backend?

>> Now here is the implementation of 'project-mode' based on 'vc-mode',
>> and 'project-menu-entry' based on 'vc-menu-entry' that shows
>> a project name alongside of vc info, and the mouse click opens
>> the project menu using 'menu-bar-project-menu' implemented by Spencer.
>
> I still don't understand why this has to be a minor mode.  Both
> mode-line indication and the menu bar can show this stuff regardless
> of any mode.  It sounds like this mode is an unnecessary complication.

(I personally agree that this should be always on, with perhaps a user
option to turn it off.)




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 18:20:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 14:20:17 2023
Received: from localhost ([127.0.0.1]:36361 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q1A8j-000492-Ce
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 14:20:17 -0400
Received: from eggs.gnu.org ([209.51.188.92]:45444)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1q1A8g-00048k-3r
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 14:20:11 -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 1q1A8Z-00033e-QH; Mon, 22 May 2023 14:20:03 -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=NS1KhjzLEgqUQNPwxLiwmviYV9X3vh/HsmjW52A8FV0=; b=IqEDcTB8+bUk
 7khQJMNtuJA7KlT9ZBo2XrRno1I3Qo4z3RcjaDJu4N8ZdOES7DS5guQclNLVjFPmavrplqP2VPdtK
 tDoSSMqPGS6Yk02PBpUrxAWl7TIgtc3imUk8ZJ7m5/uHIKFhTyAjqs0Y/qobiENlAWoZZIgwnSO8v
 vD9YGUpCbrokm8btiWLtChbB3UlIKjTL3yXfdKvXTRQtlx5sj8o6NQw1bRINFPzcMxTQavc5yBTIZ
 t4+qEpYJiCh8JHrZ499re1A9tM8JUpvs6XUYJmM1bJIIbw3CMv+t/4lL2cS4WQBs3m4+Wcp9TlNL2
 +LJujDMK5BbCJw8kWdz0Lg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1q1A8Z-0001N1-3S; Mon, 22 May 2023 14:20:03 -0400
Date: Mon, 22 May 2023 21:20:25 +0300
Message-Id: <83lehgp6s6.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86o7mccl5z.fsf@HIDDEN> (message from Juri Linkov on
 Mon, 22 May 2023 20:48:08 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
 <86o7mccl5z.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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: Juri Linkov <juri@HIDDEN>
> Cc: dmitry@HIDDEN,  sbaugh@HIDDEN,  63469 <at> debbugs.gnu.org
> Date: Mon, 22 May 2023 20:48:08 +0300
> 
> >> It can be used for anything.  For example, to display the project name
> >> on the mode-line.  (Then better to cache the project name in a new
> >> buffer-local variable.)
> >
> > I don't see anything but the menu in the patch you suggested.  I
> > understand that in principle we could do many things there, but if you
> > are proposing a real patch, not just an initial idea, please show all
> > of the code you want to include in this mode.
> 
> Actually I miss this feature very much.  There is already the mode-line
> indication with the VC system name and the VC branch name, but
> no indication with a project name, so similar files
> in different projects all are showing the same "Git-master".

We can show this on the mode line always, whenever there's a project.
No need for a minor mode.

> Now here is the implementation of 'project-mode' based on 'vc-mode',
> and 'project-menu-entry' based on 'vc-menu-entry' that shows
> a project name alongside of vc info, and the mouse click opens
> the project menu using 'menu-bar-project-menu' implemented by Spencer.

I still don't understand why this has to be a minor mode.  Both
mode-line indication and the menu bar can show this stuff regardless
of any mode.  It sounds like this mode is an unnecessary complication.




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

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


Received: (at 63469) by debbugs.gnu.org; 22 May 2023 17:52:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 22 13:52:56 2023
Received: from localhost ([127.0.0.1]:36317 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q19iJ-0003Lv-GV
	for submit <at> debbugs.gnu.org; Mon, 22 May 2023 13:52:56 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:58365)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q19iG-0003Lg-Ic
 for 63469 <at> debbugs.gnu.org; Mon, 22 May 2023 13:52:53 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id D126540005;
 Mon, 22 May 2023 17:52:43 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <835y8otbub.fsf@HIDDEN> (Eli Zaretskii's message of "Fri, 19 May
 2023 21:28:28 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN> <835y8otbub.fsf@HIDDEN>
Date: Mon, 22 May 2023 20:48:08 +0300
Message-ID: <86o7mccl5z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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.7 (-)

--=-=-=
Content-Type: text/plain

>> >> +(define-minor-mode project-mode
>> >> +  "Toggle display of project menu in the project-aware buffers."
>> >> +  :lighter " Pro"
>> >> +  :keymap (define-keymap "<menu-bar>" project-mode-menu))
>> >
>> > If this mode is only for showing the menu, then at least the mode's
>> > name should reflect that.
>>
>> It can be used for anything.  For example, to display the project name
>> on the mode-line.  (Then better to cache the project name in a new
>> buffer-local variable.)
>
> I don't see anything but the menu in the patch you suggested.  I
> understand that in principle we could do many things there, but if you
> are proposing a real patch, not just an initial idea, please show all
> of the code you want to include in this mode.

Actually I miss this feature very much.  There is already the mode-line
indication with the VC system name and the VC branch name, but
no indication with a project name, so similar files
in different projects all are showing the same "Git-master".

Now here is the implementation of 'project-mode' based on 'vc-mode',
and 'project-menu-entry' based on 'vc-menu-entry' that shows
a project name alongside of vc info, and the mouse click opens
the project menu using 'menu-bar-project-menu' implemented by Spencer.


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=project-mode-line.patch

diff --git a/lisp/bindings.el b/lisp/bindings.el
index c77b64c05da..ba9f44b920c 100644
--- a/lisp/bindings.el
+++ b/lisp/bindings.el
@@ -616,6 +616,7 @@ mode-line-end-spaces
 	     "   "
 	     'mode-line-position
 	     '(vc-mode vc-mode)
+	     '(project-mode project-name)
 	     "  "
 	     'mode-line-modes
 	     'mode-line-misc-info
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 6aacb85c12c..6198441d788 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -547,6 +547,7 @@ desktop-minor-mode-table
   '((defining-kbd-macro nil)
     (isearch-mode nil)
     (vc-mode nil)
+    (project-mode nil)
     (vc-dir-mode nil)
     (erc-track-minor-mode nil)
     (savehist-mode nil))
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index 7c51778d5d4..06bd0d09b8e 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -1883,5 +1908,47 @@ project-switch-project
     (let ((project-current-directory-override dir))
       (call-interactively command))))
 
+;;; Project mode
+
+;; Tell Emacs about this new kind of minor mode
+(add-to-list 'minor-mode-alist '(project-mode project-name))
+
+(defvar project-name nil
+  "The project name of the current buffer when it belongs to a project.")
+
+;;;###autoload
+(put 'project-name 'risky-local-variable t)
+(put 'project-name 'permanent-local t)
+
+(defvar project-menu-entry
+  `(menu-item ,(purecopy "Project") ,menu-bar-project-menu))
+
+(defconst project-mode-line-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map [mode-line down-mouse-1] project-menu-entry)
+    map))
+
+;;;###autoload
+(define-minor-mode project-mode
+  "Toggle display of project menu in the project-aware buffers."
+  (if project-mode
+      (setq-local project-name (concat
+	                        " "
+	                        (propertize
+	                         (project-name (project-current))
+	                         'mouse-face 'mode-line-highlight
+	                         'local-map project-mode-line-map)))))
+
+(defun project-mode--turn-on ()
+  "Turn on `project-mode' in all pertinent buffers."
+  (when (project-current)
+    (project-mode 1)))
+
+;;;###autoload
+(define-globalized-minor-mode global-project-mode
+  project-mode project-mode--turn-on
+  :group 'project
+  :version "30.1")
+
 (provide 'project)
 ;;; project.el ends here

--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 18:28:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 14:28:20 2023
Received: from localhost ([127.0.0.1]:57394 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q04pw-0000Fb-5k
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 14:28:20 -0400
Received: from eggs.gnu.org ([209.51.188.92]:48956)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1q04pv-0000FP-1y
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 14:28:19 -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 1q04po-0003fq-PI; Fri, 19 May 2023 14:28:12 -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=u3fV4qwMKA6F9eFKttvfjw3+/N4tFwMvFUwZVonD/o0=; b=a24PSvj18cFz
 UXIih1q8sKJJr16d0OUpNbp4FTch83dM56uWZKAvBtXJ5GgGTk9VyhbUI/mIjyKaUy//Bx4BNDDe/
 Dc2mGw0N+YSKJ5SHdhbGd4K7Azrbw+NJ/relNqweHE/6W5zgzi1vfG4C/BXgKJVnGJQ0EsaZGlpbt
 SeZ9PKfzt258ao0enkj/TG1IbVe2nAFmQyyCUwxT1Nhnc0LAHoTtZRFxwkocZZuYQ1vrjExw+ZYm2
 xXTrTRJRYywMakSnHfkMM79u07REFOQZTOBJGL2Rwz9R8M3regMfAuKs2zf/IQBg3Qjny4NI1XmXp
 yhxRpdUpWoRFkikqi99+qQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1q04po-0003Na-8Y; Fri, 19 May 2023 14:28:12 -0400
Date: Fri, 19 May 2023 21:28:28 +0300
Message-Id: <835y8otbub.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <867ct4b4ds.fsf@HIDDEN> (message from Juri Linkov on
 Fri, 19 May 2023 20:46:55 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
 <867ct4b4ds.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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: Juri Linkov <juri@HIDDEN>
> Cc: dmitry@HIDDEN,  sbaugh@HIDDEN,  63469 <at> debbugs.gnu.org
> Date: Fri, 19 May 2023 20:46:55 +0300
> 
> >> +(define-minor-mode project-mode
> >> +  "Toggle display of project menu in the project-aware buffers."
> >> +  :lighter " Pro"
> >> +  :keymap (define-keymap "<menu-bar>" project-mode-menu))
> >
> > If this mode is only for showing the menu, then at least the mode's
> > name should reflect that.
> 
> It can be used for anything.  For example, to display the project name
> on the mode-line.  (Then better to cache the project name in a new
> buffer-local variable.)

I don't see anything but the menu in the patch you suggested.  I
understand that in principle we could do many things there, but if you
are proposing a real patch, not just an initial idea, please show all
of the code you want to include in this mode.




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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 18:16:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 14:16:38 2023
Received: from localhost ([127.0.0.1]:57364 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q04ec-0008Nk-EU
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 14:16:38 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:35019)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q04ea-0008NI-T0
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 14:16:37 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id D7BD540007;
 Fri, 19 May 2023 18:16:29 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83r0rctxbc.fsf@HIDDEN> (Eli Zaretskii's message of "Fri, 19 May
 2023 13:44:39 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN> <83r0rctxbc.fsf@HIDDEN>
Date: Fri, 19 May 2023 20:46:55 +0300
Message-ID: <867ct4b4ds.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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.7 (-)

>> +(define-minor-mode project-mode
>> +  "Toggle display of project menu in the project-aware buffers."
>> +  :lighter " Pro"
>> +  :keymap (define-keymap "<menu-bar>" project-mode-menu))
>
> If this mode is only for showing the menu, then at least the mode's
> name should reflect that.

It can be used for anything.  For example, to display the project name
on the mode-line.  (Then better to cache the project name in a new
buffer-local variable.)




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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 18:16:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 14:16:34 2023
Received: from localhost ([127.0.0.1]:57361 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q04eY-0008NR-57
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 14:16:34 -0400
Received: from relay1-d.mail.gandi.net ([217.70.183.193]:58577)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1q04eW-0008ND-SR
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 14:16:33 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 8D043240007;
 Fri, 19 May 2023 18:16:25 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <ierlehko01l.fsf@HIDDEN> (Spencer Baugh's message of
 "Fri, 19 May 2023 10:42:14 -0400")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <ierlehko01l.fsf@HIDDEN>
Date: Fri, 19 May 2023 20:41:30 +0300
Message-ID: <86edncb4mt.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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.7 (-)

> Extra idea: Maybe we could have a submenu which lists all the projects,
> and then has a subsubmenu to run commands in the context of that
> project?  This could replace the current menu entry for
> project-switch-project.
>
> So for example, if I have an emacs-29 project:
>
> Tools -> Project -> emacs-29 -> Open File...
> Tools -> Project -> emacs-29 -> Dired
>
> (maybe the menu entries could be named with project-name, as I have
> here, so they're shorter)

OT1H, it would be simpler to switch projects.  OTOH, the menus will be
quite long.




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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 14:42:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 10:42:22 2023
Received: from localhost ([127.0.0.1]:57082 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q01JG-0008DG-1Y
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 10:42:22 -0400
Received: from mxout6.mail.janestreet.com ([64.215.233.21]:47639)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1q01JE-0008D3-Fg
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 10:42:20 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <86mt211vk3.fsf@HIDDEN> (Juri Linkov's message of "Thu, 
 18 May 2023 18:57:48 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
Date: Fri, 19 May 2023 10:42:14 -0400
Message-ID: <ierlehko01l.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 63469 <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 (-)


Extra idea: Maybe we could have a submenu which lists all the projects,
and then has a subsubmenu to run commands in the context of that
project?  This could replace the current menu entry for
project-switch-project.

So for example, if I have an emacs-29 project:

Tools -> Project -> emacs-29 -> Open File...
Tools -> Project -> emacs-29 -> Dired

(maybe the menu entries could be named with project-name, as I have
here, so they're shorter)




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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 10:44:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 06:44:34 2023
Received: from localhost ([127.0.0.1]:55498 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzxb7-0001wp-Gj
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 06:44:33 -0400
Received: from eggs.gnu.org ([209.51.188.92]:43432)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzxb6-0001wY-8T
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 06:44:32 -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 1pzxaz-0004iN-V5; Fri, 19 May 2023 06:44:26 -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=dJJtbsZva4eNBz7volQIMIFluULE/LAk3metxWD0FAY=; b=RJjb/M3PBAnO
 ov12873TaU/7jzdtmBAkw5s+frkFB7VOxHAJlsra8996D/NvfAvjep0+fXGLn2aX9XD+XLkfavbh2
 TtA5OthQdv2243HkmZnJ5LPQmhrBzLaw/cyZfuf70MNaagfJjBguRqaOpkNLWn0N1vrYdlqJAmAFJ
 SfFSThThyr2KzRS4saO00NrApzlrB8H8L+lZrUvSZyKlRgwaQMj2KYsaMURLIr34wPdN7CpLzb2OP
 7FAq8uC9zOwVaM+Xrqdkbd0/hqeW4gxAQUkJmbb2dPrUMWft+LgbjLLaB5/zM/oV66Ymcm6uc2bUW
 tCyRznWo829d67F50/QDbw==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzxaz-0006jC-2o; Fri, 19 May 2023 06:44:25 -0400
Date: Fri, 19 May 2023 13:44:39 +0300
Message-Id: <83r0rctxbc.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86ilco7qbs.fsf@HIDDEN> (message from Juri Linkov on
 Fri, 19 May 2023 09:56:31 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
 <86ilco7qbs.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <at> debbugs.gnu.org, sbaugh@HIDDEN
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: Juri Linkov <juri@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  Spencer Baugh <sbaugh@HIDDEN>,
>   63469 <at> debbugs.gnu.org
> Date: Fri, 19 May 2023 09:56:31 +0300
> 
> This mode is intended for anyone who wants to show the menu
> only in project-supported buffers.  To do this, they need to
> enable `global-project-mode':
> 
> ```patch
> diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
> index 7c51778d5d4..e6dc7aea9ca 100644
> --- a/lisp/progmodes/project.el
> +++ b/lisp/progmodes/project.el
> @@ -1883,5 +1883,30 @@ project-switch-project
>      (let ((project-current-directory-override dir))
>        (call-interactively command))))
>  
> +(easy-menu-define project-mode-menu project-prefix-map
> +  "Menu for `project-mode' buffers."
> +  '("Project"
> +    ["List buffers" project-list-buffers
> +     :help "List project buffers"]
> +    ;; ...
> +    ))
> +
> +;;;###autoload
> +(define-minor-mode project-mode
> +  "Toggle display of project menu in the project-aware buffers."
> +  :lighter " Pro"
> +  :keymap (define-keymap "<menu-bar>" project-mode-menu))

If this mode is only for showing the menu, then at least the mode's
name should reflect that.

And once again: I don't think I see the justification to have a minor
mode whose only job is to show a menu-bar menu.  I'm not even sure why
we need to have a project-mode at all: AFAIU the project.el features
are always available, so no mode is needed.





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

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


Received: (at 63469) by debbugs.gnu.org; 19 May 2023 07:09:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 19 03:09:57 2023
Received: from localhost ([127.0.0.1]:55273 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzuFR-00044z-7i
	for submit <at> debbugs.gnu.org; Fri, 19 May 2023 03:09:57 -0400
Received: from relay1-d.mail.gandi.net ([217.70.183.193]:59199)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1pzuFN-00044d-1s
 for 63469 <at> debbugs.gnu.org; Fri, 19 May 2023 03:09:55 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 7C96F240006;
 Fri, 19 May 2023 07:09:44 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN> (Dmitry Gutov's
 message of "Thu, 18 May 2023 22:34:08 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
 <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
Date: Fri, 19 May 2023 09:56:31 +0300
Message-ID: <86ilco7qbs.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 63469 <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.7 (-)

>> Is it possible to enable some formal minor mode in project-visited
>> buffers?
>
> Calculating whether a known project is associated with the buffer, we'd
> need to find it.
>
> Doing that can take non-negligible amount of time, e.g. in remote buffers,
> so we only do that on-demand, not in find-file-hook.

This mode is intended for anyone who wants to show the menu
only in project-supported buffers.  To do this, they need to
enable `global-project-mode':

```patch
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index 7c51778d5d4..e6dc7aea9ca 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -1883,5 +1883,30 @@ project-switch-project
     (let ((project-current-directory-override dir))
       (call-interactively command))))
 
+(easy-menu-define project-mode-menu project-prefix-map
+  "Menu for `project-mode' buffers."
+  '("Project"
+    ["List buffers" project-list-buffers
+     :help "List project buffers"]
+    ;; ...
+    ))
+
+;;;###autoload
+(define-minor-mode project-mode
+  "Toggle display of project menu in the project-aware buffers."
+  :lighter " Pro"
+  :keymap (define-keymap "<menu-bar>" project-mode-menu))
+
+(defun project-mode--turn-on ()
+  "Turn on `project-mode' in all pertinent buffers."
+  (when (project-current)
+    (project-mode 1)))
+
+;;;###autoload
+(define-globalized-minor-mode global-project-mode
+  project-mode project-mode--turn-on
+  :group 'project
+  :version "30.1")
+
 (provide 'project)
 ;;; project.el ends here
```




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 19:34:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 15:34:21 2023
Received: from localhost ([127.0.0.1]:54638 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzjOH-0004bm-E8
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 15:34:21 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:51505)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1pzjOF-0004bX-0P
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 15:34:20 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id E304A5C0165;
 Thu, 18 May 2023 15:34:13 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Thu, 18 May 2023 15:34:13 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm2; t=
 1684438453; x=1684524853; bh=vFY1A0b3wYXo6BKMKuywV+WQ2qNAnyIS2DX
 ua5Y1juA=; b=wwmeicYt3ljOyxboKBCyBzvLT5ypdA9AR1yNmpGZfa5MlgMLgPa
 2BPxLEC2Goc0t7ZBmpIuVfDYH0BFeqk+RdhY+uyZciwovUay+jO4+tOePQoYEpdm
 TEW5s8tGK8OveID2BcXysqvCkjQ8RKrPLUjzybcqgyZGUvXySx0t8ZjCrXOcyANc
 YJeC0wk2ljnPgpFr1bgdQjRTctuhywOJyJsjnd7Sgi+oSKEEKHRYwEQ/H6VEgIZV
 46ifVsCebkGonHXnVukzaehBNP2ueBqBlweOzp+uM0877gBLhlJ9A8/jqkL1p9XC
 ohKq9i4nbKzOXITZVGgW+0U7CGyDSEAsFNQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684438453; x=1684524853; bh=vFY1A0b3wYXo6BKMKuywV+WQ2qNAnyIS2DX
 ua5Y1juA=; b=W02EmkpfDOqTDZwas6RH2lhBn/VPVrAAzRd6CSg1EVja39n1EtE
 g0sXLvxSnbKBx6WuVS8tpAb8KDNTfij3GjT3hz7d6U5/O+qosI3sgbj62YDS5hM5
 hOvgzL+4WuFunbhVJiQxvGndGoTaojFBQg5RzSO3yyJDeSawetlLJvXHFsyDE52k
 jnynb8tqY0L08GZyOSCnWybRKXVkj9yGod5DDrr8PKhIOUMwzHn/FVz/yC6M4Ey3
 nvU8uPNJiPBB1KtyiwMmcoBot245CeczpXfnKUGhm3j83BcSV2Kshqlvgp3Q1BQN
 M+d/GxXaOJbvuR+hIHvoYPnijUizmUwp3Bw==
X-ME-Sender: <xms:tX1mZJSduPRQIleHRgkMAN7t0_94ELqny421uHTG1ac_deNTCWuRpQ>
 <xme:tX1mZCwslPRbYAhgGs9LD8a5zPEu6_OP-M9GzKrlSR1LXRUQ3GnZY5PuCFzME3l_U
 92_ywZUI120e-vS19Y>
X-ME-Received: <xmr:tX1mZO2uthqoZhdwY0gaz8a9uOSrvO6dLnDVRvlR-q1yCti6UC2Mp3jm-lcCFuM>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeeifedgudeflecutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:tX1mZBDVUI5vEovIBIdFzXPefgBwUCnXwaQtzAIeJuXjb8A4SMfsnA>
 <xmx:tX1mZCjc2r5pozObC_O6ZR9dnaY6X_h_71zaFejeUUbYGvBeNdCl5w>
 <xmx:tX1mZFpJwgp8iSSpvbgOy-RTSLDIVjbv0b2Ru-DopevGiljaBOPmQA>
 <xmx:tX1mZFtGhu-jWExPMmdCJHl9M-WAKxLyfUduRz8s8s1TzvYuHMEVDw>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 18 May 2023 15:34:10 -0400 (EDT)
Message-ID: <0ce4532f-03aa-6afe-bd8f-8ef1df6615de@HIDDEN>
Date: Thu, 18 May 2023 22:34:08 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Juri Linkov <juri@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86mt211vk3.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, 63469 <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: -2.8 (--)

On 18/05/2023 18:57, Juri Linkov wrote:
> Is it possible to enable some formal minor mode in project-visited
> buffers?

Calculating whether a known project is associated with the buffer, we'd 
need to find it.

Doing that can take non-negligible amount of time, e.g. in remote 
buffers, so we only do that on-demand, not in find-file-hook.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 16:06:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 12:06:18 2023
Received: from localhost ([127.0.0.1]:54273 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzg8w-0007DP-0E
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 12:06:18 -0400
Received: from eggs.gnu.org ([209.51.188.92]:56062)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzg8r-0007D8-HW
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 12:06:16 -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 1pzg8j-0003q9-Rs; Thu, 18 May 2023 12:06:05 -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=WWBgWRQ7u44Gs2q8GB5baVaWS7OgtD4yoEB6qfgKtLQ=; b=n7PLr9zdFX2/
 2MDozxrdnMgpMtmsh9QnsFyeyot9bij6tTtDcDDBC/PGM3e/J4Tiz3MMPvzCIE1G9T1tgtFz7yDKk
 n7Y7agZ8y9f0Pznq+NiGW0taC7209Yd//hK+LsbtCo1B4FKgWJe6K/Zgjug4vocNHWzHPYcdZuRlo
 B7My7xuKPvP5Xk8rkikCAlYEZ0q876Df26FMTQqnhX8VVOXwczng6MmYw3XfJG7huw9zJxWjJL9M7
 ZFo3S7Mv2UX9JTZ2p4EAXsW/X5KXWRhXajhaZSfQyKcRSCKjIZXnY+76xndcw7G3lksjgibaTq/i7
 +XCtFqANHVYvHyT4F29szg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzg8j-0000A9-8M; Thu, 18 May 2023 12:06:05 -0400
Date: Thu, 18 May 2023 19:06:17 +0300
Message-Id: <83fs7tvd3a.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86mt211vk3.fsf@HIDDEN> (message from Juri Linkov on
 Thu, 18 May 2023 18:57:48 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN> <86mt211vk3.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <at> debbugs.gnu.org, dmitry@HIDDEN
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: Juri Linkov <juri@HIDDEN>
> Cc: Spencer Baugh <sbaugh@HIDDEN>,  dmitry@HIDDEN,
>   63469 <at> debbugs.gnu.org
> Date: Thu, 18 May 2023 18:57:48 +0300
> 
> >> We could add the split menu items first and add the consolidated menu
> >> later if there is demand.
> >
> > Didn't Juri ask for it already?
> 
> When I said that a separate submenu might be useful, I meant a minor-mode
> submenu as used for other context submenus in 'context-menu-minor'.
> 
> Is it possible to enable some formal minor mode in project-visited
> buffers?  Then a minor-mode menu with project items could be associated
> with such minor mode and displayed at the end of the global menu
> and in context menus.

I don't understand why would we need a minor mode to show a menu on
the menu bar.  The menu items are all related to popular project.el
commands, so they should be visible regardless of any modes, IMO.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 16:01:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 12:01:34 2023
Received: from localhost ([127.0.0.1]:54260 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzg4M-00074x-3K
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 12:01:34 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:41989)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1pzg4H-000746-V9
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 12:01:32 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id AB4E340003;
 Thu, 18 May 2023 16:01:22 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83mt21vfgl.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 18 May
 2023 18:15:06 +0300")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
 <83mt21vfgl.fsf@HIDDEN>
Date: Thu, 18 May 2023 18:57:48 +0300
Message-ID: <86mt211vk3.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: Spencer Baugh <sbaugh@HIDDEN>, 63469 <at> debbugs.gnu.org,
 dmitry@HIDDEN
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.7 (-)

>> We could add the split menu items first and add the consolidated menu
>> later if there is demand.
>
> Didn't Juri ask for it already?

When I said that a separate submenu might be useful, I meant a minor-mode
submenu as used for other context submenus in 'context-menu-minor'.

Is it possible to enable some formal minor mode in project-visited
buffers?  Then a minor-mode menu with project items could be associated
with such minor mode and displayed at the end of the global menu
and in context menus.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 15:15:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 11:15:05 2023
Received: from localhost ([127.0.0.1]:54083 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzfLN-0005Mx-0J
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 11:15:05 -0400
Received: from eggs.gnu.org ([209.51.188.92]:57846)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzfLJ-0005M7-QN
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 11:15:03 -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 1pzfLD-0001Li-Qm; Thu, 18 May 2023 11:14:55 -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=1NTOo7OuBx6ztz+onq/ia5N4OCnqHVueEnKVoEw+tIQ=; b=RwWx/dFCkoqb
 lE3+41KO+sPqDzjhLn0VDS2ZjMcZ2bi3wtIqx1B3sBInn+SVVuibQr8/tdUKkoc+O8KukC/NbTqxI
 xVQlNHi7Ng3VfCMjd23tmuPYdOkYfETZ9RVO3fS/tVOUR3U2PFMiaOKRTm9ZXjuU2VWCJDo0rPYsy
 0znD7Cc2LmnCCqHBoIX+zT5akrc3I6+TVgaaySY1Dx6cj3w0B4tzU516z50Nvh2zHL//TRqVoJjiZ
 8eBzv7xED5jlm3SgeDH4HjnPz1xYrQLFYsLjFkybzVNovGNFzogZDLiwoe4grpN2OHKeJH7neNHxP
 LHjo77F3M5hYSHRI8jpG4A==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzfLD-0006xv-Az; Thu, 18 May 2023 11:14:55 -0400
Date: Thu, 18 May 2023 18:15:06 +0300
Message-Id: <83mt21vfgl.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <iersfbtognw.fsf@HIDDEN> (message from Spencer Baugh on
 Thu, 18 May 2023 10:30:59 -0400)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN> <iersfbtognw.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: dmitry@HIDDEN, 63469 <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: Spencer Baugh <sbaugh@HIDDEN>
> Cc: Dmitry Gutov <dmitry@HIDDEN>,  63469 <at> debbugs.gnu.org
> Date: Thu, 18 May 2023 10:30:59 -0400
> 
> We could add the split menu items first and add the consolidated menu
> later if there is demand.

Didn't Juri ask for it already?




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 14:31:08 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 10:31:08 2023
Received: from localhost ([127.0.0.1]:54031 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzeep-0003t9-Pj
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 10:31:08 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:54599)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pzeem-0003sb-JV
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 10:31:06 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83h6savsz4.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 18 May
 2023 13:23:11 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
 <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
 <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
 <83h6savsz4.fsf@HIDDEN>
Date: Thu, 18 May 2023 10:30:59 -0400
Message-ID: <iersfbtognw.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: Dmitry Gutov <dmitry@HIDDEN>, 63469 <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 (-)

Eli Zaretskii <eliz@HIDDEN> writes:
>> Date: Thu, 18 May 2023 12:49:48 +0300
>> Cc: sbaugh@HIDDEN, 63469 <at> debbugs.gnu.org
>> From: Dmitry Gutov <dmitry@HIDDEN>
>> 
>> >> I think there should be either one or another. Or there will be too much
>> >> of them.
>> > 
>> > Why? what's wrong with having both?
>> 
>> I think this will be the only example of menu entries present in several 
>> submenus, won't it?
>
> I think so, yes.  But that's not a disadvantage, either.
>
>> > The advantage of having both is that these items will be more
>> > discoverable, and support both discovery through the related
>> > functionality and through Package itself.
>> 
>> My objection is not a strong one. If people really find it useful to 
>> have both, so be it. But is sounds like an overkill.
>
> Many people think menu bar in Emacs are overkill (and turn it off),
> but we disagree and provide the menu bar anyway.

We could add the split menu items first and add the consolidated menu
later if there is demand.  No reason that we have to settle the question
on whether to also have a consolidated menu now, if we're already in
agreement to at least have split menu items.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 10:23:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 06:23:09 2023
Received: from localhost ([127.0.0.1]:52120 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzamr-0005Y5-0C
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 06:23:09 -0400
Received: from eggs.gnu.org ([209.51.188.92]:37496)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzamp-0005Xs-UE
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 06:23: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 1pzamj-0005bC-7w; Thu, 18 May 2023 06:23:01 -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=BPuxaui+aNJKtcQtcevIGDc+s03Fc5PWg/SgH836wLs=; b=clXEu1ZRCo09
 dFTfQEZNc8hLy3N9Tv7z4E0RJ4ECSuA6qtAwf0FyxOhZ0N/+zmrzy+GD3sMALhDjFuqimoQ2f/xkh
 aGjx54XpvKR1o92n+VxMSMvQygaB2Ju1wy7wDKnzhFwz7zqUxI5/7wJ+0Tz7gsXCyBscMs+7v56Po
 iPeFqEUlfCVLj3ddQwkeirjE/rkyYVIEdTYzPV9Pwhif9enX4kjcGS83imqZk7sIgLDwV4NFiAZSU
 jKVGImp/Ub4v1ducHuNg/q9VHt7WAq6cA2ivxeV98Rrb5ZDlkJ0abjlY8WmY6Y/ndC15ar8NM3QqR
 sje13gUDiJo0WmkrprZWig==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzami-0002qK-OB; Thu, 18 May 2023 06:23:01 -0400
Date: Thu, 18 May 2023 13:23:11 +0300
Message-Id: <83h6savsz4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN> (message from
 Dmitry Gutov on Thu, 18 May 2023 12:49:48 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN> <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <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 (---)

> Date: Thu, 18 May 2023 12:49:48 +0300
> Cc: sbaugh@HIDDEN, 63469 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry@HIDDEN>
> 
> >> I think there should be either one or another. Or there will be too much
> >> of them.
> > 
> > Why? what's wrong with having both?
> 
> I think this will be the only example of menu entries present in several 
> submenus, won't it?

I think so, yes.  But that's not a disadvantage, either.

> > The advantage of having both is that these items will be more
> > discoverable, and support both discovery through the related
> > functionality and through Package itself.
> 
> My objection is not a strong one. If people really find it useful to 
> have both, so be it. But is sounds like an overkill.

Many people think menu bar in Emacs are overkill (and turn it off),
but we disagree and provide the menu bar anyway.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 09:50:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 05:50:04 2023
Received: from localhost ([127.0.0.1]:52107 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzaGp-0004dR-Ee
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 05:50:04 -0400
Received: from wout1-smtp.messagingengine.com ([64.147.123.24]:58635)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1pzaGl-0004cp-5N
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 05:50:02 -0400
Received: from compute6.internal (compute6.nyi.internal [10.202.2.47])
 by mailout.west.internal (Postfix) with ESMTP id 3C05D3200A1B;
 Thu, 18 May 2023 05:49:53 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute6.internal (MEProxy); Thu, 18 May 2023 05:49:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm2; t=
 1684403392; x=1684489792; bh=8/MOlBVsb7yRGh+v3Vtqcff9pLrmfxlthkv
 JRl+omtg=; b=T3JSP0RS7Ee5y5PxJpD1B92PNrtmpSSRPagaqH5YZMutRort3vq
 RNOZoLu2ltnnSG6KRNMC8+7im6h56DMjByDPdpT9E1mAZ8lWuwG8Mfi8cECizSwc
 Wyw8KO2thcEE0DgCfw9lXF4sRyggGmnKrMShYHN7j51+HZhsHgP19sol7MfnwTZQ
 iLMvT2/n7zzsA+lX0iL9r594RKGnzuzgDS9K4cnP8mDiAPcdPutD8qPQMNn8ZDYb
 Up3pSZ7y/wKLbZAYmsxZNjPAGGb7B1RDr3qeoIjgURvrCcFvB0kMfUEp6Ri3qser
 2OFZKiB+GBJqSJ6Yh0F4x1e8U2ptI5pfrDQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684403392; x=1684489792; bh=8/MOlBVsb7yRGh+v3Vtqcff9pLrmfxlthkv
 JRl+omtg=; b=XwMwyE69roGKg+IV7Mu+795d+qYVbbYuziymPJyrGP0p8lmInPr
 gRR9Km6xBw/8jZikN9SLSUQ+nL0Z12tthpQ4Sb+QKFA3415R1nciRsZup4JeyQCa
 jwlo6wUIMACFiYmnasV7VGx+7GsSs2ZxIh8/ieIItZbsHuqYZTbEaGyuonmgFu6b
 MQ0GIxF9wxIK9iAM2DMy7qaV1cb9pM/Ycnl5C1C+ugw6uqqahrE3X9GOCxJxX+tm
 LuqfvW1s6WcNJx4LYjtsmGWUxExwKkJ11TgolW2guj1qgle9EcK8NT1mZYPUbqgo
 QBOYi82MQDfajlqqlccy0gT4FAEimYwn10w==
X-ME-Sender: <xms:wPRlZBsx_wclRJ4oN2A_UQ3kDoNzHv_UL58eWXsMrzNjzi9YP9dmVQ>
 <xme:wPRlZKdGoKRaUtROvAQF23FauHa8UDaImqDjVSBBfMumXHDnMOKNtEBtdJs6yDwJy
 9AkMcMLDotr-Pyf9Rc>
X-ME-Received: <xmr:wPRlZEx3DAOSSFQLDZd4wL-rvEo4TeZr4E5yrFFf4aeUUXsyPXJJpoMJ4wGOdnI>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeeifedgvddtucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi
 thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth
 htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel
 vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hmihhtrhihsehguhhtohhvrdguvghv
X-ME-Proxy: <xmx:wPRlZIN_cKYgsfV4Nb_4AquW_72ZYjkayg4TolgKuKDVCqhSkRGVVw>
 <xmx:wPRlZB_BfVPRh2r5uYjoGFSoaJjLlyoDqPiJtvOrI8nkpuaymMgOSQ>
 <xmx:wPRlZIWwh_O4ZqY_-VkchhTHIhHl5eCugVfQXqbsRYyQic06PyZVFg>
 <xmx:wPRlZDnY-Dkn0foz3g2kC7jzrREAEEDlXMcD_ofXbTYF8-pfNaHFaw>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 18 May 2023 05:49:50 -0400 (EDT)
Message-ID: <6a3eed52-3248-74f9-bcaf-bf12660ae0ed@HIDDEN>
Date: Thu, 18 May 2023 12:49:48 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
 <83jzx6w2bg.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <83jzx6w2bg.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <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: -2.9 (--)

On 18/05/2023 10:01, Eli Zaretskii wrote:
>> Date: Thu, 18 May 2023 09:53:52 +0300
>> Cc: 63469 <at> debbugs.gnu.org
>> From: Dmitry Gutov <dmitry@HIDDEN>
>>
>> On 17/05/2023 14:30, Eli Zaretskii wrote:
>>>> From: Spencer Baugh<sbaugh@HIDDEN>
>>>> Cc:63469 <at> debbugs.gnu.org
>>>> Date: Tue, 16 May 2023 13:09:56 -0400
>>>>
>>>> Also with the bug number in the commit message.
>>> Thanks.  This LGTM, but what about Juri's suggestion to have a
>>> separate Project menu under Tools, with all these as its items?
>>
>> I think there should be either one or another. Or there will be too much
>> of them.
> 
> Why? what's wrong with having both?

I think this will be the only example of menu entries present in several 
submenus, won't it?

> these menu items aren't visible unless someone actually drops down
> their parent menu.  So they don't seem to be able to cause any
> excessive display clutter.

The same argument could be made that, if you're not using the menu at 
all (I don't), then there is no problem.

> The advantage of having both is that these items will be more
> discoverable, and support both discovery through the related
> functionality and through Package itself.

My objection is not a strong one. If people really find it useful to 
have both, so be it. But is sounds like an overkill.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 07:01:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 03:01:24 2023
Received: from localhost ([127.0.0.1]:51795 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzXdb-00088z-Q2
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 03:01:24 -0400
Received: from eggs.gnu.org ([209.51.188.92]:52404)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzXda-00088k-HZ
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 03:01: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 1pzXdQ-0005AY-OK; Thu, 18 May 2023 03:01:13 -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=6ntpqt9BLS6FOSW+oGXT6g2x30pWtxXmtRgRQOwxEwo=; b=WaF8YlG/3c1/
 8pa1HUzmHRSoBP667T0Esj+Gayr3ngQ/0q7JqAXXEr/14V0S36i67E6ORfX/JhN+mc5XoqwKwdfuT
 W7w6eorPafvxcjz+NSoa525aOhkXzFj8oHWm9PJ+/kwrhcuwlFztPMZSVpPsKDpZVKKFZw+h8aBnR
 EwRnrR8V1u8t2Lr7bmqiYqdw5aidNFSiGc5kefkd/7++0IhxNuuVdBwPUsRfI4c/BUvgou0Wy/WLE
 kLnStVrfxBuA7i25HGPZHdq/zRSlZAzOBPQXPue2W4kLf/eN2/3kH4DXRhgwWDK543jKhwXqDgVVH
 uJmJ8ZFvbr1DFlBkLeQtwQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzXdO-0007eC-V9; Thu, 18 May 2023 03:01:12 -0400
Date: Thu, 18 May 2023 10:01:23 +0300
Message-Id: <83jzx6w2bg.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN> (message from
 Dmitry Gutov on Thu, 18 May 2023 09:53:52 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN> <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <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 (---)

> Date: Thu, 18 May 2023 09:53:52 +0300
> Cc: 63469 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry@HIDDEN>
> 
> On 17/05/2023 14:30, Eli Zaretskii wrote:
> >> From: Spencer Baugh<sbaugh@HIDDEN>
> >> Cc:63469 <at> debbugs.gnu.org
> >> Date: Tue, 16 May 2023 13:09:56 -0400
> >>
> >> Also with the bug number in the commit message.
> > Thanks.  This LGTM, but what about Juri's suggestion to have a
> > separate Project menu under Tools, with all these as its items?
> 
> I think there should be either one or another. Or there will be too much 
> of them.

Why? what's wrong with having both?

these menu items aren't visible unless someone actually drops down
their parent menu.  So they don't seem to be able to cause any
excessive display clutter.

The advantage of having both is that these items will be more
discoverable, and support both discovery through the related
functionality and through Package itself.




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

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


Received: (at 63469) by debbugs.gnu.org; 18 May 2023 06:54:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 18 02:54:05 2023
Received: from localhost ([127.0.0.1]:51769 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzXWW-0007qb-Rs
	for submit <at> debbugs.gnu.org; Thu, 18 May 2023 02:54:05 -0400
Received: from wout3-smtp.messagingengine.com ([64.147.123.19]:60721)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1pzXWU-0007q4-Q7
 for 63469 <at> debbugs.gnu.org; Thu, 18 May 2023 02:54:03 -0400
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.west.internal (Postfix) with ESMTP id D6E9D3200A65;
 Thu, 18 May 2023 02:53:56 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Thu, 18 May 2023 02:53:57 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm2; t=
 1684392836; x=1684479236; bh=q/0+Eh/ykS/9HkudVbpiZ1C86lvULq09NBy
 H3oMYvwk=; b=Hyloz8hRzzmwcWuw5rgS0bYRaHcXn3ZEQmvmHKLsD9SyNBCAHyL
 4RVplEBm9NYDTP5ZYht8YlpHVEDF6XjYvkta4qEYuvGdZvuowvHyWAYiEWiXrAxb
 D4EH6XWI/fcu3bLrc5Z6L/zNltO85Euu4JhOMDgbq6B3wVs3FE785rvnoTk6S6uF
 +ub+jMwYsZRwrwMojP5gKfS+efrdr0oVwgSbMhlTSWbw68TgJ6WJi/lwRwmFZsg+
 aN5kKqid+20b0hNv8GUV2iLHsv3ZcZs6QJ3WPUahq7FdtCzQpZeXBOdX4BwEKjif
 I2x+/gXfgJbHrS0nLZ0qQ/7utEKy62DKYeA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1684392836; x=1684479236; bh=q/0+Eh/ykS/9HkudVbpiZ1C86lvULq09NBy
 H3oMYvwk=; b=q42VWOmA/hmKXNaI9zW3ov03oJmvGbdWuuB29BjF6OEJxzPASET
 +NgqVAmvMCE84w2Y4PuG7/+FrzVQM/IGTJGKPa73+3hUIIybYM3qUBnYS/WG7o0O
 K68Ajg1/fjbBIc0CTSEDacymqJRWJN5TybVk58aUDg0muwd/NGj2kzhmdEiiQZGQ
 8+7lyD2NECHK/emUYFFaMHJaUQiLctG0Te1aItOPYsiuElWnlRvz7X154BW6suio
 ErFkk9zt3iae3PheSMCTK8cvh8snjJ5FmoxrVCy6FTKzQVjq2XHUisByAiobDrad
 Nwwyn3IMWyUs6M1DTMGpMBQuJaWzLYWeOzw==
X-ME-Sender: <xms:hMtlZCccBZ5TzjvFtAUzeKyd_svPisPkRulWLGBa0FWnELlsork5ZQ>
 <xme:hMtlZMMiYu2G7Jm_C-PQO0EZSMWy1WBKCWXitLd4S-UxfwdlH0oLJzj1m9RVuTdbt
 VKzCn03yP7U61GVyhE>
X-ME-Received: <xmr:hMtlZDhXKFv_nuhXiP4wvKX0lCrtYeLX6LJU-PjS5p1EF3xNNEi5LjwZGTk1QeY>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeeivddguddugecutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:hMtlZP_eDEuV2i4o7vrgE2aA_jVZVHyZIsXu50_MDV1-BbtzqSsXUA>
 <xmx:hMtlZOvQK3agvEkjpXg89OOjSzqoraLsVHpul-QN_Xmj-Ln_XefyGA>
 <xmx:hMtlZGGy5ZG0NuTFeDrZI_Bw9vjjoeI0EasR_Fw7f8GKIACaupzCyA>
 <xmx:hMtlZDUrW2ITrBgrFE4pUR7HFOcsFLJBMgEHb3VRAKJLHn5RB2ohMw>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 18 May 2023 02:53:55 -0400 (EDT)
Message-ID: <3d97111e-794d-eeef-73b0-ee3f6f5f15d5@HIDDEN>
Date: Thu, 18 May 2023 09:53:52 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
To: Eli Zaretskii <eliz@HIDDEN>, Spencer Baugh <sbaugh@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
Content-Language: en-US
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <83sfbvxkj3.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.9 (-)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: -2.9 (--)

On 17/05/2023 14:30, Eli Zaretskii wrote:
>> From: Spencer Baugh<sbaugh@HIDDEN>
>> Cc:63469 <at> debbugs.gnu.org
>> Date: Tue, 16 May 2023 13:09:56 -0400
>>
>> Also with the bug number in the commit message.
> Thanks.  This LGTM, but what about Juri's suggestion to have a
> separate Project menu under Tools, with all these as its items?

I think there should be either one or another. Or there will be too much 
of them.




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

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


Received: (at 63469) by debbugs.gnu.org; 17 May 2023 14:50:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 17 10:50:45 2023
Received: from localhost ([127.0.0.1]:50614 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzIUG-0005zX-2r
	for submit <at> debbugs.gnu.org; Wed, 17 May 2023 10:50:45 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:39485)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pzIU5-0005z5-96
 for 63469 <at> debbugs.gnu.org; Wed, 17 May 2023 10:50:42 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83sfbvxkj3.fsf@HIDDEN> (Eli Zaretskii's message of "Wed, 17 May
 2023 14:30:24 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
 <83sfbvxkj3.fsf@HIDDEN>
Date: Wed, 17 May 2023 10:50:27 -0400
Message-ID: <ier5y8rovv0.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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 (-)

--=-=-=
Content-Type: text/plain

Eli Zaretskii <eliz@HIDDEN> writes:
>> From: Spencer Baugh <sbaugh@HIDDEN>
>> Cc: 63469 <at> debbugs.gnu.org
>> Date: Tue, 16 May 2023 13:09:56 -0400
>> 
>> Also with the bug number in the commit message.
>
> Thanks.  This LGTM, but what about Juri's suggestion to have a
> separate Project menu under Tools, with all these as its items?

Sounds reasonable to me, added.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Add-project-command-entries-to-the-menu-bar.patch

From 1f7e2b3f4fca80ed4a8958bc28501a2a75e4547d Mon Sep 17 00:00:00 2001
From: Spencer Baugh <sbaugh@HIDDEN>
Date: Mon, 15 May 2023 14:01:32 -0400
Subject: [PATCH] Add project command entries to the menu-bar

This will make it easier for new users to learn these increasingly
important and useful commands.  (Bug#63469)

* lisp/menu-bar.el (menu-bar-file-menu): Add project-dired and
project-find-file entries.
(menu-bar-search-menu): Add project-find-regexp entry.
(menu-bar-replace-menu): Add project-query-replace regexp entry.
(menu-bar-shell-commands-menu): Add project-shell entry.
(menu-bar-buffers-menu-command-entries): Add project-switch-to-buffer
and project-list-buffer entries.
(menu-bar-project-menu): Add.
(menu-bar-tools-menu): Add "Project" submenu, and also project-compile
entry and change text for compile entry.
---
 lisp/menu-bar.el | 66 +++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 63 insertions(+), 3 deletions(-)

diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index d020cf6e90a..bf3548bcf47 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -219,10 +219,18 @@ menu-bar-file-menu
       '(menu-item "Insert File..." insert-file
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Insert another file into current buffer"))
+    (bindings--define-key menu [project-dired]
+      '(menu-item "Open Root Directory Of Project..." project-dired
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read the root directory of the current project, to operate on its files"))
     (bindings--define-key menu [dired]
       '(menu-item "Open Directory..." dired
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Read a directory, to operate on its files"))
+    (bindings--define-key menu [project-open-file]
+      '(menu-item "Open File In Project..." project-find-file
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read an existing file in the current project into an Emacs buffer"))
     (bindings--define-key menu [open-file]
       '(menu-item "Open File..." menu-find-file-existing
                   :enable (menu-bar-non-minibuffer-window-p)
@@ -347,6 +355,9 @@ menu-bar-search-menu
     (bindings--define-key menu [tags-srch]
       '(menu-item "Search Tagged Files..." tags-search
                   :help "Search for a regexp in all tagged files"))
+    (bindings--define-key menu [project-search]
+      '(menu-item "Search in Project Files..." project-find-regexp
+        :help "Search for a regexp in files of the current project"))
     (bindings--define-key menu [separator-tag-search] menu-bar-separator)
 
     (bindings--define-key menu [repeat-search-back]
@@ -398,6 +409,9 @@ menu-bar-replace-menu
     (bindings--define-key menu [tags-repl]
       '(menu-item "Replace in Tagged Files..." tags-query-replace
         :help "Interactively replace a regexp in all tagged files"))
+    (bindings--define-key menu [project-replace]
+      '(menu-item "Replace in Project Files..." project-query-replace-regexp
+        :help "Interactively replace a regexp in files of the current project"))
     (bindings--define-key menu [separator-replace-tags]
       menu-bar-separator)
 
@@ -1746,6 +1760,10 @@ menu-bar-encryption-decryption-menu
 
 (defvar menu-bar-shell-commands-menu
   (let ((menu (make-sparse-keymap "Shell Commands")))
+    (bindings--define-key menu [project-interactive-shell]
+      '(menu-item "Run Shell Interactively In Project Root" project-shell
+                  :help "Run a subshell interactively, in the current project"))
+
     (bindings--define-key menu [interactive-shell]
       '(menu-item "Run Shell Interactively" shell
                   :help "Run a subshell interactively"))
@@ -1765,6 +1783,31 @@ menu-bar-shell-commands-menu
 
     menu))
 
+(defvar menu-bar-project-menu
+  (let ((menu (make-sparse-keymap "Project")))
+    (bindings--define-key menu [project-execute-extended-command] '(menu-item "Execute Extended Command..." project-execute-extended-command :help "Execute an extended command in project root"))
+    (bindings--define-key menu [project-query-replace-regexp] '(menu-item "Query Replace Regexp..." project-query-replace-regexp :help "Interactively replace a regexp in files of the current project"))
+    (bindings--define-key menu [project-or-external-find-regexp] '(menu-item "Find Regexp Including External Roots..." project-or-external-find-regexp :help "Search for a regexp in files of the current project or external files"))
+    (bindings--define-key menu [project-find-regexp] '(menu-item "Find Regexp..." project-find-regexp :help "Search for a regexp in files of the current project"))
+    (bindings--define-key menu [separator-project-search] menu-bar-separator)
+    (bindings--define-key menu [project-kill-buffers] '(menu-item "Kill Buffers..." project-kill-buffers :help "Kill the buffers belonging to the current project"))
+    (bindings--define-key menu [project-list-buffers] '(menu-item "List Buffers..." project-list-buffers :help "Pop up a window listing all Emacs buffers in the current project"))
+    (bindings--define-key menu [project-switch-to-buffer] '(menu-item "Switch To Buffer..." project-switch-to-buffer :help "Prompt for a buffer in the current project, and switch to it"))
+    (bindings--define-key menu [separator-project-buffers] menu-bar-separator)
+    (bindings--define-key menu [project-async-shell-command] '(menu-item "Async Shell Command..." project-async-shell-command :help "Invoke a shell command in project root asynchronously in background"))
+    (bindings--define-key menu [project-shell-command] '(menu-item "Shell Command..." project-shell-command :help "Invoke a shell command in project root and catch its output"))
+    (bindings--define-key menu [project-eshell] '(menu-item "Run Eshell In Project Root..." project-eshell :help "Run eshell for the current project"))
+    (bindings--define-key menu [project-shell] '(menu-item "Run Shell Interactively In Project Root" project-shell :help "Run a subshell interactively, in the current project"))
+    (bindings--define-key menu [project-compile] '(menu-item "Compile..." project-compile :help "Invoke compiler or Make for current project, view errors"))
+    (bindings--define-key menu [separator-project-programs] menu-bar-separator)
+    (bindings--define-key menu [project-switch-project] '(menu-item "Switch Project..." project-switch-project :help "Switch to another project and then run a command"))
+    (bindings--define-key menu [project-vc-dir] '(menu-item "VC Dir..." project-vc-dir :help "Show the VC status of the project repository"))
+    (bindings--define-key menu [project-dired] '(menu-item "Open Root Directory Of Project..." project-dired :help "Read the root directory of the current project, to operate on its files"))
+    (bindings--define-key menu [project-find-dir] '(menu-item "Open Directory..." project-find-dir :help "Open an existing directory in the current project"))
+    (bindings--define-key menu [project-or-external-find-file] '(menu-item "Open File Including External Roots..." project-or-external-find-file :help "Open an existing file in the current project or its external roots"))
+    (bindings--define-key menu [project-open-file] '(menu-item "Open File..." project-find-file :help "Open an existing file in the current project"))
+    menu))
+
 (defun menu-bar-read-mail ()
   "Read mail using `read-mail-command'."
   (interactive)
@@ -1851,6 +1894,9 @@ menu-bar-tools-menu
       '(menu-item "Language Server Support (Eglot)" eglot
                   :help "Start language server suitable for this buffer's major-mode"))
 
+    (bindings--define-key menu [project]
+      `(menu-item "Project" ,menu-bar-project-menu))
+
     (bindings--define-key menu [ede]
       '(menu-item "Project Support (EDE)"
                   global-ede-mode
@@ -1860,9 +1906,13 @@ menu-bar-tools-menu
     (bindings--define-key menu [gdb]
       '(menu-item "Debugger (GDB)..." gdb
                   :help "Debug a program from within Emacs with GDB"))
+    (bindings--define-key menu [project-compile]
+      '(menu-item "Compile Project..." project-compile
+                  :help "Invoke compiler or Make for current project, view errors"))
+
     (bindings--define-key menu [compile]
-      '(menu-item "Compile..." compile
-                  :help "Invoke compiler or Make, view compilation errors"))
+      '(menu-item "Compile Buffer Directory..." compile
+                  :help "Invoke compiler or Make in current buffer's directory, view errors"))
 
     (bindings--define-key menu [shell-commands]
       `(menu-item "Shell Commands"
@@ -2347,7 +2397,17 @@ menu-bar-buffers-menu-command-entries
 	      'menu-item
 	      "List All Buffers"
 	      'list-buffers
-	      :help "Pop up a window listing all Emacs buffers"))
+	      :help "Pop up a window listing all Emacs buffers")
+	(list 'select-buffer-in-project
+	      'menu-item
+	      "Select Buffer In Project..."
+	      'project-switch-to-buffer
+	      :help "Prompt for a buffer in the current project, and switch to it")
+	(list 'list-buffers-in-project
+	      'menu-item
+	      "List Buffers In Project..."
+	      'project-list-buffers
+	      :help "Pop up a window listing all Emacs buffers in the current project"))
   "Entries to be included at the end of the \"Buffers\" menu.")
 
 (defvar menu-bar-select-buffer-function 'switch-to-buffer
-- 
2.30.2


--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 17 May 2023 11:30:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 17 07:30:25 2023
Received: from localhost ([127.0.0.1]:49142 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pzFMP-0001hf-0O
	for submit <at> debbugs.gnu.org; Wed, 17 May 2023 07:30:25 -0400
Received: from eggs.gnu.org ([209.51.188.92]:39606)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pzFMM-0001KA-Ae
 for 63469 <at> debbugs.gnu.org; Wed, 17 May 2023 07:30:23 -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 1pzFME-0003uN-Ug; Wed, 17 May 2023 07:30:15 -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=7WQSLV5Zkb5S+GbL3qQ9I0UL8EeudNnzYMOr30HseN4=; b=d0o4fcHy7pSz
 W4Fyy8sYvTLrSbZfz0Y6EpZJseoDH2yVz+Qi3Qvfz5IMUaLqFO0pq2DLquNEWXctjgRHHhfx3TMtV
 7GWr8ZMGkge2Kkt1byY/rvO7hgan3R88riMu/nE086P4kmWFv4+XYp+XbBGyZ8o5YMH3TV0LRrKr1
 oM0GjUKycqdkEwDmfsMuM3mpk2l4SMB4mNYhH1jlRFK+XZIPnWG5mDphRVaDre5shsTROle7vVFJ+
 /lbimVZQtvA4FxWh/IYfsl3/nd2FAPXy8dkREoLFjHgnHk86l1VIHZR/OeW7vm+wTXC3RXZsyLLKr
 wThgLwnHtYIVfFhhmQrpPg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pzFME-0005J1-E6; Wed, 17 May 2023 07:30:14 -0400
Date: Wed, 17 May 2023 14:30:24 +0300
Message-Id: <83sfbvxkj3.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <iermt24p5i3.fsf@HIDDEN> (message from Spencer Baugh on
 Tue, 16 May 2023 13:09:56 -0400)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN> <iermt24p5i3.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 63469 <at> debbugs.gnu.org
> Date: Tue, 16 May 2023 13:09:56 -0400
> 
> Also with the bug number in the commit message.

Thanks.  This LGTM, but what about Juri's suggestion to have a
separate Project menu under Tools, with all these as its items?




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

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


Received: (at 63469) by debbugs.gnu.org; 16 May 2023 17:10:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 16 13:10:03 2023
Received: from localhost ([127.0.0.1]:47315 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pyyBX-0007jI-9T
	for submit <at> debbugs.gnu.org; Tue, 16 May 2023 13:10:03 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:39097)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pyyBV-0007ik-GB
 for 63469 <at> debbugs.gnu.org; Tue, 16 May 2023 13:10:02 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <83o7mkz2ap.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 16 May
 2023 19:09:02 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
 <83o7mkz2ap.fsf@HIDDEN>
Date: Tue, 16 May 2023 13:09:56 -0400
Message-ID: <iermt24p5i3.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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 (-)

--=-=-=
Content-Type: text/plain


Also with the bug number in the commit message.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Add-project-command-entries-to-the-menu-bar.patch

From 6cbc09fbdeeb12b039c1b3bca391c1b3acb9232a Mon Sep 17 00:00:00 2001
From: Spencer Baugh <sbaugh@HIDDEN>
Date: Mon, 15 May 2023 14:01:32 -0400
Subject: [PATCH] Add project command entries to the menu-bar

This will make it easier for new users to learn these increasingly
important and useful commands.  (Bug#63469)

* lisp/menu-bar.el (menu-bar-file-menu): Add project-dired and
project-find-file entries.
(menu-bar-search-menu): Add project-find-regexp entry.
(menu-bar-replace-menu): Add project-query-replace regexp entry.
(menu-bar-shell-commands-menu): Add project-shell entry.
(menu-bar-buffers-menu-command-entries): Add project-switch-to-buffer
and project-list-buffer entries.
(menu-bar-tools-menu): Add project-compile entry and change text for
compile entry.
---
 lisp/menu-bar.el | 38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)

diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index d020cf6e90a..ae806dadbd1 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -219,10 +219,18 @@ menu-bar-file-menu
       '(menu-item "Insert File..." insert-file
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Insert another file into current buffer"))
+    (bindings--define-key menu [project-dired]
+      '(menu-item "Open Root Directory Of Project..." project-dired
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read the root directory of the current project, to operate on its files"))
     (bindings--define-key menu [dired]
       '(menu-item "Open Directory..." dired
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Read a directory, to operate on its files"))
+    (bindings--define-key menu [project-open-file]
+      '(menu-item "Open File In Project..." project-find-file
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read an existing file in the current project into an Emacs buffer"))
     (bindings--define-key menu [open-file]
       '(menu-item "Open File..." menu-find-file-existing
                   :enable (menu-bar-non-minibuffer-window-p)
@@ -347,6 +355,9 @@ menu-bar-search-menu
     (bindings--define-key menu [tags-srch]
       '(menu-item "Search Tagged Files..." tags-search
                   :help "Search for a regexp in all tagged files"))
+    (bindings--define-key menu [project-search]
+      '(menu-item "Search in Project Files..." project-find-regexp
+        :help "Search for a regexp in files of the current project"))
     (bindings--define-key menu [separator-tag-search] menu-bar-separator)
 
     (bindings--define-key menu [repeat-search-back]
@@ -398,6 +409,9 @@ menu-bar-replace-menu
     (bindings--define-key menu [tags-repl]
       '(menu-item "Replace in Tagged Files..." tags-query-replace
         :help "Interactively replace a regexp in all tagged files"))
+    (bindings--define-key menu [project-replace]
+      '(menu-item "Replace in Project Files..." project-query-replace-regexp
+        :help "Interactively replace a regexp in files of the current project"))
     (bindings--define-key menu [separator-replace-tags]
       menu-bar-separator)
 
@@ -1746,6 +1760,10 @@ menu-bar-encryption-decryption-menu
 
 (defvar menu-bar-shell-commands-menu
   (let ((menu (make-sparse-keymap "Shell Commands")))
+    (bindings--define-key menu [project-interactive-shell]
+      '(menu-item "Run Shell Interactively In Project Root" project-shell
+                  :help "Run a subshell interactively, in the current project"))
+
     (bindings--define-key menu [interactive-shell]
       '(menu-item "Run Shell Interactively" shell
                   :help "Run a subshell interactively"))
@@ -1860,9 +1878,13 @@ menu-bar-tools-menu
     (bindings--define-key menu [gdb]
       '(menu-item "Debugger (GDB)..." gdb
                   :help "Debug a program from within Emacs with GDB"))
+    (bindings--define-key menu [project-compile]
+      '(menu-item "Compile Project..." project-compile
+                  :help "Invoke compiler or Make for current project, view errors"))
+
     (bindings--define-key menu [compile]
-      '(menu-item "Compile..." compile
-                  :help "Invoke compiler or Make, view compilation errors"))
+      '(menu-item "Compile Buffer Directory..." compile
+                  :help "Invoke compiler or Make in current buffer's directory, view errors"))
 
     (bindings--define-key menu [shell-commands]
       `(menu-item "Shell Commands"
@@ -2347,7 +2369,17 @@ menu-bar-buffers-menu-command-entries
 	      'menu-item
 	      "List All Buffers"
 	      'list-buffers
-	      :help "Pop up a window listing all Emacs buffers"))
+	      :help "Pop up a window listing all Emacs buffers")
+	(list 'select-buffer-in-project
+	      'menu-item
+	      "Select Buffer In Project..."
+	      'project-switch-to-buffer
+	      :help "Prompt for a buffer in the current project, and switch to it")
+	(list 'list-buffers-in-project
+	      'menu-item
+	      "List Buffers In Project..."
+	      'project-list-buffers
+	      :help "Pop up a window listing all Emacs buffers in the current project"))
   "Entries to be included at the end of the \"Buffers\" menu.")
 
 (defvar menu-bar-select-buffer-function 'switch-to-buffer
-- 
2.30.2


--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 16 May 2023 16:09:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 16 12:09:04 2023
Received: from localhost ([127.0.0.1]:47093 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pyxEW-0005uF-Dl
	for submit <at> debbugs.gnu.org; Tue, 16 May 2023 12:09:04 -0400
Received: from eggs.gnu.org ([209.51.188.92]:56874)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pyxES-0005tk-IJ
 for 63469 <at> debbugs.gnu.org; Tue, 16 May 2023 12:09:02 -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 1pyxEM-00073F-Oo; Tue, 16 May 2023 12:08:54 -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=Ho/xNlzBbkQ4yaGdbAyvQMoFMWBgE3m2yYRvlVV0sHI=; b=XfrsxleDNqAt
 h76tB4CJxQ2fpO6nUxvvCwAMTmQ9WMsTfg0tnfgRLkBISyzLXhjS1i/1HCPAWSnwbjcIUQRbo/AEw
 rs2Knvd8GtJ/xp8KIcA3uNiGC/Ycn49qoNycQf8mZbbDd/hqMVJm7nQhxZ1YucThCp0ikw2ky7QTZ
 lsvQol82Twqkyg1FZd1fHYPKMxjO840NpFRRgvTTsTdXqel6RFbuOI+UCR/dADKo/Hl3nWqx7QsqX
 rvYWN0EIhD7yJmXRRgkkIlQo1GGMro/4lcJ+qzVATuKKdRtP2HenOC4BA4PSdc9fxLsIfqmLiV5Aj
 FwNgR0RCjIdqZvXJRKC7XA==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pyxEM-00072C-5S; Tue, 16 May 2023 12:08:54 -0400
Date: Tue, 16 May 2023 19:09:02 +0300
Message-Id: <83o7mkz2ap.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ierwn19ph50.fsf@HIDDEN> (message from Spencer Baugh on
 Mon, 15 May 2023 14:46:19 -0400)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN> <ierwn19ph50.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 63469 <at> debbugs.gnu.org
> Date: Mon, 15 May 2023 14:46:19 -0400
> 
> >> +      '(menu-item "Compile Current Directory..." compile
> >> +                  :help "Invoke compiler or Make in current directory, view compilation errors"))
> >
> > What is a "current directory" when you are talking about Emacs?
> 
> I usually think of the default-directory of the current buffer as the
> "current directory".  But maybe that's not the terminology we want to
> use?  How about "Compile Buffer" with help text "[...] in directory of
> current buffer [...]"?

I'd suggest

   Invoke compiler or Make in current buffer's directory, view errors




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 18:46:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 14:46:29 2023
Received: from localhost ([127.0.0.1]:44406 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pydDI-0002fv-Nk
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 14:46:29 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:49849)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pydDE-0002fc-Ni
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 14:46:27 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <834jod1lvc.fsf@HIDDEN> (Eli Zaretskii's message of "Mon, 15 May
 2023 21:37:59 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
 <834jod1lvc.fsf@HIDDEN>
Date: Mon, 15 May 2023 14:46:19 -0400
Message-ID: <ierwn19ph50.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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 (-)

--=-=-=
Content-Type: text/plain

Eli Zaretskii <eliz@HIDDEN> writes:
>> From: Spencer Baugh <sbaugh@HIDDEN>
>> Date: Mon, 15 May 2023 14:11:08 -0400
>> 
>> The attached patch resolves this.  There's also a slight tweak to the
>> text of the menu entry for "Compile" to make it clearer that "compile"
>> runs in CWD, where as "project-compile" runs on the current project.
>> Otherwise I think it would be slightly confusing.
>
> Thanks.
>
>>  (defvar menu-bar-shell-commands-menu
>>    (let ((menu (make-sparse-keymap "Shell Commands")))
>> +    (bindings--define-key menu [project-interactive-shell]
>> +      '(menu-item "Run Shell Interactively In Project" project-shell
>> +                  :help "Run a subshell interactively, in the current project"))
>
> What does it mean to "run a shell in the current project"?  A shell
> doesn't run in a project.  Maybe you meant in the project's root
> directory?

Yes, changed to "In Project Root".

>> +    (bindings--define-key menu [project-compile]
>> +      '(menu-item "Compile Project..." project-compile
>> +                  :help "Invoke compiler or Make for current project, view compilation errors"))
>
> This tool-tip text is too long.  Maybe drop the "compilation" part.

Dropped.

>> +      '(menu-item "Compile Current Directory..." compile
>> +                  :help "Invoke compiler or Make in current directory, view compilation errors"))
>
> What is a "current directory" when you are talking about Emacs?

I usually think of the default-directory of the current buffer as the
"current directory".  But maybe that's not the terminology we want to
use?  How about "Compile Buffer" with help text "[...] in directory of
current buffer [...]"?

>> +	(list 'select-buffer-in-project
>> +	      'menu-item
>> +	      "Select Buffer In Project..."
>> +	      'project-switch-to-buffer
>> +	      :help "Prompt for a buffer name in the current project, and select that buffer in the current window")
>
> This tool-tip text is _way_ too long.

Shrunk.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Add-project-command-entries-to-the-menu-bar.patch

From ac0e09e9a33fc6235d1638df4f1e5ede7d9dbd32 Mon Sep 17 00:00:00 2001
From: Spencer Baugh <sbaugh@HIDDEN>
Date: Mon, 15 May 2023 14:01:32 -0400
Subject: [PATCH] Add project command entries to the menu-bar

* lisp/menu-bar.el (menu-bar-file-menu): Add project-dired and
project-find-file entries.
(menu-bar-search-menu): Add project-find-regexp entry.
(menu-bar-replace-menu): Add project-query-replace regexp entry.
(menu-bar-shell-commands-menu): Add project-shell entry.
(menu-bar-buffers-menu-command-entries): Add project-switch-to-buffer
and project-list-buffer entries.
(menu-bar-tools-menu): Add project-compile entry and change text for
compile entry.
---
 lisp/menu-bar.el | 38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)

diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index d020cf6e90a..1f66ea85ecd 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -219,10 +219,18 @@ menu-bar-file-menu
       '(menu-item "Insert File..." insert-file
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Insert another file into current buffer"))
+    (bindings--define-key menu [project-dired]
+      '(menu-item "Open Root Directory Of Project..." project-dired
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read the root directory of the current project, to operate on its files"))
     (bindings--define-key menu [dired]
       '(menu-item "Open Directory..." dired
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Read a directory, to operate on its files"))
+    (bindings--define-key menu [project-open-file]
+      '(menu-item "Open File In Project..." project-find-file
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read an existing file in the current project into an Emacs buffer"))
     (bindings--define-key menu [open-file]
       '(menu-item "Open File..." menu-find-file-existing
                   :enable (menu-bar-non-minibuffer-window-p)
@@ -347,6 +355,9 @@ menu-bar-search-menu
     (bindings--define-key menu [tags-srch]
       '(menu-item "Search Tagged Files..." tags-search
                   :help "Search for a regexp in all tagged files"))
+    (bindings--define-key menu [project-search]
+      '(menu-item "Search in Project Files..." project-find-regexp
+        :help "Search for a regexp in files of the current project"))
     (bindings--define-key menu [separator-tag-search] menu-bar-separator)
 
     (bindings--define-key menu [repeat-search-back]
@@ -398,6 +409,9 @@ menu-bar-replace-menu
     (bindings--define-key menu [tags-repl]
       '(menu-item "Replace in Tagged Files..." tags-query-replace
         :help "Interactively replace a regexp in all tagged files"))
+    (bindings--define-key menu [project-replace]
+      '(menu-item "Replace in Project Files..." project-query-replace-regexp
+        :help "Interactively replace a regexp in files of the current project"))
     (bindings--define-key menu [separator-replace-tags]
       menu-bar-separator)
 
@@ -1746,6 +1760,10 @@ menu-bar-encryption-decryption-menu
 
 (defvar menu-bar-shell-commands-menu
   (let ((menu (make-sparse-keymap "Shell Commands")))
+    (bindings--define-key menu [project-interactive-shell]
+      '(menu-item "Run Shell Interactively In Project Root" project-shell
+                  :help "Run a subshell interactively, in the current project"))
+
     (bindings--define-key menu [interactive-shell]
       '(menu-item "Run Shell Interactively" shell
                   :help "Run a subshell interactively"))
@@ -1860,9 +1878,13 @@ menu-bar-tools-menu
     (bindings--define-key menu [gdb]
       '(menu-item "Debugger (GDB)..." gdb
                   :help "Debug a program from within Emacs with GDB"))
+    (bindings--define-key menu [project-compile]
+      '(menu-item "Compile Project..." project-compile
+                  :help "Invoke compiler or Make for current project, view errors"))
+
     (bindings--define-key menu [compile]
-      '(menu-item "Compile..." compile
-                  :help "Invoke compiler or Make, view compilation errors"))
+      '(menu-item "Compile Buffer..." compile
+                  :help "Invoke compiler or Make in directory of this buffer, view errors"))
 
     (bindings--define-key menu [shell-commands]
       `(menu-item "Shell Commands"
@@ -2347,7 +2369,17 @@ menu-bar-buffers-menu-command-entries
 	      'menu-item
 	      "List All Buffers"
 	      'list-buffers
-	      :help "Pop up a window listing all Emacs buffers"))
+	      :help "Pop up a window listing all Emacs buffers")
+	(list 'select-buffer-in-project
+	      'menu-item
+	      "Select Buffer In Project..."
+	      'project-switch-to-buffer
+	      :help "Prompt for a buffer in the current project, and switch to it")
+	(list 'list-buffers-in-project
+	      'menu-item
+	      "List Buffers In Project..."
+	      'project-list-buffers
+	      :help "Pop up a window listing all Emacs buffers in the current project"))
   "Entries to be included at the end of the \"Buffers\" menu.")
 
 (defvar menu-bar-select-buffer-function 'switch-to-buffer
-- 
2.30.2


--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 18:38:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 14:38:04 2023
Received: from localhost ([127.0.0.1]:44395 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pyd59-0002Sv-LB
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 14:38:03 -0400
Received: from eggs.gnu.org ([209.51.188.92]:53406)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pyd56-0002SP-5J
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 14:38:03 -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 1pyd50-0004bl-R4; Mon, 15 May 2023 14:37:54 -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=KlHUm/p1iMx/x/z9743bxMrql/SPbSabhGEwZybosCY=; b=eNfNnMYJ1NzY
 xKELFXE/i/vqrh2oynmYnIYfhiHIgiY5hH4S8mg3FWV3ZvPv443tmQ6RgHuPk8Sh5sLcGbWBjKwvW
 y23lfnD1WTk5lufmJzTCqDnE1ejX+Bv6GLxZuwsSXy84bV0ju0aRSW1Qly6YIEP0kyk0zr2YA2hmW
 S+1q3YeHEZSP9DaGJLTd8fagGhYonB65r0QSvpBdMCw2itx0jyjUsVjGLnMAyyaQFo0MEoyrboxfC
 JrcFBDDRUhVq5bxEO55+tEtlvFGeUN6hctuyX0BkYPkvDtL31l6/P9n4TN+BQE7okoGEtGjjMX5bB
 lT5t/7KcxOtkleTXSiL0CA==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pyd4z-00012p-Gt; Mon, 15 May 2023 14:37:54 -0400
Date: Mon, 15 May 2023 21:37:59 +0300
Message-Id: <834jod1lvc.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ier353xqxc3.fsf@HIDDEN> (message from Spencer Baugh on
 Mon, 15 May 2023 14:11:08 -0400)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <ier353xqxc3.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: Spencer Baugh <sbaugh@HIDDEN>
> Date: Mon, 15 May 2023 14:11:08 -0400
> 
> The attached patch resolves this.  There's also a slight tweak to the
> text of the menu entry for "Compile" to make it clearer that "compile"
> runs in CWD, where as "project-compile" runs on the current project.
> Otherwise I think it would be slightly confusing.

Thanks.

>  (defvar menu-bar-shell-commands-menu
>    (let ((menu (make-sparse-keymap "Shell Commands")))
> +    (bindings--define-key menu [project-interactive-shell]
> +      '(menu-item "Run Shell Interactively In Project" project-shell
> +                  :help "Run a subshell interactively, in the current project"))

What does it mean to "run a shell in the current project"?  A shell
doesn't run in a project.  Maybe you meant in the project's root
directory?

> +    (bindings--define-key menu [project-compile]
> +      '(menu-item "Compile Project..." project-compile
> +                  :help "Invoke compiler or Make for current project, view compilation errors"))

This tool-tip text is too long.  Maybe drop the "compilation" part.

> +      '(menu-item "Compile Current Directory..." compile
> +                  :help "Invoke compiler or Make in current directory, view compilation errors"))

What is a "current directory" when you are talking about Emacs?

> +	(list 'select-buffer-in-project
> +	      'menu-item
> +	      "Select Buffer In Project..."
> +	      'project-switch-to-buffer
> +	      :help "Prompt for a buffer name in the current project, and select that buffer in the current window")

This tool-tip text is _way_ too long.




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 18:19:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 14:19:35 2023
Received: from localhost ([127.0.0.1]:44340 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pycnH-0001xJ-1O
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 14:19:35 -0400
Received: from eggs.gnu.org ([209.51.188.92]:46068)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pycnB-0001x1-OU
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 14:19:33 -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 1pycn6-0008R1-9N; Mon, 15 May 2023 14:19:24 -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=+6krq+wvPTESCntYYnzFyUn8na6HjufIESu6WPYNiYQ=; b=KzKACNNW3WMz
 9rT6CjxU/CA43w0lZPYgTco3bfCbg0jq6i8zYmses1aAXpLbx3+bbVa7HDk6HOUs9CfuwZeVaLcAM
 LWMEYrr9qEmXODbrAargwuVtNhZxubo1DPVYnqlvVNd+zIJtmIReqkN8sJy4yV7sfp3xhLJQUaKV/
 5qbiVikFJJBxZL7GHeFk9FYUNmvQldwxhuEJKxrSKzEsC6Xg35DO97Z0r1aUIFaD6lUhiIHAMvquT
 3zyFraWviwf8UwxGUvdePQNo3eOlELxCmMdkVLFbeyiU+STUZaVeJBeLfcO3UliNb89jQuiio8NLk
 FbXFA7ziF/Kg7VKcQbsvvQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pycn5-0001sX-OJ; Mon, 15 May 2023 14:19:24 -0400
Date: Mon, 15 May 2023 21:19:27 +0300
Message-Id: <83a5y51mq8.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86a5y5leuw.fsf@HIDDEN> (message from Juri Linkov on
 Mon, 15 May 2023 19:49:11 +0300)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN> <86a5y5leuw.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: sbaugh@HIDDEN, 63469 <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: 63469 <at> debbugs.gnu.org
> From: Juri Linkov <juri@HIDDEN>
> Date: Mon, 15 May 2023 19:49:11 +0300
> 
> > Some proposed additions:
> > - File, "Open File In Project",
> >   project-find-file
> > - Edit -> Search, "Search Files In Project",
> >   project-find-regexp
> > - Edit -> Replace, "Replace Regexp In Project",
> >   project-query-replace-regexp
> > - Tools -> Shell Commands, "Run Shell Interactively In Project",
> >   project-shell
> > - Buffers, "Select Buffer In Project",
> >   project-switch-to-buffer
> 
> OTOH, when project menu entries are grouped under a single submenu,
> it would easier to use them, including context menus, etc.

These are not exclusive alternatives, we could have both a separate
menu and individual items in other menus.




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 18:16:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 14:16:05 2023
Received: from localhost ([127.0.0.1]:44334 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pycjt-0001sS-Fi
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 14:16:05 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:35747)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pycjr-0001ri-QC
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 14:16:04 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <86a5y5leuw.fsf@HIDDEN> (Juri Linkov's message of "Mon, 
 15 May 2023 19:49:11 +0300")
References: <iercz35fnkw.fsf@HIDDEN> <86a5y5leuw.fsf@HIDDEN>
Date: Mon, 15 May 2023 14:15:58 -0400
Message-ID: <ierzg65pijl.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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 (-)

Juri Linkov <juri@HIDDEN> writes:
>> Some proposed additions:
>> - File, "Open File In Project",
>>   project-find-file
>> - Edit -> Search, "Search Files In Project",
>>   project-find-regexp
>> - Edit -> Replace, "Replace Regexp In Project",
>>   project-query-replace-regexp
>> - Tools -> Shell Commands, "Run Shell Interactively In Project",
>>   project-shell
>> - Buffers, "Select Buffer In Project",
>>   project-switch-to-buffer
>
> OTOH, when project menu entries are grouped under a single submenu,
> it would easier to use them, including context menus, etc.

Both approaches have their own merits.  Putting the project commands
next to the non-project equivalents in the menus makes them easier to
find for users who don't already know about them, which I think is one
of the main points of the menu bar.

And, considering that both approaches have their own merits, I'll note
that we already one "single submenu" for project commands: The C-x p
prefix, which groups all the project commands together, and that's what
an experienced user is likely to use.  Taking the other approach in the
menu bar lets us get the best of both words.




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 18:11:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 14:11:19 2023
Received: from localhost ([127.0.0.1]:44329 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pycfG-0001l3-JM
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 14:11:19 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:44019)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pycfB-0001kn-UC
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 14:11:17 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: 63469 <at> debbugs.gnu.org
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <iercz35fnkw.fsf@HIDDEN> (Spencer Baugh's message of
 "Fri, 12 May 2023 13:48:15 -0400")
References: <iercz35fnkw.fsf@HIDDEN>
Date: Mon, 15 May 2023 14:11:08 -0400
Message-ID: <ier353xqxc3.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63469
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 (-)

--=-=-=
Content-Type: text/plain


The attached patch resolves this.  There's also a slight tweak to the
text of the menu entry for "Compile" to make it clearer that "compile"
runs in CWD, where as "project-compile" runs on the current project.
Otherwise I think it would be slightly confusing.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Add-project-command-entries-to-the-menu-bar.patch

From bd5d6d53da5e26cfd7fd40bcd0219ece5fd5b702 Mon Sep 17 00:00:00 2001
From: Spencer Baugh <sbaugh@HIDDEN>
Date: Mon, 15 May 2023 14:01:32 -0400
Subject: [PATCH] Add project command entries to the menu-bar

* lisp/menu-bar.el (menu-bar-file-menu): Add project-dired and
project-find-file entries.
(menu-bar-search-menu): Add project-find-regexp entry.
(menu-bar-replace-menu): Add project-query-replace regexp entry.
(menu-bar-shell-commands-menu): Add project-shell entry.
(menu-bar-buffers-menu-command-entries): Add project-switch-to-buffer
and project-list-buffer entries.
(menu-bar-tools-menu): Add project-compile entry and change text for
compile entry.
---
 lisp/menu-bar.el | 38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)

diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index d020cf6e90a..e5784519c49 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -219,10 +219,18 @@ menu-bar-file-menu
       '(menu-item "Insert File..." insert-file
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Insert another file into current buffer"))
+    (bindings--define-key menu [project-dired]
+      '(menu-item "Open Root Directory Of Project..." project-dired
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read the root directory of the current project, to operate on its files"))
     (bindings--define-key menu [dired]
       '(menu-item "Open Directory..." dired
                   :enable (menu-bar-non-minibuffer-window-p)
                   :help "Read a directory, to operate on its files"))
+    (bindings--define-key menu [project-open-file]
+      '(menu-item "Open File In Project..." project-find-file
+                  :enable (menu-bar-non-minibuffer-window-p)
+                  :help "Read an existing file in the current project into an Emacs buffer"))
     (bindings--define-key menu [open-file]
       '(menu-item "Open File..." menu-find-file-existing
                   :enable (menu-bar-non-minibuffer-window-p)
@@ -347,6 +355,9 @@ menu-bar-search-menu
     (bindings--define-key menu [tags-srch]
       '(menu-item "Search Tagged Files..." tags-search
                   :help "Search for a regexp in all tagged files"))
+    (bindings--define-key menu [project-search]
+      '(menu-item "Search in Project Files..." project-find-regexp
+        :help "Search for a regexp in files of the current project"))
     (bindings--define-key menu [separator-tag-search] menu-bar-separator)
 
     (bindings--define-key menu [repeat-search-back]
@@ -395,6 +406,9 @@ menu-bar-replace-menu
                   :enable (and (featurep 'fileloop)
                                (not (eq fileloop--operate-function 'ignore)))
                   :help "Continue last tags replace operation"))
+    (bindings--define-key menu [project-replace]
+      '(menu-item "Replace in Project Files..." project-query-replace-regexp
+        :help "Interactively replace a regexp in files of the current project"))
     (bindings--define-key menu [tags-repl]
       '(menu-item "Replace in Tagged Files..." tags-query-replace
         :help "Interactively replace a regexp in all tagged files"))
@@ -1746,6 +1760,10 @@ menu-bar-encryption-decryption-menu
 
 (defvar menu-bar-shell-commands-menu
   (let ((menu (make-sparse-keymap "Shell Commands")))
+    (bindings--define-key menu [project-interactive-shell]
+      '(menu-item "Run Shell Interactively In Project" project-shell
+                  :help "Run a subshell interactively, in the current project"))
+
     (bindings--define-key menu [interactive-shell]
       '(menu-item "Run Shell Interactively" shell
                   :help "Run a subshell interactively"))
@@ -1860,9 +1878,13 @@ menu-bar-tools-menu
     (bindings--define-key menu [gdb]
       '(menu-item "Debugger (GDB)..." gdb
                   :help "Debug a program from within Emacs with GDB"))
+    (bindings--define-key menu [project-compile]
+      '(menu-item "Compile Project..." project-compile
+                  :help "Invoke compiler or Make for current project, view compilation errors"))
+
     (bindings--define-key menu [compile]
-      '(menu-item "Compile..." compile
-                  :help "Invoke compiler or Make, view compilation errors"))
+      '(menu-item "Compile Current Directory..." compile
+                  :help "Invoke compiler or Make in current directory, view compilation errors"))
 
     (bindings--define-key menu [shell-commands]
       `(menu-item "Shell Commands"
@@ -2347,7 +2369,17 @@ menu-bar-buffers-menu-command-entries
 	      'menu-item
 	      "List All Buffers"
 	      'list-buffers
-	      :help "Pop up a window listing all Emacs buffers"))
+	      :help "Pop up a window listing all Emacs buffers")
+	(list 'select-buffer-in-project
+	      'menu-item
+	      "Select Buffer In Project..."
+	      'project-switch-to-buffer
+	      :help "Prompt for a buffer name in the current project, and select that buffer in the current window")
+	(list 'list-buffers-in-project
+	      'menu-item
+	      "List Buffers In Project..."
+	      'project-list-buffers
+	      :help "Pop up a window listing all Emacs buffers in the current project"))
   "Entries to be included at the end of the \"Buffers\" menu.")
 
 (defvar menu-bar-select-buffer-function 'switch-to-buffer
-- 
2.30.2


--=-=-=--




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

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


Received: (at 63469) by debbugs.gnu.org; 15 May 2023 17:05:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 15 13:05:34 2023
Received: from localhost ([127.0.0.1]:44254 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pybde-0005tW-4q
	for submit <at> debbugs.gnu.org; Mon, 15 May 2023 13:05:34 -0400
Received: from relay5-d.mail.gandi.net ([217.70.183.197]:55159)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1pybdb-0005t2-71
 for 63469 <at> debbugs.gnu.org; Mon, 15 May 2023 13:05:33 -0400
Received: (Authenticated sender: juri@HIDDEN)
 by mail.gandi.net (Postfix) with ESMTPSA id 6DA451C0007;
 Mon, 15 May 2023 17:05:24 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
In-Reply-To: <iercz35fnkw.fsf@HIDDEN> (Spencer Baugh's message of
 "Fri, 12 May 2023 13:48:15 -0400")
Organization: LINKOV.NET
References: <iercz35fnkw.fsf@HIDDEN>
Date: Mon, 15 May 2023 19:49:11 +0300
Message-ID: <86a5y5leuw.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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.7 (-)

> Some proposed additions:
> - File, "Open File In Project",
>   project-find-file
> - Edit -> Search, "Search Files In Project",
>   project-find-regexp
> - Edit -> Replace, "Replace Regexp In Project",
>   project-query-replace-regexp
> - Tools -> Shell Commands, "Run Shell Interactively In Project",
>   project-shell
> - Buffers, "Select Buffer In Project",
>   project-switch-to-buffer

OTOH, when project menu entries are grouped under a single submenu,
it would easier to use them, including context menus, etc.




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

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


Received: (at 63469) by debbugs.gnu.org; 12 May 2023 19:25:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 12 15:25:10 2023
Received: from localhost ([127.0.0.1]:33176 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pxYO6-0004Y3-DX
	for submit <at> debbugs.gnu.org; Fri, 12 May 2023 15:25:10 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:60797)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <dmitry@HIDDEN>) id 1pxYO4-0004Xm-Aj
 for 63469 <at> debbugs.gnu.org; Fri, 12 May 2023 15:25:08 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 492135C0493;
 Fri, 12 May 2023 15:25:03 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Fri, 12 May 2023 15:25:03 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to; s=fm2; t=
 1683919503; x=1684005903; bh=gLXsHDR0NfYSAghYhImsiwsBlQHZtpws4G6
 uVce8X+I=; b=Ila49ktkMmQMJUNzKGcGRdoc6R6oM1e34b0UArplq/2oWXarjtn
 CNdLdzBk9bPxjneb79LNZ+ZgnxjwgzV9RMYEqivuGOr8pdEEPx2Pz/j/TUIH43EF
 oi6zEMfwiWMlUHojvurnNa/gG92bboFGVk5EbbRUe14TdYf1oZtUWNyiQ+g+KYEz
 oVf1nYQNWMx1/M3oKGfoB2QZPYHoXqZzWqX9lZ20Vn4a+O17AYboLVjXZHRZugpG
 c+xUOCqLjXsgxLAdMiQ2MoBRwwq2JOimDG601LHFD12zP97YXTj+1six1Fffk53s
 SGuyLDQH7l0oUzemI2nu3cSqxF/XIMhVXqw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:sender:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1683919503; x=1684005903; bh=gLXsHDR0NfYSAghYhImsiwsBlQHZtpws4G6
 uVce8X+I=; b=IcLIaQc4KgzT9nN+CdOr12fFgavr9Y7IzFTR4hithcjW/88LR/7
 p5dKy9LxW/cmafSfzu8YNsZY5EF8+EsdsDED0H0jtk3Mp+a5kC6BQ3vxqb7Fa0X5
 PCf7Z5wozyymj9V0NLyxDSkIUTf5q7ZcOm20t3rmVnLnvkdulUgsqgTo7T7dTt3w
 R8MQBEf4KvpBv6xX9tBHzzSsbsYNfxQWxXblSl+QsuPdwIerh9L3Zd7lmWraTkhr
 ViQ+8HJhstgRLlw63t76/BlAsobNa3+usI13OMISZC7n3KqV/GU0oTWMjVJznWAx
 WOiegG0SgPHofSIEdomTYvgVBKY/92Hmkpw==
X-ME-Sender: <xms:jpJeZEDIqWFzsfNlq4m26S_-jW2oEsX9aWpNTEnt13lhvjXFg7Wu5Q>
 <xme:jpJeZGjfKYLVDOAhyC5cDcOWvGegH93KfpyZUcDfjufNvXSHl-ffEIBRlIm4WAAfG
 JyhylvOOENdPkMUMkQ>
X-ME-Received: <xmr:jpJeZHnnyyW1stOVtJtO4MqhZ3lTkRN8CiUAOxrrUOuiCXP7ZfLlKnG6T64OofY>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeehtddgudefjecutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttdefjeenucfhrhhomhepffhm
 ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg
 htthgvrhhnpeeigfetveehveevffehledtueekieeikeeufeegudfgfeeghfdulefgfeev
 ledvveenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe
 gumhhithhrhiesghhuthhovhdruggvvh
X-ME-Proxy: <xmx:j5JeZKywN-BDYENaGcl46LG29Y-A7tqQqX1mY9GioWWJKhwOlRgYjA>
 <xmx:j5JeZJSFRMP19ZrZ3wDgI0cXK9QNJAVBXJj249tm9hP62lSchE2InQ>
 <xmx:j5JeZFZ0hrF05ZOuKaD98DyPALNF8QtCgkAGsPbvF3y-d-HXGpx2bQ>
 <xmx:j5JeZIKlG_Z5MdC74PSz5X0ZBITq_HfBF6jjVAYxozHEAIz-yeJK5Q>
Feedback-ID: i0e71465a:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 12 May 2023 15:25:02 -0400 (EDT)
Message-ID: <f79571f9-fb54-473e-468b-13fbc71da416@HIDDEN>
Date: Fri, 12 May 2023 22:25:00 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.10.0
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>, Spencer Baugh <sbaugh@HIDDEN>
References: <iercz35fnkw.fsf@HIDDEN> <83o7mpbc3q.fsf@HIDDEN>
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <83o7mpbc3q.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -1.8 (-)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: -2.8 (--)

On 12/05/2023 22:09, Eli Zaretskii wrote:
>> These menu items could be set to only appear when the current buffer is
>> in a project, or they could just always appear.  I think it would be
>> better for them to always appear, personally.
> Maybe they should be disabled when the current is not in a project?

Calling (project-current) might not be the best idea after every user 
command: e.g. it might not be cached, and sometimes not very fast (e.g. 
over Tramp).

The current design work off the idea of calling it only when the user 
explicitly calls a related command.

All project-* commands fall back to prompting for project directory, so 
it shouldn't hurt to enable those menu entries unconditionally.




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

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


Received: (at 63469) by debbugs.gnu.org; 12 May 2023 19:09:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 12 15:09:56 2023
Received: from localhost ([127.0.0.1]:33057 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pxY9L-00048V-T3
	for submit <at> debbugs.gnu.org; Fri, 12 May 2023 15:09:56 -0400
Received: from eggs.gnu.org ([209.51.188.92]:33218)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1pxY9K-000489-78
 for 63469 <at> debbugs.gnu.org; Fri, 12 May 2023 15:09:54 -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 1pxY9E-0002j0-Eq; Fri, 12 May 2023 15:09:48 -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=bbLM1R8HihvSOw1cBp4YL3rO5PQgJnYUkHKRhk2UmXI=; b=pKEvIoFIKbTk
 zn9zXhktqC0xAck2OEhggra9QB51Q0cIzrTarTm4fFz4+YfM8KRyYuqPW5LTZf82FNeUemVh75V2m
 ewf/wPYuuEfhFsuNhQxEDMEvPy80LVe1mwU3AInQ5kUzv/s0hLzWjja6I+e6gzbqrABZ/vAs7D2nq
 WVtP0A7OEgub4Ovbbu6FXObIf5tXeIhVfuz82fZ8pUBx621c2ht59PjNggi87EH8+a+04e2zJlbdd
 QDdDzuwb89OfRGzOprNY880uwZ0eG+L06unNpjFiRIPMgns7rqqUGEP1EGIIVfa/qj8eCRt3cRfeu
 Dz5nzwO6wip8mev7nWlpQw==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1pxY9D-0004OM-MM; Fri, 12 May 2023 15:09:48 -0400
Date: Fri, 12 May 2023 22:09:45 +0300
Message-Id: <83o7mpbc3q.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <iercz35fnkw.fsf@HIDDEN> (message from Spencer Baugh on
 Fri, 12 May 2023 13:48:15 -0400)
Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries
References: <iercz35fnkw.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63469
Cc: 63469 <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: Spencer Baugh <sbaugh@HIDDEN>
> Date: Fri, 12 May 2023 13:48:15 -0400
> 
> Some proposed additions:
> - File, "Open File In Project",
>   project-find-file
> - Edit -> Search, "Search Files In Project",
>   project-find-regexp
> - Edit -> Replace, "Replace Regexp In Project",
>   project-query-replace-regexp
> - Tools -> Shell Commands, "Run Shell Interactively In Project",
>   project-shell
> - Buffers, "Select Buffer In Project",
>   project-switch-to-buffer

SGTM, thanks.

> These menu items could be set to only appear when the current buffer is
> in a project, or they could just always appear.  I think it would be
> better for them to always appear, personally.

Maybe they should be disabled when the current is not in a project?




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

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


Received: (at submit) by debbugs.gnu.org; 12 May 2023 17:48:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 12 13:48:35 2023
Received: from localhost ([127.0.0.1]:60982 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pxWsb-0001Qu-FZ
	for submit <at> debbugs.gnu.org; Fri, 12 May 2023 13:48:34 -0400
Received: from lists.gnu.org ([209.51.188.17]:36910)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <sbaugh@HIDDEN>) id 1pxWsY-0001QY-76
 for submit <at> debbugs.gnu.org; Fri, 12 May 2023 13:48:31 -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 <sbaugh@HIDDEN>)
 id 1pxWsU-0004jp-8S
 for bug-gnu-emacs@HIDDEN; Fri, 12 May 2023 13:48:26 -0400
Received: from mxout5.mail.janestreet.com ([64.215.233.18])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>)
 id 1pxWsN-0002LT-Io
 for bug-gnu-emacs@HIDDEN; Fri, 12 May 2023 13:48:23 -0400
From: Spencer Baugh <sbaugh@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 29.0.90; project.el doesn't add menu-bar entries
Date: Fri, 12 May 2023 13:48:15 -0400
Message-ID: <iercz35fnkw.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
Received-SPF: pass client-ip=64.215.233.18; envelope-from=sbaugh@HIDDEN;
 helo=mxout5.mail.janestreet.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, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: submit
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: -2.4 (--)


The project.el commands are very useful and are increasingly core to
Emacs.  They are even included in the quick-help window.  I think they
are valuable for new users to learn.

However, there are no menu bar entries for project.el commands.  Perhaps
we should add some?

Some proposed additions:
- File, "Open File In Project",
  project-find-file
- Edit -> Search, "Search Files In Project",
  project-find-regexp
- Edit -> Replace, "Replace Regexp In Project",
  project-query-replace-regexp
- Tools -> Shell Commands, "Run Shell Interactively In Project",
  project-shell
- Buffers, "Select Buffer In Project",
  project-switch-to-buffer

These menu items could be set to only appear when the current buffer is
in a project, or they could just always appear.  I think it would be
better for them to always appear, personally.


In GNU Emacs 29.0.90 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.15.12, Xaw scroll bars) of 2023-05-09 built on
 igm-qws-u22796a
Repository revision: 65c4a24aa0fc672bbf11e0c5187c6a29931b4363
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: CentOS Linux 7 (Core)

Configured using:
 'configure --with-x-toolkit=lucid --with-gif=ifavailable'

Configured features:
CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND
SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM LUCID
ZLIB

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

Major mode: Debbugs

Minor modes in effect:
  header-line-indent-mode: t
  jane-fe-minor-mode: t
  editorconfig-mode: t
  which-function-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  shell-dirtrack-mode: t
  server-mode: t
  windmove-mode: t
  savehist-mode: t
  save-place-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  context-menu-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/project hides /home/sbaugh/.emacs.d/elpa/project-0.9.8/project
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/xref hides /home/sbaugh/.emacs.d/elpa/xref-1.6.3/xref
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/csharp-mode hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/csharp-mode
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/xref hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/xref
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/project hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/project
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/eldoc hides /home/sbaugh/src/emacs/emacs-29/lisp/emacs-lisp/eldoc
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/auctex/lpath hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dictionary/lpath
/home/sbaugh/src/emacs/emacs-29/lisp/net/dictionary hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dictionary/dictionary
/usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/caml-font hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/ocaml/caml-font
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-version hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-version
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-loaddefs hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-loaddefs
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-keys hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-keys
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-perl hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-perl
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-core hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-core
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-rmail hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-rmail
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-octave hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-octave
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-comint hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-comint
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-w3m hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-w3m
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-org
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-texinfo hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-texinfo
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-inlinetask hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-inlinetask
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-mhe hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-mhe
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ocaml hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ocaml
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-clojure hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-clojure
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-publish hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-publish
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-irc hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-irc
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-calc hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-calc
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-odt hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-odt
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-id hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-id
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-gnus hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-gnus
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-matlab hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-matlab
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-icalendar hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-icalendar
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-footnote hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-footnote
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-bibtex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-bibtex
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lisp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lisp
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-C hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-C
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-org
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-indent hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-indent
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-info hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-info
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-maxima hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-maxima
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-awk hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-awk
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-man hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-man
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-goto hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-goto
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-md hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-md
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-eshell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-eshell
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lua hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lua
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-habit hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-habit
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-R hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-R
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-eww hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-eww
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-makefile hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-makefile
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-latex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-latex
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-docview hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-docview
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lob hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lob
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-beamer hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-beamer
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-faces hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-faces
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-html hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-html
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-feed hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-feed
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-bbdb hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-bbdb
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lilypond hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lilypond
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-ascii hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-ascii
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-latex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-latex
/home/sbaugh/src/emacs/emacs-29/lisp/org/org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-tangle hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-tangle
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-tempo hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-tempo
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-duration hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-duration
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sqlite hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sqlite
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-entities hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-entities
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-table hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-table
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-js hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-js
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-table hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-table
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sql hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sql
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-timer hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-timer
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-element hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-element
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-java hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-java
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-ctags hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-ctags
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-shell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-shell
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-groovy hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-groovy
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-src hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-src
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-datetree hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-datetree
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-haskell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-haskell
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-plot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-plot
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-compat hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-compat
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-screen hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-screen
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-fortran hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-fortran
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-protocol hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-protocol
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-crypt hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-crypt
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sed hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sed
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-gnuplot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-gnuplot
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-pcomplete hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-pcomplete
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-colview hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-colview
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-scheme hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-scheme
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-forth hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-forth
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-num hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-num
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-clock hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-clock
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-exp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-exp
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-mouse hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-mouse
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-capture hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-capture
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sass hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sass
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-eval hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-eval
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ref hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ref
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-emacs-lisp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-emacs-lisp
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-mobile hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-mobile
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ruby hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ruby
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-eshell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-eshell
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-lint hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-lint
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-agenda hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-agenda
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-macro hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-macro
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-attach-git hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-attach-git
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-processing hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-processing
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-css hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-css
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-dot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-dot
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-list hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-list
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-macs hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-macs
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-attach hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-attach
/home/sbaugh/src/emacs/emacs-29/lisp/org/org-archive hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-archive
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-python hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-python
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-plantuml hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-plantuml
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ditaa hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ditaa
/home/sbaugh/src/emacs/emacs-29/lisp/org/ob-julia hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ob-julia
/home/sbaugh/src/emacs/emacs-29/lisp/org/ol-man hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ol-man
/home/sbaugh/src/emacs/emacs-29/lisp/org/ox-koma-letter hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ox-koma-letter
/home/sbaugh/.emacs.d/elpa/dash-2.19.1/dash hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dash/dash
/home/sbaugh/.emacs.d/elpa/dash-2.19.1/dash-functional hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dash/dash-functional

Features:
(shadow emacsbug gnus-fun reposition pcmpl-git em-unix em-term term
ehelp em-script em-prompt em-ls em-hist em-pred em-glob em-extpipe
em-cmpl em-dirs esh-var em-basic em-banner em-alias esh-mode eshell
esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups
esh-util lisp-mnt cus-edit cus-start cus-load completion conf-mode
mode-local package-x proced calc calc-loaddefs calc-macs info-look
hl-line tabify cal-iso org-datetree timezone org-capture emacs-news-mode
emoji-labels emoji multisession sqlite rect mule-util ibuffer
ibuffer-loaddefs man goto-addr vc-dir pulse org-element org-persist
org-id org-refile avl-tree generator oc-basic ol-eww eww xdg url-queue
mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview
doc-view jka-compr image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m
ol-doi org-link-doi magit-patch magit-imenu git-rebase face-remap
flow-fill cl-print qp sort smiley gnus-cite mail-extr textsec
uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check
gnus-async gnus-bcklg gnus-agent gnus-srvr gnus-score score-mode
nnvirtual nntp gnus-ml gnus-msg disp-table nndoc gnus-cache gnus-dup
gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum shr
pixel-fill kinsoku url-file svg dom 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 gnus nnheader range wid-edit mm-archive
gnutls url-http-ntlm ntlm hmac-md5 hex-util md4 network-stream url-cache
display-line-numbers debbugs-gnu debbugs-compat debbugs soap-client
url-http url-gw nsm rng-xsd rng-dt rng-util xsd-regexp xml sh-script
treesit misc dabbrev shortdoc help-fns radix-tree executable find-dired
grep misearch multi-isearch bug-reference vc-git vc-bzr vc-src vc-sccs
vc-svn vc-cvs vc-rcs log-view vc-fe vc vc-dispatcher dired-aux vc-hg
tramp tramp-loaddefs trampver tramp-integration tramp-compat parse-time
iso8601 ls-lisp jane-merlin merlin-imenu merlin-xref merlin-cap merlin
jane-async-merlin jane-completion jane-common jane-project xref files-x
jane-fe-menu ecaml_plugin linum view gopcaml magit-bookmark bookmark
image+ advice image-file image-converter editorconfig editorconfig-core
editorconfig-core-handle editorconfig-fnmatch whitespace jane-auto-modes
vba-mode markdown-mode color jane jane-micro-features jane-diff
unified-test-mode shell-file core core-buffer core-error core-util ert
pp ewoc debug backtrace jane-sexp jane-ocaml jane-tuareg-theme tuareg
tuareg-compat tuareg-opam skeleton flymake-proc flymake warnings smie
caml-types caml-help caml-emacs find-file compile jane-cr jane-align
jane-deprecated jane-smerge gnu-elpa-keyring-update jane-ocp-indent
ocp-indent cl jane-util page-ext dired-x magit-extras project
magit-submodule magit-obsolete 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 magit-repos magit-apply magit-wip magit-log which-func imenu
magit-diff smerge-mode diff diff-mode git-commit log-edit message
sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa
derived epg rfc6068 epg-config gnus-util text-property-search 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-core magit-autorevert autorevert filenotify
magit-margin magit-transient magit-process with-editor shell server
magit-mode transient edmacro kmacro magit-git magit-section magit-utils
crm dash cl-extra help-mode windmove org ob ob-tangle ob-ref ob-lob
ob-table ob-exp org-macro org-src ob-comint org-pcomplete pcomplete
org-list org-footnote org-faces org-entities time-date noutline outline
icons ob-emacs-lisp ob-core ob-eval org-cycle org-table ol rx org-fold
org-fold-core org-keys oc org-loaddefs find-func cal-menu calendar
cal-loaddefs org-version org-compat org-macs format-spec gdb-mi bindat
gud easy-mmode comint ansi-osc ansi-color ring ffap thingatpt vundo
pcase cyberpunk-theme savehist saveplace project-autoloads
vundo-autoloads magit-autoloads xref-autoloads csv-mode-autoloads
magit-section-autoloads cyberpunk-theme-autoloads
url-http-ntlm-autoloads url-auth git-commit-autoloads
with-editor-autoloads finder-inf info dash-autoloads vc-hgcmd-autoloads
package browse-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie generate-lisp-file url-domsuf url-util mailcap
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
password-cache json subr-x map byte-opt gv bytecomp byte-compile
url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode lisp-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 dbusbind inotify
dynamic-setting system-font-setting font-render-setting cairo x-toolkit
xinput2 x multi-tty make-network-process emacs)

Memory information:
((conses 16 2234155 565776)
 (symbols 48 54789 58)
 (strings 32 299384 119240)
 (string-bytes 1 11967634)
 (vectors 16 139996)
 (vector-slots 8 4948009 292456)
 (floats 8 3298 2024)
 (intervals 56 249713 3212)
 (buffers 976 319)
 (heap 1024 956749 66571))




Acknowledgement sent to Spencer Baugh <sbaugh@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#63469; 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: Thu, 25 May 2023 18:45:02 UTC

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