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: Jonas Bernoulli
Subject: Re: On the adoption of transient.el
Date: Sat, 07 Aug 2021 12:19:41 +0200

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

> the new transient UI renders 
> the help system, such as the glorious C-h k, useless.

This is https://github.com/magit/transient/issues/113.  Basically,
    "I know and intend to do something about it. Help welcome."

> Not being able to copy text or describe all keys is not what I expect
> to see in the official parts of vanilla Emacs.

    "We cannot allow such heresy in the inner sanctum."

So far I have brought back all the "lost features" or communicated my
plans to do so.

Occasionally I left out a feature, thinking it was not necessary.  Oh,
the hubris!  For example I thought it would be acceptable to loose the
ability to copy some text that is part of the UI (after all there is
precedence in Emacs itself like the margin, header-line, mode-line,
menu, and echo area (including partial key sequences)), but I was wrong,
it means I have strayed from The Way of Emacs.

I probably can bring back this feature as well.
Just opened https://github.com/magit/transient/issues/126 for that.

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

You are of course not the only person who has reservations and who
has expressed their discomfort.  At various occasions this gave me
the opportunity to explain the reasoning behind some of the design
decisions.

I just went through past issues to compile a list of things I have
to cover in the FAQ (both "why?" and "how to restore?" questions).

[Just opened https://github.com/magit/transient/issues/127 for that.]

It will take time to finish that work, but meanwhile you could read
some of the things I have written already.

>From https://github.com/magit/transient/issues/38#issuecomment-489069727:

    "In summary. Transient popups are like incomplete key sequences.
[Even when using plain old regular prefix keys] You can only invoke
commands that are available given the current incomplete key sequence
or abort. One could call that a modal interface. Transient differs from
regular prefix keys in that it shows you the available suffixes in a
buffer. That causes it to be perceived as more modal, but really it is
exactly the same as for regular incomplete key sequences except for the
visual feedback."

Lengthier musings [keep in mind that some of it is outdated]:

- https://github.com/magit/transient/issues/17#issuecomment-464243333
- https://github.com/magit/transient/issues/17#issuecomment-482815245

Also note that so far I have not pushed for Transient to actually be
used in Emacs.  That's because I want to address such concerns first.
There are issue in the issue tracker about those.  In addition to the
once mentioned above, you are probably most interested in #114 and #127.

     Jonas



reply via email to

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