Hacker News new | past | comments | ask | show | jobs | submit login

How many lines of vimscript have you written? No, copy-pasting config lines from someone's dotfiles doesn't count. How many times have you opened the source code of some vim plugin you are using and tried to modify what it does?

If I were to hazard a guess: zero. That was also me during ten years of vim usage. Vim encourages the mindset of mastery = learning a bunch of tricks, remembering them and incorporating them into muscle memory.

Emacs on the other hand encourages the mindset that my editor is a programmable tool, I am a programmer, I can make it do whatever I want. You are always just one click away from the source code implementing any functionality of your editor, which you can, if you choose to do so, modify and evaluate on the fly.

> vi is available basically everywhere

Emacs-like shortcuts are also available wherever you have readline (e.g. many shells).

>This has saved my ass at least twice where I couldn't access vim or had internet access to install XYZ editor.

In those situations, I also still use vim. But 99% of the time, I am not on some remote machine, I am on my personal computer, so I can choose to use a tool that is not installed by default. The basic vim commands I have internalized over the years are sufficient for those odd jobs.

>So as a power vim user I see no reason to switch.

To each their own. Personally, I think that Emacs is a much more rewarding tool to master.

>most editors now have support for reasonable vim bindings

So does Emacs :)

In fact Emacs' vim plugin is probably has the most feature rich of all the vim emulations.




The vim landscape today is pretty incredible. Neovim nightly supports native LSP (and Treesitter!) so you get all the functionality that VSCode pioneered.

Neovim also supports configuring your setup in lua, certainly a better language than vimscript (which I agree isn't great) and lets you write native neovim plugins in lua.

Emacs of course supports LSP (and probably treesitter), I'm just reflecting on the fact that (neo)vim continues to evolve.

I think without neovim, vim popularity would have continued to degrade. Though the community, especially with packages like Coc.vim, continues to push vim along and bring support for external features. I personally think neovim is the future over vim given its management and native support for LSP and Treesitter.

In either case, its awesome both editors are still going strong! While VSCode and JetBrains' IDEs are great, they always feel crowded compared to vim. I love that both (neo)vim and emacs still have such large communities behind them. Both are great examples of software that is old, receives improvements and evolves, and continuously delivers value to their users.


Vim syntax isn't a "bunch of tricks" though. It's a syntax, with enough consistency that you're able to figure out new commands without looking them up. For example, "d$" cuts from your cursor to the end of the line, and since "y" stands for yank/copy, you can then figure out that "y$" copies from your cursor to the end of the line.

And also, the syntax is shared with other Unix tools like man, less, sed, etc.

I'm not saying Vim is objectively better than Emacs or anything, but the basic commands gg, G, d$, dd, y$, yy, ^, $, and so on really are handy as a tool.

(Also worth noting that the syntax has overlap with Regex, so "^" and "$" are very natural choices for commands that jump to the beginning and end of the current line.)


It's certainly easier than editing an XMonad config without knowing Haskell.


I don't think that there is an XMonad config file. XMonad is a library and the thing in your home directory is a program that gets compiled into being your window manager, implemented with that library.

Emacs and Vim aren't quite like that.


I use both vim and xmonad and have to disagree, as I have a lot of experience configuring both. Config for both is using a file in a programming language specific to each. One being compiled is not a significant difference IMO.


> How many lines of vimscript have you written? [...] How many times have you opened the source code of some vim plugin you are using and tried to modify what it does?

Zero, thank god. I have enough work to do at work. I don't need to make a hobby out of my editor.


"How many lines of vimscript have you written? No, copy-pasting config lines from someone's dotfiles doesn't count. How many times have you opened the source code of some vim plugin you are using and tried to modify what it does?"

Well, I haven't had a real reason to do so. I used to use more plugins but I slowly am paring it down to a much more minimal configuration. I'm not a huge fan of vimscript, but I don't think it's worth changing over to emacs for. Plain vi actually isn't that bad, depending on the version.

"Emacs-like shortcuts are also available wherever you have readline (e.g. many shells)."

Sure, and I appreciate the irony of learning some emacs shortcuts for readline while using vim. But that's different from editing. The only time I've seen vi not available is in scratch/alpine linux containers where busybox essentials weren't installed either.

I suppose my use case is different because I work a lot with containers, and minimal install systems in general.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: