reddit / emacs

Am I ignoring something much better?(Thinking of vim to emacs, need help)

zim0369 · 2022-09-05 17:41
**This is going to be pretty long** I've been a vim user for 2yrs now. I've jumped from vim->neovim->lunarvim. I've also tried out other text editors like kakoune and helix. I liked kakoune a little better because of the editing model but can't use it due to the lack of plugins. I like helix but it lacks some features but the best part is that it is really well built and feels very robust unlike my current LunarVim setup. I've been seeing people moving from vim to emacs. Their talks and reviews sound very mature, yet I seem to ignore them by thinking why would one use emacs rather than modal editing? Modal editing is so much comfier and faster. Also, I have the advantage of editing my keyboard layout using kmonad so using symbols in vim is fast for me too. I primarily do a lot of editing so I really like the idea of vim. Coming to the worse part. I've been having some problems with vim and other vim like editors for a long while. Not just vim but other tools I use in my workflow such as ranger, sxiv, fzf menus, xmonad, etc. have some problems. Starting with LunarVim(currently using) problems I have to configure plugins and after updates they have some breaking changes. I have to read the changelog. I have to fix things. This kind of happens everytime I update Lunarvim. Lunarvim works fine but doesn't have all of the plugins I need by default so sometimes I feel like going back to configuring entire neovim by myself would be great but since there's not much difference between neovim and lvim, I've had the same issues with neovim too. A heck lot of configuration needed and things are more likely to break. Some language servers are very troublesome. Essential plugins like NvimTree create some problems after updates, etc. Other than that it works great. Editing with vim has always been a breeze and my keymap is custom too, thanks to kmonad. It suits vim's bindings. About the tools I use, ranger is a good file manager but has clunkier configuration, image previews absolutely problematic. I have to use sxiv to browse images which needs scripting to do renaming, deleting, etc. Other than that my workflow in the fish terminal with fzf, zoxide, zellij, etc. is absolutely wonderful. I need to know if switching to emacs would solve these few problems I have in my current workflow. I would prefer editing text with vim bindings so should I just start with Doom Emacs? Must haves in my editin setup are easymotion, vim surround(with vim-repeat), indentline, markdown preview(in browser) plugin, physics based scrolling(I use neoscroll), tabout(during coding), cursorline & cursorcolumn, snippets(sometimes), LSPs,... Are good alternatives to these available? Also, icons, color preview, image preview, notifications, fuzzy file finder(like telescope),.. would be nice to haves. *I am bending towards out of the box and easy to configure things*
jsled · 2022-09-05 18:17
> Modal editing is so much comfier and faster. There's no accounting for taste, of course, but … no, it's not. The "comfort" is simply that you are accustomed to it. Any perceived benefit in "speed" is certainly optimizing down in the margins.
anaumann · 2022-09-05 18:22
Whenever you're updating a plugin, functionality might have changed to a degree that makes it incompatible with former versions and configurations.. That's life and happens everywhere in software :) And I don't really get the part about all the tools you prefer using from a shell, that's hardly part of an editor, although many things can be added to emacs(there's a ranger-like directory browser, for example). Maybe you should try going for LESS software clutter instead of just shifting it to yet another editor :D
asmodeus812 · 2022-09-05 18:23
My two cents, you will not feel any better if you go from vim to emacs and expect one to be a better out-of-the-box experience than the other. Doom is nice, but i find it is basically jack of all trades, master of none, kind of distro. The same argument is applicable for the big vim distros as well. Eventually you will have to bite the bullet sit down and learn how to create your own configuration, in either vim or emacs. Otherwise, you will bounce from distro to distro, not understanding what is going on with the configuration you are using and will continue to ask yourself which one is better. **There is no better,** both require time investment and work. You can \**somewhat*\* make one behave like the other, but will always have something missing, compared to the other side. In my eyes, emacs is a great tool for students, scientist, phds, writers, artists etc. There are a ton of packages which aid such people, and there are not many vim plugins that can rival those. But vim is much better for programmers in general. Vim has a lot of built-in (right in the C core itself) functionalities specifically targeted at editing code. There are parts of the "vim grammar" itself that are meant to edit or navigate code. With neovim this gap has become even greater, with treesitter and lsp integration, this is no-brainer at that point.
Greenskid · 2022-09-05 18:30
I highly recommend Doom Emacs. However some of the challenges you mentioned e.g. facing issues on updating will still occur if you try updating to the latest packages very often. I think that independent of the editor you use you should solve this issue e.g. quick rollback, or just live with it and help the community by reporting/fixing issues. I feel that Emacs has more stable packages in general, as there are less people re-implementing plugins like in Neovim. I am really surprised by how old some of the really awesome Emacs packages are.
SlowValue · 2022-09-05 18:52
The grass is always greener on the other side. As always, (e.g. switching Office with LaTeX, or Windows by Linux) you just trade problems with other problems. The question is, which problems, do you like more to solve. Said that: with Emacs you can solve most of the problems you will encounter, **if** you know Elisp well enough (stuff breaks too, sometimes, often when switching major Emacs versions). Emacs config files are not supposed to be small! Emacs is not intuitive, you still will have to read documentation. With Emacs comes a different philosophy (i.e. doing most stuff from inside Emacs), if you don't like that, you probably won't feel at home. A switch, **if you are really committed**, might be worth it.
nv-elisp · 2022-09-05 19:03
Why are there so many words in this thread?
SequentialDesign · 2022-09-05 19:04
>Modal editing is so much comfier and faster. if you're talking about locked editors like Vim and Kak, I disagree. Big time. I have modifiers on my homerow (tap to send letter, hold for modifier), and chording feels great. I have no problems whatsoever chording. Some people put modifiers on their thumbs. I did this and found it comfortable but inflexible (hard to string mods together). I did some Vim golf yesterday to see if I was crazy. In the two exercises I did, I beat both Kak and Vim (one was a straight-up ass whoopin' (shout out to avy-jump and multiple cursors)). and, for sure, my hands felt nice. I've begun experimenting with locking the text like Vim and Kak & co. do because when I use a terminal emulator I can't use the other modifiers that Emacs offers (Alt, Super, and Hyper), so I have to find some way of translating my system to one with fewer capabilities. but my preference is chording, which is very comfortable and very fast on a great keyboard and layout.
karthink · 2022-09-05 19:50
How do you repeat the home row keys that you're using as modifiers? I tried it but I had to tap f repeatedly to hold down C-f.
zim0369 · 2022-09-05 19:56
I too feel that emacs keybindings would be comfortable in emacs. My layout is really nice. I'll give vanilla emacs a try then. Still, straying a little towards doom tho.
zim0369 · 2022-09-05 19:58
Because this is a vim & emacs convo?
SequentialDesign · 2022-09-05 20:07
I'm using QMK on an heavily modded Ergodox EZ, and I have no such problem. (although, I'm not entirely sure I know what you mean.) example: I press and hold down middle finger home, which is `CTRL` (`n` on tap), and hit `x` and then hit `s`. that saves the file for me. I lift my middle finger and carry on. hold/tap mod keys are just like their regular constituent counterparts, really. very little funny business going on.
nv-elisp · 2022-09-05 20:21
> Because this is a vim & emacs convo? Good question.
karthink · 2022-09-05 20:34
How would you hold down C-n to go down a few lines?
SequentialDesign · 2022-09-05 20:44
on the other side of my keyboard (the right side), I have another `CTRL` key (`e` on tap). it's also on middle finger. `letter n/Left CTRL` on my left hand middle finger, `letter e/Right CTRL` on my right hand middle finger.
billydeath · 2022-09-05 21:40
Have your cake & eat it too. Emacs' evil-mode lets you bring as much or as little as you want from Vim to Emacs. After using Vim for 20 years then switching to Emacs a few years back, having my comfy safe space of Vim style modal editing & movement available from the get-go made the transition much smoother. As others have suggested, starting with something like Doom will lower the bar to entry considerably. Over time, you may find yourself rolling your own config - but be warned - its a bit of a rat-hole if your a tinkerer. You can literally spend days/weeks/months tweaking stuff in Emacs. So might argue this is \*fun\*, but some might look at you a bit strangely if that is your idea of fun...each to their own. As you get more comfortable with Emacs you'll possibly also find you begin to use many more of the Emacs bindings. I *still* use Vim navigation & modal editing, but Emacs bindings for everything else. That is arguably (one of) the strengths of Emacs - you can do what you want, how you want. \*edit - btw - if you're going to go down the 'roll you own' route, I would highly recommend watching David Wilson's series on the [System Crafters](https://www.youtube.com/c/SystemCrafters/) YT channel. You also can't go wrong reading Mickey Perterson's blog, [Mastering Emacs](https://www.masteringemacs.org/), and his book of the same name.
karthink · 2022-09-05 21:40
I meant how would you _hold down_ `C-n` to repeatedly send this key? You can't hold down `e` and `n`, because that's just pressing the left and right control together.
SequentialDesign · 2022-09-05 21:55
ahh, I can't do that. that's weak, though. I don't like using Emacs that way, just mashing keys without thought. if I want to go somewhere, I'll use avy-jump, i-search, phi-search, or other, more efficient tools (like scrolling (C-v) or cycling through marks (C-u C-SPC)). I find that brute force navigation can create bad habits. never been a fan of it
BecomingCass · 2022-09-05 22:06
I'll second being a fan of chording, but I attribute that growing up on Windows, where that's how you learned to navigate software if you wanted to be faster. I'm 100% a Linux gal now, but old habits die hard
thetemp_ · 2022-09-05 22:39
> I liked kakoune a little better because of the editing model but can't use it due to the lack of plugins. [Meow](https://github.com/meow-edit/meow) is an Emacs modal-editing package inspired by Kakoune. You might want to check it out.
easyEggplant · 2022-09-05 23:59
I promise you that if you don’t want to tinker with your IDE, eMacs is not for you.
karthink · 2022-09-06 00:00
> that's weak, though. I don't like using Emacs that way, just mashing keys without thought. This isn't about bad habits, there are many thought-out reasons to want to do this. Holding down `j` or `k` to scroll a few lines in Firefox (with Vimium), for instance. Or moving floating windows around with the keyboard in a tiling window manager. In the examples below, the home row keys I modified are the standard a-s-d-f j-k-l-;. Inside Emacs, I make heavy use of isearch, custom Avy actions, `pop-mark`, `point-to-register` etc. But moving the cursor forward or back a few characters is still the fastest way to do many common edits. Ditto with repeated `C-d` when deleting a few chars that don't form a syntactic unit (word/sexp etc). With QMK you actually have a way to repeat keys, where pressing (say) `j` twice and holding it down the second time sends a repeated sequence of `j`s. I tried home row mods with kmonad, which does not have this feature. What do you set the delay to before a tap is registered as a hold? I've tried 130-200 ms but typing the home row keys always feels laggy.
karthink · 2022-09-06 00:02
Doom is not synonymous with Vim keybindings. Vim-style editing is independent of Doom, whose value proposition is much, much larger. You can use Doom with standard Emacs bindings.
PetriciaKerman · 2022-09-06 00:15
I followed a similar path as you, vim for 2 years then moved to neovim because it seemed like the more active community and was quicker to adopt new features, then gave up and gave emacs + evil mode a try and I haven’t looked back. Emacs delivers the tightly integrated environment I was trying to create with tools like vim, tmux, ranger, etc. Before emacs I spent a lot of time trying to create a tightly integrated environment with a bunch of small tools but always there was some rough patches with integration, some key bindings not working always the way I expected or whatever, trying to understand settings spread across a million dot files for programs that are developed independently of each other. I am able to achieve what I want with emacs in ways I could not before. My key bindings are consistent, the colors are consistent, environment management is consistent. Don’t view emacs as a vim replacement, view it more like a terminal emulator replacement. Emacs is a bloated text editor, but it is a pretty slick environment to interact with your computer with
SequentialDesign · 2022-09-06 00:50
no doubt, sometimes `C-n` and `C-p` etc. are needed, but, at least for me, I don't want to hold such a keybinding, just one or two are all that's needed. I use the default tapping term, which I believe is 200 milliseconds.
tangonov · 2022-09-06 01:42
> I would prefer editing text with vim bindings so should I just start with Doom Emacs? Yes.
tangonov · 2022-09-06 01:48
Not to be a meany grumpy-butt, but this conversation can be found in this sub in one phrasing or another dozens of times. I do hope you find what makes your heart happy. As an ex-vimmer who is easily distracted, settling the heck down and just sticking to one thing has not been easy. Make sure you search around a bit more, you will find additional insight
[deleted] · 2022-09-06 02:35
[deleted]
FitPandaFu · 2022-09-06 02:36
From your comment, my suggestion would be to give vscode a try.
FitPandaFu · 2022-09-06 02:38
vim's text editing is more practical for the reason that if you ever have to use jetbrains or vscode they have decent vim plugins. Your emacs muscle memory will only work in emacs.
redguardtoo · 2022-09-06 02:55
"Starting with LunarVim(currently using) problems I have to configure plugins and after updates they have some breaking changes." In Emacs, the official package repos gnu&nongnu elpa are very stable. Most users prefer third party repo melpa. Melpa also provides a stable repo "stable.melpa.org" . I use stable melpa a lot. You can also create your own local repo from installed packages, see [https://github.com/redguardtoo/elpa-mirror](https://github.com/redguardtoo/elpa-mirror) So in my case, Emacs packages are very stable. If you are familiar with neovim, migrating to emacs+evil should be easy.
zim0369 · 2022-09-06 06:27
Cmon' I'm not that bad & I can't use vim that stripped down. Also, vscode would be too cluttered for me.
zim0369 · 2022-09-06 06:28
that was helpful. thanks. I also heard about spacemacs. I'm confused between spacemacs and doom emacs
redguardtoo · 2022-09-06 07:00
They are emacs config distrubtions you can use. Spacemacs and doomemacs are very popular among evil users. There are many other distributions at github. Every distribuion's author has his/her own style and taste.
Saikyun · 2022-09-06 08:08
I haven't had problems updating emacs, but I've found the few LSPs I used to vary widely in how usable they were. IIRC OmniSharp was nice, but I think the Emacs plugin is discontinued.
FitPandaFu · 2022-09-06 18:48
vscode is really good and sounds like what you are after. The vim plugin is actually decent and there is a neovim plugin that embeds neovim into vscode but haven't tried it since I'm happy in emacs land.
zim0369 · 2022-09-06 19:31
Ill try the neovim plugin
zim0369 · 2022-09-06 19:38
So do you use evil mode?
_suspicious_alpaca · 2022-09-07 20:51
I have similar experience to you regarding neovim. With every update, something breaks and needs fixing. On the other hand, my custom vanilla vim config is very stable and has been for a long time even with frequent upgrades to vim itself or packages. I’ve now switched to doom as my daily driver and having a very enjoyable experience so far. I recommend doom as a beginner.
PetriciaKerman · 2022-09-08 02:26
I do
BilboBaggings123 · 2022-12-12 03:49
Do you use emacs terminal version or the gui?
PetriciaKerman · 2022-12-12 15:39
Both, I start emacs in server mode and I aliased `vim` to `emacsclient -t` so I could ease into the new workflow. The biggest difference between vim and emacs is emacs is meant to be opened and stay open so it can accumulate state as opposed to opening/closing vim many times during a terminal session
BilboBaggings123 · 2022-12-12 16:37
Interesting , thanks