emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: On the adoption of transient.el


From: Óscar Fuentes
Subject: Re: On the adoption of transient.el
Date: Wed, 04 Aug 2021 17:56:27 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Philip Kaludercic <philipk@posteo.net> writes:

> 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.

Certain actions do not play well with the possibility of doing arbitrary
things once they are triggered. All-or-nothing sequences sometimes make
sense, and then a good UI will enforce some invariants, usually by
restricting what the user can do.

For instance, allowing the user to do arbitrary things while on the
process of dealing with Magit's transient menu can cause mistakes and
confusion for little or no benefit. If you enter the transient menu and
then feel like doing something else, C-g. No big deal.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]