Sorry, I don't mean autocomplete. I mean other editors that do not rely on a large number of keyboard shortcuts. I have never seen someone use vim quickly.
I've been using vim inside of VS for a while (ViEmu and VsVim) as well as in Emacs (Evil) and straight vim for light editing. Of course typing a word out will be faster with autocomplete - it's less keystrokes. Where I find speed is navigating around lines, changing/deleting stuff (like changing inside parens or a string, deleting multiple lines, etc). It's small stuff that really adds up.
The real killer is quick macros. If I have to transform a bunch of lines, it's just a "qa<work>q" and a "@a" away. It's pretty amazing.
At first vim doesn't seem that great, but after using it for a while it's indispensable. Somewhere along the line you go from having to think about all the strange keystrokes to just getting a feel for it. Doesn't hurt that it makes you feel like a wizard, too.
Comparing with Emacs is a hands-down win - having to press Ctrl Alt whatever just to move around is silly. Emacs+Evil is sweet though. Comparing with VS's editor (Windows style, with Ctrl+Arrows for things) is also a huge win. Windows editing just isn't amazing.
VSCode's lack of full vim support is very disappointing.
My big complaint against VIM is the default keybinds are not dvorak-friendly, and I don't want to spend a century messing with my keymap to get it to feel comfortabe. I typically just use IntelliJ for everything it has language support for, though I use vim for everything else still.
That's because they're faster than the eye can see... :)
No, seriously now. I've been a vi/vim user for a decade or so, but it only "stuck" when I realized that the single key commands are verbs and that the right way to use it is to experiment less and plan ahead more.
I'm tremendously productive with it when I already know what I have to do in batches (refactor blocks, rename multiple variables, etc.) rather than just hunting and pecking at things with a mouse.
That said, I only use two editors these days: vim and VSCode (without any sort of vim bindings, which I've not yet investigated fully). The former for quick dips into existing code bases where I already know what I'll be doing, and the latter for new projects.
Plus, of course vim is essential if you ever want to be productive (or even borderline effective) on a server environment. I'd stick with it if I were you.
It's a learned skill. If you seriously want to learn it, just use it as your only editor for a while.
Its learning curve is a lot like git: It's overwhelming at first but you only need to know basic commands. Then once you understand how it works, you'll pick up on the rest faster and faster.
The real power of vim is the ability to do very quick "programmatic actions".
"Delete" -> "d". "Go to end of next block" -> "}". "Delete next block" -> "d}". "Delete next 3 blocks" -> "3d}". "Repeat that action five times" -> "5.".
Too many people are intimidated by vim's nature of being a command line editor, not a real IDE etc. But its power has nothing to do with that, it's really just the input style.
Well Vim is quick because of the different modes, normal, insert and visual. I can cut and paste really fast due to knowing shortcuts. I don't know if it is worth learning unless you are coding/editing for hours. The way most people have picked it up was that there were few choices and we grew up with it. For some new people they also like it but it isn't for the majority of people since it doesn't "click." Editing speed is very low on the programming skills.
> Sorry, I don't mean autocomplete. I mean other editors that do not rely on a large number of keyboard shortcuts. I have never seen someone use vim quickly.
I'm not sure I follow. Have you seen people use vim slowly? Or have you not seen anyone use vim at all? Vim (from v7?) has built-in "omnicompletion", by default bound to ctrl-n -- that you can use for everything (by default it "tab completes" against words in the buffer/file). There are various plugins for eg: writing html, and ways to set up full autocompletion.
In general though, typing isn't what limits productivity -- and I've seen some studies that indicate that even though people think they're faster using just the keyboard, most people are actually faster at editing text with a mouse (Obviously, people type faster on a keyboard).
Personally I prefer vim for two reasons: 1) I can't use a mouse day-to-day due to latent carpal tunnel syndrome, and 2) I feel it's easier to stay in the flow, and work efficiently with a modal editor. This has to do with vim's use of verbs, nouns (text objects) and modifiers/ranges (adjectives/adverbs)[1] - eg. 3dl (3x delete line) and 3dw (delete 3 words). The other has to do with easily moving around by regex, or go directly to line-number.
For a look at what a "modern" graphical text editor could/can work like, have a look at Russ Cox demoing how he works with the ACME editor: https://www.youtube.com/watch?v=dP1xVpMPn8M
If I could use the mouse for editing, I'd try to learn ACME. I still think it might be an interesting interface for hi-res laptops with proper pen input (like a Surface Pro 4 with a keyboard - using the pen for mark/editing, and the keyboard for input).
But more than anything, both for a glimpse into vim, and also for getting more efficient with whatever editor you are using - I recommend Bram Moolenaar's (creator of vim) talk on "Seven habits of effective text editing 2.0":
https://www.youtube.com/watch?v=p6K4iIMlouI