Comment by skydhash
2 days ago
> I had tried many times to switch to vim/emacs and the initial barrier to get a workable system always kept me from pushing forward
What’s that initial barrier? Both Vim and emacs has great documentation that includes a tutorial, a guide, and a reference.
What people often defines as workable system is replicating their old editors instead of learning the current one. Like adding a file tree on the side
>What people often defines as workable system is replicating their old editors instead of learning the current one. Like adding a file tree on the side
Well, kinda. I define a workable system as a system I, personally, can work with straight away, with a minimum loss of productivity. It is not at all meant as a judgement on how good plain vim/emacs are.
This workability indeed might require temporally replicating old habits while I learn the new ones, which lazyvim does. Vscode-like file trees, global search, or integrated terminal, for example.
It's also about discoverability, like the helpers shown through which-key. And the guarantee that a set of default plugins play well with each other, so that I can leave toying with the config for whenever I have the time.
Some people might think this is a crutch for properly learning the tool, but this is not my experience. I'm much more likely to get comfortable with vim and learn further if I can be in it 8 hours a day from the start. At first I used the integrated terminal to run git commands, now I invoke lazygit, which I love. At first I used the file tree to navigate, now I have custom commands to bring a file and its test suite side to side on a keypress. This gradual curve is what I was missing earlier.
Yeah, for most of us in the real world, we can't afford to be way underproductive for a week while we learn and set up our new editor from scratch. Learning vim is one of the greatest gifts I think I gave myself, and I'm extremely glad I did it, but it was not easy. A more gradual curve or even a crutch is completely fine in my opinion. I've seen plenty of people get started with vim just by putting them key bindings in their IDE and getting used to the motions, and then gradually moving over. The main key is to iterate, and not stagnate
> This workability indeed might require temporally replicating old habits while I learn the new ones, which lazyvim does
I'm not judging your for it, but to me that sounds like learning the violin by plucking the strings like a guitar. You're increasing the learning period by following old habits which may even be harmful.
I think it's better to just use the new editor sparingly, learning what you need, then switch fully once you're comfortable. A filetree is never necessary unless you're actually exploring and a file manager would be better for that. Vim has global search with `grep` and the terminal is available through `ctrl-z` and the `:terminal` command.
I've seen people touting Neovim setup that are just making things complex and fragile for no reason.
>that sounds like learning the violin by plucking the strings like a guitar.
I'd compare it more to learning photography without going for manual aperture and developing analog film straight away. You'll have a better experience if you learn stuff like framing with an automated camera that frees you to shoot a hundred pictures daily and focus on a certain skill.
I am increasing the learning period, that much is true. But if I can make use of my daily 8 hours of work as practice, that makes up for the delay, because I can get much more practice.
Maybe a student or a hobbyist can afford to spend 3 minutes nailing the regex while they learn to search and replace, I just can't be fighting that kind of friction regularly at work.
1 reply →
Learning an entirely new editor is a barrier. Documentation or not, that's brand new muscle memory you have to develop alongside the actual task of coding.
I get that using vim typically includes obsessive forms of efficiency, but some people just want to focus on coding in a way that's comfortable to them. Sometimes that means having a side panel.
>Sometimes that means having a side panel.
I do not even need that. Modal editing is enough to keep me away from all the VI clones. I hate it with a passion.
I have a fully customized Emacs that I use for anything Lispy and it's great for that purpose but everything else is just "ok".
I try to use Zed but since it is a commercial offering it is just a matter of time until it gets entshitified too.
Vscode is/was really good but it seems to get worse and it's Microsoft.... I run out of editors it seems.
Honest question, what is it that you hate about modal editing?
3 replies →