My vim journey
Vim is basically a text editing program just like VSCode but it run on the terminal and it’s keyboard-centric. Meaning that you don’t need to use mouse at all and that can lead to be more efficient at coding. It often already pre-installed on linux distro and MacOS. There’s also some different version like vi, vim and neovim. I’m personally using neovim since it’s easily configure using lua and more modern.
If you really interested learning vim I really recommend just run vim tutor and then using VSCode or Intellij with vim extension. Vim learning curve is really steep and by using your favorite text editor/IDE it will ease out the learning curve. You still can use your favorite shortcut while building new muscle memory using vim. I’m using Intellij IDEA with IdeaVim plugin daily. In my experience Intellij shortcut rarely conflict with plugins and it’s just really powerful. There’s even some plugin like surround that’s build-in in IdeaVim which is really handy.
I’ve been using vim or vim concept for years now and lately I’ve been trying to use nvim as my default text editor. The
first time I’m interested in learning nvim most likely because of some YouTube videos saying how efficient to make your
hand stay on the keyboard instead of reaching your mouse every single time. First time using it, just like other says
it’s really rough. The habit and muscle memory of using arrow keys to move and using mouse to block some code is really
hard to change. But little by little I’m getting used to using hjkl
to move around. I’m also change my caps lock keys
to esc
since esc
will be the most key that you will press. CapsLock
will really screw you up big time while
using vim.
Once I’m used to hjkl
I’m trying to make everything into hjkl
compatible. On windows I’m using AHK(Auto Hotkey) to
map the arrow keys while holding the CapsLock
key. On the browser I’m installing Vimium extension, on linux I’m
using Keyd and on Mac of course I’m using Karabiner. And at that time I realize that
CapsLock
actually one of the most useless key regardless if you’re a vim user or not. It’s taking the prime position
because it’s one key away from pinky on the home row. So I’m setting it to esc
when pressed and arrow key when combine
with hjkl
.
Typing with vim is suddenly really fun since when I’m already have the muscle memory, I only need to think what I’m
going to type next and nothing else. No back and forth with the mouse or even touchpad. My hand always on the keyboard.
Also you always learn something new to make the vim command really efficient. At first It’s just to move the cursor,
then how to select the whole word with just 2 key stroke (ve
). And then I learn macro which really help me on some
mundane task. I’m really learning everyday by using vim and I believe I will still be learning for years to come.
If you interested with my nvim config you can check my dotconfig repo which I will update regularly. At the time of writing this it’s still basically kickstart with some addition of mini.nvim. About 5 months ago I also buying My first split keyboard which I talk about here. And check some other random though that may or may not be I create on the HomePage.