I was really happy with Vim for a long time. In fact, I just last month learned how to use “vi-mode” in the ruby console. I have tried various editors vim emulation options, but they never quite feel natural. Visual Studio’s VsVim was the best I had found, it actually supports a vimrc file you can use with standard VimScript. VS Code, Atom, and Sublime Text all have their own vim plugins or settings, but they’re either limited or buggy. Part of it is my own dependency on plugins, some of which I still haven’t found decent alternatives for. But really, if I can’t navigate using the home row keys through my file tree, buffer, or panels, it just doesn’t feel like vim anyway.
Unfortunately, there just isn’t a clean way to use vim on Windows. Gvim is ok, but I have trouble with the window re-positioning with NERDTree and I always forget it’s not terminal vim and end up moving my cursor somewhere I don’t want with a mouse click. Windows has a lot of terminal emulator options, but for whatever reason they glitch out when I’m navigating in vim. The Windows 10 command line will skip a redraw and suddenly I have no idea what line I’m on, ConEmu will just black out half the file, and MobaXterm spontaneously stopped highlighting my selections.
Plus, with the PHP development I’ve been doing lately, I really needed a plugin for some code-completion. I had hacked some scripts together in Ruby, but they weren’t really intelligent enough to rely on long-term. Sublime Text has some really good options, and it’s much faster than the electron apps (Atom and I think VS Code). I worry a little about the community, since I do rely so heavily on plugins, but it seems to be strong enough for my purposes. Python is on my list of languages to learn, so maybe some day I can contribute.
So I’m re-adjusting to Sublime Text. Now that I’m used to some more specialized shortcuts in Vim, I’m finding that Sublime Text does have viable alternatives. I tried it out in “vintage” mode for a little while, but gave up when I realized the visual selection mode doesn’t quite work with some of the other tools. The PHP Companion plugin will be a big help. I’m trying to follow the principle I learned when I started Vim, which was to only install plugins as you need them rather than dumping in a curated selection right away.
Every now and then I’ll type a ‘;w’ into the file or hit ‘Ctrl+[‘ and mess up the indentation. But I’m having to think about it less and less. I will still plan on using vi mode in bash and irb, since there really isn’t a better alternative for navigation. It’ll take some time, but eventually I think I’ll be able to stop thinking about my editor again.