Resolves N/A if I don't end up trying to learn Vim, resolves Yes if I do and am glad I tried to, No if it is too frustrating and I give up/it feels like a waste of time, somewhere in between if I had mixed feelings.
I'm not necessarily referring to the specific Vim program—if I use the Vim keybidings feature in Obsidian extensively then that would count. It's about attempting to develop the skill set, not about installing Vim.
Related questions

I don't think spending the time to become a vim god is worth it but learning the basics is useful. Great for remote shells and if you're already working in a command line interface and are too lazy to leave it. Sometimes I just want to peek into a file and make some quick edits and its nice. I wouldn't get too worked up over trying to utilize complicated strings of commands; just go for the basics one step at a time and your learning can compound as you use it naturally. vimtutor is how I started, and here's my config (rename to .vimrc and place in ~/) in case it's useful.

I always like using keyboard shortcuts over my mouse whenever possible, such as in my browser and OS. If you enjoy the journey of perpetually optimizing your efficiency and understand it is a thing you never reach but always get better at you'll be happy with it.

@April If you haven't done this already, I suggest trying inoremap jk <Esc>
or similar in your vimrc so your escape key is [eg] j-then-k-in-quick-sequence. Caps lock is nice but you can't beat letter keys for ergonomics and since you're escaping all the time in Vim it makes a huge difference

As someone who has spent hundreds of hours editing code in vim: it was great in its day -- which was mostly when your parents were toddlers -- but we actually have learned some things about UX design and optimization since 1974 (leaving learnability aside). Modern IDEs have features like regex search and replace available with no more keystrokes than vim.

@ML using vim as the main coding environment is only one use case – I mostly use it for editting config files on remote servers or analyzing or formatting documents my IDE is not well suited for.
@Lorec Well, code refactoring. to start with. Not just renames (which can be done in vim with a macro activating an LSP plug-in) but things like e.g. IntelliJ's "pull members up", "replace inheritance with delegation", "extract interface". In IntelliJ's case there are also quality-of-life things like many dozens of code inspections (like "Loop can be replaced with Collection.removeIf()") most of which offer two or three-keystroke shortcuts to fix them for you in various ways (such as by replacing your loop with a provably equivalent call to Collection.removeIf()). It is also nice to, when stopped at a breakpoint while debugging, mouseover a variable to see its current value with zero keystrokes required. I could go on (without mention any generative-AI-based features).

@ML I agree with this. I use IntelliJ at work, but the best part is the IdeaVIM plugin. Most time spent coding is still humdrum vertical and horizontal navigation followed by inserts and deletes, which VIM makes less unbearable. I love that basically every IDE has a VIM plugin, so I can bring all this mundane utility with me across IDEs and into server ssh sessions as well.

@ML Thanks for the thoughtful response! To clarify, refactoring falls into the category I had in mind when I said "extensive autocompleting". I'm turned off as a user by any features that try to understand the semantics of my code and do anything with that, beyond simple auto-indentation and paren-matching in Lisp specifically - IME it doesn't work nearly as well in other languages.

You can also try using Vimium or Vimium for Firefox for browsing. I‘ve been using it for a couple of years and found it to be really nice to control the browser via vim keyboard commands.
The semester started last Monday, so my vim learning attempt (if I end up trying it) will probably not be until I get settled into a routine better

@HenkPoley More than nice: you’ll need a real editor if you want to work efficiently on a remote machine via ssh and this is either vim or emacs.

@HenkPoley yeah, especially on a slow connection, being able to make precise edits without having to wait for the cursor is pretty useful

@GrettaDuleba Mostly VSCode. I'm not very sure how to measure adeptness, but like—I don't know, a normal amount of adeptness?






























