Comments (8)
That's unfortunate. It was really quick to be able to do that. I also hadn't ever learned that I could select the options by typing -
and the letter. It's good to know that I can, but my muscle memory is still to just tap the arrow keys once or twice to find the option I'm looking for.
from transient.
Sorry for being ignorant, but I don't see the benefit of modal (transient) dialogs (for me). I have been using the emacs for 30 years and have never (consciously) perceived a modal dialogue. I like to be the master of any buffer, navigating with up/down arrow keys and using incremental search. Now I feel like in a jail, that is what I know from other IDE, not from emacs.
Is there a way to disable such modal dialogs?
from transient.
This was touched on in #17, where Jonas said, "Isearch and selecting a suffix using the arrow keys or the mouse is still not possible again. Not sure if I want to bring that back."
from transient.
Another point with transient, long know keystrokes do no longer work (e.g C-c C-c
is now C-x C-s
) .. phew!
from transient.
I was actually just about to start working on bringing back arrow navigation...
have never (consciously) perceived a modal dialogue
Please read this first: #17 (comment).
In summary. Transient popups are like incomplete key sequences. 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.
Additionally note the explanations about the popup buffer not being the current-buffer
and why that is useful.
Is there a way to disable such modal dialogs?
You can set transient-show-popup
to nil
. This prevents the popup from being shown. Instead you get something like this in the echo area:
c- [magit-commit] -A|-C|-R|-a|-e|-n|-s|-v|A|F|S|a|c|e|f|n|s|w|x
You can also set it to 0
in which case you see only:
c-
I.e. the transient then behaves exactly like a regular prefix command. Well almost, if you press -
then the popup is shown. If that were not the case, then you wouldn't be able to know whether then pressing a
enables or disables the --all
argument.
All that being said I do take these concerns seriously. I just want users to know why I have done things the way I have and that it enables features that would otherwise not be possible.
So I am going to bring back some functionality that was lost due to Transient being more modal but without making it less modal. I still think that whether it should be considered more modal is a matter of perception, but if that's your perception, then I won't deny you that. 😉
from transient.
Another point with transient, long know keystrokes do no longer work (e.g
C-c C-c
is nowC-x C-s
) .. phew!
The rational is explained here: https://magit.vc/manual/transient/FAQ.html#Why-did-some-of-the-key-bindings-change_003f.
from transient.
@tarsius thanks for your feedback. I have read the docs you linked but I have a doubt that I have understood all in deep ;) I really will give it a try. ATM it is hard for me to change my keystrokes that flow out of my fingers routinely without me ever thinking about it.
I still think that whether it should be considered more modal is a matter of perception ...
Since I can't change to any other buffer. Anyway, thanks for all your work on magit-popup and transient!
from transient.
Arrow key navigation, mouse support, and isearch support have been restored. You need to set an option to enable these features. See #42.
from transient.
Related Issues (20)
- After updating transient-0.4.3 to transient-0.5.2 emacs-28.1 does not start. HOT 5
- :pad-keys appears to be broken since ae5aba367c3ff83d2457e725781290b6810b4e1a HOT 5
- with default transient-display-buffer-action, help might not be displayed if *Help* in display-buffer-alist HOT 2
- Messages shown when toggling minor modes are not shown when a transient prefix is being used HOT 1
- C-z no longer invokes transient-suspend HOT 4
- Regression in transient-define-prefix without static items HOT 2
- Bug in 0.5.3 not present in 0.4.3 HOT 3
- Autoloading `transient-define-prefix` form fails HOT 3
- Reached Inconsistent Transient State Detected in cc-isearch-menu HOT 9
- Support help-echo for Transient infix arguments HOT 5
- Use macro within transient definition HOT 3
- Transient i18n/L10n Support HOT 12
- ("" "" ignore) no longer works in transient-define-prefix HOT 3
- Always set/save options when exiting transient HOT 5
- emoji--define-transient: Wrong number of arguments: #<subr transient--expand-define-args>, 1 HOT 4
- init fails with latest update
- transient--stack is always nil in 0.7.3 HOT 3
- Wrong Type Argument when running Forge Menu Filter HOT 1
- no-other-window is left on reused side windows after exiting transient HOT 1
- When commands share the same label, the latter gets executed HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from transient.