Recs.
Updated
SpecsUpdate
Pros
Pro Keyboard-based, mouse-free interface, and supports trackpad
There's no need to reach for the mouse or the ctrl/alt buttons again. Everything is 1 or 2 key presses away with almost 200 functions specifically for text editing. Vim does support the mouse, but it's designed so you don't have to for more efficient usage.
Versions of vim like gVim or MacVim still allow you to use the mouse and familiar platform shortcuts. That can help ease the learning curve and you'll probably find you won't want to, or need to, use the mouse after a while.
Pro Excellent performance
Because it loads the whole file into RAM, replacing all string occurences in 100MB+ files is quick and easy. Every other editor sort of died during that. It is extremely fast even for cold start. Vim is light-weighted and very compact. In terminal, it uses only small amount of memory. Anytime you invoke vim, it's extremely fast. It is immediate, you can't even notice any time lag.
Pro Support for Typescript language server
Plugins such as Ale allow Vim to integrate with tsserver, providing real-time feedback on your code's syntax and logic. This gives similar functionality to what traditional "heavyweight" IDEs offer while still keeping resource usage low enough to run over an SSH session.
Pro Ubiquity and portability
Vi/vim exists on almost all Unix-like platforms, it is the de-facto Unix editor, and is easily installed on Windows. All you need to make it work is a text-based connection, so it works well for remote machines with slow connections, or when you're too lazy to set up a VNC/Remote Desktop connection.
Pro Everything is a mnemonic
No need to memorize different key combinations for things like deleting the text inside of a block or deleting the text inside of a pair of quotes. It's just a series of actions, or nouns and verbs, or however you prefer to think about it. You want to delete, so you select "d", you want it to happen inside something, so "i", and you want the surrounding double-quotes, so just ". But if you were changing the text, or copying it, or anything else, you'd still use the same "i" and ". This makes it very easy to remember a large number number of different extremely useful commands, without the effort it takes to remember all of the Emacs "magic incantations", for example.
Pro Useful undo features
Vim does not only offer unlimited undo levels, later releases support an undo tree. It eventually gives the editor VCS-like features. You can undo the current file to any point in the past, even if a change was already undone again. Another neat feature is persistent undo, which enables to undo changes after the file was closed and reopened again.
Pro Extremely portable
Vi/vim exists on almost all Unix-like platforms. It's the de-facto Unix editor and is easily installed on Windows. All you need to make it work is a text-based connection, so it works well for remote machines with slow connections, or when you're too lazy to set up a VNC/Remote Desktop connection.
Cons
Con Difficult learning curve
You'll spend a lot of time learning all the commands and modes supported. You'll then spend more time tuning settings to your needs. Although once it's tuned to your needs, you can take your .vimrc to any machine you need and have the same experience across all your computers.
Con Lacks many modern programming features out of the box
Syntax checking, autocompletion, file management, plugin/update management, etc all require plugins to get working. It is easy to get lost trying to find the correct plugins without wading through dozens of blog articles, although general programming language features like the Language Server Protocol is slowly making this less of a problem.
Recommendations
Comments
Flagged Pros + Cons
Pro Keyboard-based, mouse-free interface, and trackpad support
There's no need to reach for the mouse or the Ctrl/Alt buttons again. Everything is a mere key press or two away with almost 200 functions specifically for text editing. Vim does support the mouse, but it's designed so you don't have to use it for greater efficiency.
Versions of Vim, like gVim or MacVim, still allow you to use the mouse and familiar platform shortcuts. That can help ease the learning curve and you'll probably find you won't want to (or need to) use the mouse after a while.