5 ms·
Interesting concept. The constant modifiers in Emacs are really such a turn-off. I want to give Emacs another try, but I cannot understand why functionalities a
by juujian 3y ago
Interesting concept. The constant modifiers in Emacs are really such a turn-off. I want to give Emacs another try, but I cannot understand why functionalities are accessed like this in the first place. In sublime text, with ctrl+shift+p I can access most of the functionalities I need. Still a weird key combination, but sure beat ctrl+x ctrl+f...
Edit: I am still not sure why it isn't just something more direct like ctrl+j, since it is used so much, maybe someone can enlighten me...
- bitwize 3y agoST's command palette is a descendant of M-x in emacs.
- schemescape 3y agoTangent: any tips on how to make the M-x line more usable, similar to a command palette? I just got started with Emacs, and the archaic terminology and inconsistent naming is causing me to have to consult StackOverflow for basic things like “what are the copy and paste commands called?”. (Those were probably both in the tutorial, but I already forgot them a few times.) I’m aware of “apropos”, but it also uses antiquated terminology, so it’s frequently not useful to me. I’m sure this problem has been solved :)
- Conscat 3y agoYou probably want posframe along with one of the many options for a vertical completion candidate minibuffer (I like vertico), and a package like marginalia to annotate the options like VS Code. A non-default completion-style like hotfuzz, flx, or orderless might also interest you.
- bitwize 3y agoI use ivy-mode. Apparently it's not the cool thing anymore, but I use it because it's simple and it works. With ivy-mode enabled, anything Emacs asks you that has a list of options -- so, M-x, file selection, buffer selection, etc. -- will pop up a little menu right in your minibuffer. It should be available in ELPA, with a more recent release in MELPA.
- _a_a_a_ 3y ago> I’m aware of “apropos”, but it also uses antiquated terminology can you clarify 'antiquated' for me please
- schemescape 3y agoHere’s an example: M-x, “apropos”, RET, “copy text” No apropos matches for “copy text” Using just “copy” returns two undocumented variables first. I did eventually find kill-ring-save, but it took more digging than I’d like. Obviously if I embraced (or at least remembered) Emacs’s terminology I’d have a better experience, but I’m not there yet. Edit again: “copy selection” found copy-region-as-kill, which is maybe what I should have searched for originally. Not sure yet how it differs from kill-ring-save.
- _a_a_a_ 3y agoOK, fair enough
- alwaysbeconsing 3y agoI'm sympathetic to this argument but I just searched apropos for "cut" and then for "copy" and got many commands related to cutting/copying text. Granted also that the words "copy" and "cut" don't seem to appear in the results, so you still have some reading to do, but the metadata is apparently there. What version of Emacs did you try?
- munch117 3y agoYank instead of paste. Frame instead of window. Kill instead of delete. kill-ring-save instead of copy. I was going to add 'visit instead of open', but I guess that bit has changed over the years. C-x C-v no longer invokes 'visit-file'.
- _a_a_a_ 3y agoWhile I completely get what you're saying it's not really fair to expect Emacs to be compatible with systems that came after it. If you going to work in Emacs you have to pretty much work on its terms, which I think is fairly reasonable and speaking only for myself, I found very worthwhile. If you think it would make it more accessible to have certain changes, email the Emacs issue/bug people with constructive suggestions and see what they say; they are extremely responsive (then try doing the same with Apple or Microsoft and see what happens :-) )
- munch117 3y agoIn the old days, we wouldn't dream of taking up a new editor without first printing out a cheat sheet for it, to have lying next to the keyboard for the first few days. Yeah I know, archaic terminology: 'printing'. It's a thing we used to do.
- Conscat 3y agoBy default in Emacs, `M-x` is analogous to Ctrl+Shift+p. Most users like a vertical completion candidate interface for it, such as the `vertico.el` package (among very very many other options). You actually have a ton of control over how this interface works, between `completion-styles` (candidate filtering algorithms, which themselves can be sorted in a hierarchy or even changed dynamically while the menu is open), and various packages like `marginalia` to get richer annotations. You can even dock it somewhere else on the screen using the `posframe.el` package. Vertico and Selectrum are two modern popular options, Ivy and Helm are two older ones, and there are very creative ones like Raven (https://github.com/chameco/raven https://github.com/chameco/raven) or MCT (https://protesilaos.com/emacs/mct https://protesilaos.com/emacs/mct). Emacs comes with `cua-mode`, which provides some more modern conventions like `C-s` to save, `C-o` to open files, etc., however most users find that the default system does make sense once you learn it. `C-c`, `C-u`, and `C-x` prefixes have very consistent meanings by default across all major modes, and by convention across basically all elisp packages. I don't use QWERTY, so I find the rebinder package very useful (https://github.com/darkstego/rebinder.el https://github.com/darkstego/rebinder.el), but I think it can improve the ergonomics of those prefixes across any keyboard layout. My equivalents to `C-x` and `C-u` are on my home-row. I also use home-row mods (https://precondition.github.io/home-row-mods https://precondition.github.io/home-row-mods) which make the feel of interacting with Emacs very smooth. Keybinding discovery is also very easy between the `C-h` family, The `which-key.el` package, and the `helpful.el` package. The `M-x` menu also shows keybindings, even by default. What's really nice about Emacs is that changing keybindings is very easy, and between hooks, advices, and modes, the keybindings and their behavior are incredibly flexible.