this post was submitted on 25 Jun 2023
9 points (100.0% liked)

Text Editors

459 readers
1 users here now

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 2 years ago
MODERATORS
 

Which one to choose for development? Advantages & disadvantages of each?

top 22 comments
sorted by: hot top controversial new old
[–] em7 7 points 2 years ago (1 children)

According to wikipedia, this war is raging since 1985 https://en.wikipedia.org/wiki/Editor_war .

Pick what you want, either is good. I use vi for editing text files on linux servers which don't have Emacs installed. On everything else, Emacs.

[–] ruffsl 3 points 2 years ago

First thought seeing post's title (still enjoy reading the opinions, none the less):
Mad Max: Uh Uh, That's bate

[–] dmh 7 points 2 years ago (1 children)

¿Porqué no los dos?

https://github.com/doomemacs/doomemacs

I absolutely love the concept of modal editing provided by vim. But if you're into all the things that Emacs and you don't have the patientce to build your config from scratch, then Doom Emacs is for you.

[–] zstg 1 points 1 year ago

+1 for Doom Emacs. It's well-setup OOTB.

[–] CollectiveOfCells 3 points 1 year ago

I use Emacs and have been since around 1986. If you're big on extensibility, Emacs has the elisp programming language built in. Vim used to be more performant than Emacs, but with today's processor speeds, it is hardly an issue. Emacs can emulate other editors, and as someone else mention Doom Emacs gives you the best of both worlds.

If you are on a Mac, all the text boxes already use Emacs keystrokes. Ctrl-a = Beginning of Line, ctrl-e = End of Line, ctrl-k = Kill to End of Line, ctrl-d = Delete Character, etc.

[–] Hexarei 3 points 2 years ago

I use Neovim with a custom config, personally - Though I do currently have "look into Doom Emacs" on my personal todo list ... So it really depends on what you're after honestly.

[–] HisDufusness 2 points 2 years ago

If you love hacking/customizing your system and willing to spend time on it, go with Emacs. If you want something lightweight and fast with moderate customizability go with Neovim.

[–] PaperDevil 2 points 2 years ago (1 children)

Very interesting question indeed, one that is often debated among programmers.

It ultimately comes down to what suits your personal style and requirements.

Mostly, both have strengths and weaknesses, so it's hard to universally recommend one over the other.

[–] nous 5 points 2 years ago (2 children)

I used to be on the vim side of things. But recently have switched to helix. It is a modal editor similar (but a bit different from vim) but with most of the things you need plugins for built in, so no need to spend hours finding plugins and configuring things.

But whichever you like is really a personal preference. I have seen far more people use vim in the wild than Emacs. And you can configure Emacs with vi input mode.

If you work with servers knowing basic vi is a must as it is often the only editor installed on the system.

[–] Hjagu 3 points 2 years ago

Kakoune/helix is also more responsive then (neo)vim````

[–] lavafroth 3 points 2 years ago

Thanks for bringing up this alternative to Neovim. I've been playing around with it for a while. So far, it's really nice!

[–] jrop 2 points 2 years ago

I am a NeoVim user, and I started learning emacs once, but was really unimpressed with the multi-key shortcut soup. Now that Lua is baked into NeoVim anyways, and plugin devs don't have to be Tom Pope, I expect the quality of vim plugins to explode and I'm hoping that we'll catch up to all the things emacs has been ahead on in the next few years.

[–] choroalp 2 points 2 years ago* (last edited 2 years ago)

Used to be a huge Emacs nut (ı still like it) but i converted to neovim because its more practical in a modern sense but helix is slowly taking me over. especially due to its speed and still looking very beatiful by default

[–] funbike 2 points 2 years ago

The best path depends you how much you like to tinker, your preferences, and your target platform. The learning curve is massive for either, and even after that it will take a lot of plugins and configuration to get close to feature parity of an IDE.

You might consider an IDE plugin at first. For example, there's a VSCode plugin that integrates actual Neovim as the editor. There's a Jetbrains (intellij, android studio, webstorm) plugin, IDEAVim, that very closely emulates Vim.

All that said, I use Neovim and prefer it over Emacs. The excellent Lua support in Neovim has eliminated the biggest complaint I had with Vim (vimscript vs LISP). Neovim has LSP support and can communicate with the same language backends that VSCode uses.

No matter what you do, learning Vim keybindings can be very useful as a lot of websites and local apps support it (e.g. gmail, github, less, lazygit).

[–] MrJay 2 points 1 year ago

I would say the same as most it really depends on what you are doing, I program in Lisp a lot so Emacs is a natural fit. Vi/Vim/Neovim are in my opinion Technically better they are smaller and simpler however Emacs is a much bigger and more versatile. I ended up choosing Emacs specifically because it was bigger and more versatile. I do plan on giving Vim a try again sometime to see if it fits my needs better, once learning Vim Keybinds/Motions I find it relatively easy to switch between them, except when it comes to the editor specific apps like Org Mode.

[–] syl 1 points 2 years ago (1 children)

Sublime text! Neovim and the likes just stop being performsnt enough once you start adding extensions and I sort of need a good GUI. Sublime is still unbeatable, sadly.

[–] Hexarei 2 points 2 years ago (1 children)

Interesting, I've got plenty of plugins in my Neovim setup and I have zero performance problems. That includes auto completion, tree sitter, surround... I'm curious what plugins you were using that made it slow down

[–] andnekon 1 points 2 years ago (1 children)

LSP and a really big project, although it's not necessarily neovims fault

[–] Hexarei 3 points 2 years ago (1 children)

Now you've got me curious how big of a project that was - I've not really had any slowdowns or speed issues at all with Neovim, even paired with an LSP in some of my team's biggest projects. Few hundred thousand files not counting vendor libs, that sort of thing.

I think the only thing I've ever seen really slow down was Telescope, and that's because I have it showing previews of the selected file.

[–] andnekon 1 points 2 years ago* (last edited 2 years ago) (1 children)

Few hundred thousand files

My definition of "really big" is changed. I was talking about around 10k files of source code.

The project is in java, the machine has 8 Gb ram, and when I open a different file it sometimes catches brief freezes - not to the point where it stops "being performant enough", but still noticeable. Also, sometimes nvim-tree is slow when I expand directory, which is annoying

[–] Hexarei 2 points 2 years ago

Hmm. I'm not super familiar with Java's LSP setup and such, but my instinct is that it might be something to do with the performance of its syntax highlighting. The person I am, I can't help but wonder what plugins you were using, but I won't push to try and help you get it solved necessarily. Hope you've found a good solution with your current editor though!

[–] [email protected] 1 points 1 year ago

I don't have the solution.

I just want to say that I try helix since few weeks and it's nice!