From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jesse Millwood Newsgroups: gmane.emacs.devel Subject: Re: On the adoption of transient.el Date: Wed, 4 Aug 2021 15:57:25 -0400 Message-ID: References: <877di4on3d.fsf@posteo.net> <87im1oy6mw.fsf@posteo.net> <87y29hihea.fsf@posteo.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="------------B0155C625C57B873D49DDAAB" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="33480"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Aug 04 23:11:13 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mBOAQ-0008QC-9g for ged-emacs-devel@m.gmane-mx.org; Wed, 04 Aug 2021 23:11:11 +0200 Original-Received: from localhost ([::1]:34086 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mBOAO-00074s-SE for ged-emacs-devel@m.gmane-mx.org; Wed, 04 Aug 2021 17:11:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45402) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mBN1A-0006th-Ia for emacs-devel@gnu.org; Wed, 04 Aug 2021 15:57:32 -0400 Original-Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:49247) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mBN18-0005OP-A7 for emacs-devel@gnu.org; Wed, 04 Aug 2021 15:57:32 -0400 Original-Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id 2905832008FB for ; Wed, 4 Aug 2021 15:57:27 -0400 (EDT) Original-Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Wed, 04 Aug 2021 15:57:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h= subject:to:references:from:message-id:date:mime-version :in-reply-to:content-type; s=fm3; bh=WIpXcbqzZG/+DFXHwFPUvexUs+x MkjF4Q3/QJqXg09g=; b=belKIyOGQz0Tb2axEJ/HEHCRPtYoQOGqeZiR+OL6TBT hoIyUVsbzA75hPQ044Kv4mY64W/Ur/wGPZjocmskB0LBWoAkFtHfFCLTT/PFzDzJ vT4aa+0MB1Y7R7f+Ijuz+x5MBKzKr0vdU9EqILYJLDGaiZa03ZXebA386rbZJkTy 7G4CE9fikyVlUBlmg4ogWeDA4sl8b6ffHAicf0SQLFchLcDI6bqeUuNk5YbjDpiP A4EMQ2SPtY0lac/OG/NRNuXAF9STHSTmK3gTMu0vNBRPy8zz7P/e2fd4XYQF5zzR KU0sYKftm3gSAEntZp7zpbvc+/a2Joa5zKYP0M33AuQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=WIpXcb qzZG/+DFXHwFPUvexUs+xMkjF4Q3/QJqXg09g=; b=A1aZv1igq6vHFYy1cJHjE9 8lhe0HoUhVKfWh1okegweVROmThCkl4rPlr0W5H0kD/Tz328nqVj2nUOAUlMuIjw +KenKltPOIXGwIlWho0mRPZdvkQ/iTnTQvcdH9nENgLNhxpAUHdOGrjm8rDHZT5e zeUtoz9A5ovsxF0vswxRMiDyFkxJE0uDfeHllMEqk3QHER8ba6JQHTPYXvunTIu2 Xg4pH7RzAQDUD+TOURizwqebA9mlTbT3b9jOh/K3Km7tWRGPwjSf1kmeTiGBUvzG FP89MQVRPhnmcPjvm6T7twFzPpCtC2yyMG3OdIfQ8nrjX5q8B17QbAJ8cHi6xA0A == X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvtddrieejgdduvdegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefuvfhfhffkffgfgggjtgesrgdtre ertdefreenucfhrhhomheplfgvshhsvgcuofhilhhlfihoohguuceojhgvshhsvggpmhes fhgrshhtmhgrihhlrdgtohhmqeenucggtffrrghtthgvrhhnpefghfefgeekvdeugefhgf dttdejgeeglefhfeeguefgueejfeffgeeuieeiueefieenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehjvghsshgvpghmsehfrghsthhmrghilh drtghomh X-ME-Proxy: Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Wed, 4 Aug 2021 15:57:26 -0400 (EDT) In-Reply-To: Content-Language: en-US Received-SPF: pass client-ip=64.147.123.21; envelope-from=jesse_m@fastmail.com; helo=wout5-smtp.messagingengine.com X-Spam_score_int: -4 X-Spam_score: -0.5 X-Spam_bar: / X-Spam_report: (-0.5 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_CHARSET_FARAWAY=2.45, NICE_REPLY_A=-0.132, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Wed, 04 Aug 2021 17:10:19 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:272060 Archived-At: This is a multi-part message in MIME format. --------------B0155C625C57B873D49DDAAB Content-Type: text/plain; charset=gb18030; format=flowed Content-Transfer-Encoding: 8bit Oh wow, not being able to search that buffer has been my main pain point of transient. Thank you so much! On 2021-08-04 2:56 p.m., T.V Raman wrote: > Philip Kaludercic writes: > > > I recently discovered thanks to the transient/magit author that once you > enable navigation via arrows in transient popups, it also gives you > isearch of the transient. We then discovered a bug where using isearch > to find a transient option and pressing enter wasn't working, but > Jonas has since fixed that and it works. > transient-enable-popup-navigation is a variable defined in ‘transient.el’. > > Its value is t > Original value was nil > > You can customize this variable. > This variable was introduced, or its default value was changed, in > version 0.2.0 of the transient package. > > Whether navigation commands are enabled in the transient popup. > > While a transient is active the transient popup buffer is not the > current buffer, making it necessary to use dedicated commands to > act on that buffer itself. If this non-nil, then the following > features are available: > > - "" moves the cursor to the previous suffix. > "" moves the cursor to the next suffix. > "RET" invokes the suffix the cursor is on. > - "" invokes the clicked on suffix. > - "C-s" and "C-r" start isearch in the popup buffer. > > >> Rudolf Adamkovič writes: >> >>> Philip Kaludercic writes: >>> >>>> On the other hand something has always felt off about transient, in >>>> the sense that it is breaking some expected behaviour or couldn't >>>> pin-point yet, but just unconsciously stumble over. >>> This is exactly how I feel about the "modern" interfaces in Emacs. I >>> reported a bug in Embark recently, and because I could not select and >>> copy the text, I ended up re-typing the text that was right in front >>> of me in Emacs. Say what? For me, Emacs is a program where I expect to >>> never waste time re-typing anything. Magit has a similar feel to it, >>> and I can never be sure if the program will allow me to select text in >>> the diverse parts of its user interface. In my opinion, such >>> uncertainty is bad for power users. I would expect this from Apple or >>> Microsoft software, because their latest “UX designers” surely know >>> better than anyone, but in Emacs? >> I am not sure if this is something specific to modern interfaces, or >> rather an overreaching when it comes to binding. After a while I managed >> to "pin-point" what was irritating me, and it was the missing ability to >> search (something that I seem to do so passively that i didn't even >> notice it). Having C-s work is especially useful when there are a lot of >> transient options. This cannot be solved by binding C-s manually, >> as just because that might work for me, there is some other behaviour >> someone else is expecting (eg. your example of selecting and copying >> text). >> >> What I understand transient and certain other packages do is basically >> override most keys, even those it doesn't use. This is more invasive >> than special-mode, that just doesn't bind self-insert-command to most >> keys. What I wonder is why this is done/why it might be necessary. >> >>> R+ --------------B0155C625C57B873D49DDAAB Content-Type: text/html; charset=gb18030 Content-Transfer-Encoding: 8bit

Oh wow, not being able to search that buffer has been my main pain point of transient. Thank you so much!

On 2021-08-04 2:56 p.m., T.V Raman wrote:
Philip Kaludercic <philipk@posteo.net> writes:


I recently discovered thanks to the transient/magit author that once you
 enable navigation via arrows in transient popups, it also gives you
 isearch of the transient. We then discovered a bug where using isearch
 to find a transient option and pressing enter wasn't working, but
 Jonas has since fixed that and it works.
 transient-enable-popup-navigation is a variable defined in ‘transient.el’.

Its value is t
Original value was nil

  You can customize this variable.
  This variable was introduced, or its default value was changed, in
  version 0.2.0 of the transient package.

Whether navigation commands are enabled in the transient popup.

While a transient is active the transient popup buffer is not the
current buffer, making it necessary to use dedicated commands to
act on that buffer itself.  If this non-nil, then the following
features are available:

- "<up>" moves the cursor to the previous suffix.
  "<down>" moves the cursor to the next suffix.
  "RET" invokes the suffix the cursor is on.
- "<mouse-1>" invokes the clicked on suffix.
- "C-s" and "C-r" start isearch in the popup buffer.


Rudolf Adamkovič <salutis@me.com> writes:

Philip Kaludercic <philipk@posteo.net> writes:

On the other hand something has always felt off about transient, in
the sense that it is breaking some expected behaviour or couldn't
pin-point yet, but just unconsciously stumble over. 
This is exactly how I feel about the "modern" interfaces in Emacs. I
reported a bug in Embark recently, and because I could not select and
copy the text, I ended up re-typing the text that was right in front
of me in Emacs. Say what? For me, Emacs is a program where I expect to
never waste time re-typing anything. Magit has a similar feel to it,
and I can never be sure if the program will allow me to select text in
the diverse parts of its user interface. In my opinion, such
uncertainty is bad for power users. I would expect this from Apple or
Microsoft software, because their latest “UX designers” surely know
better than anyone, but in Emacs?
I am not sure if this is something specific to modern interfaces, or
rather an overreaching when it comes to binding. After a while I managed
to "pin-point" what was irritating me, and it was the missing ability to
search (something that I seem to do so passively that i didn't even
notice it). Having C-s work is especially useful when there are a lot of
transient options. This cannot be solved by binding C-s manually,
as just because that might work for me, there is some other behaviour
someone else is expecting (eg. your example of selecting and copying
text).

What I understand transient and certain other packages do is basically
override most keys, even those it doesn't use. This is more invasive
than special-mode, that just doesn't bind self-insert-command to most
keys. What I wonder is why this is done/why it might be necessary.

R+

    
--------------B0155C625C57B873D49DDAAB--