I use vim. Here are some things I like about it and don’t
1. Default key mappings.
I feel at home(pun intended) with navigation keys laid out horizontally in the center of the keyboard. This might be just because the arrow keys are a bit unergonomically laid out on most keyboards.
2. Terminal support.
As of this year of writing. Having GUI as well as terminal support is still handy as remote desktop is not always responsive enough.
3. Lightweight. Disregarding IDE’s, editors don’t usually take too long to start up or use too much memory these days. But I can still install vim pretty quick and reliably on a host of operating systems. Can’t say that about notepad++.
4. Internal documentation.
The ease at which you can search for documentation terms inside the application is something I would like to see elsewhere.
5. filename completion
Vim comes with a function to complete by file paths which I like.
As in beer and freedom!
7. Opens large files
Try opening a gigabyte file in notepad. It won’t work. Vim has one of the best large file supports I’ve found.
8. Scripting Language execution.
The scripting language is built in to the editor, which is a good thing so i don’t have to obtain a compiler to program it.
1. The caret.
In GUI mode, the caret is still a block which is uncomfortable to me for reasons such as being able to read the character underneath it. It also seems harder to tell which character I’m on.
2. The scriptring language sytnax.
In vim local variables are marked with l: ,function variables a:. This is quite an uncommon way of doing something that is often handled better in other language designs. It reminds me of Hungarian notation which I dislike.
3. Background files in the same directory you are editing in.
I have gotten out of trouble a few times by using some of the background files in vim, however they are largly obtrusive and made redundant by versioning systems like git.
4. No Full terminal split.
In emacs you can split a full terminal. The reason I want this is because my ability to use terminal session apps like tmux still isn’t good enough.
5. Replacing the current word
No short default way to replace cursor word with current buffer.
6. System Paste buffer shortcut
The default shortcut to copy to system clipboard is too many Characters. Also, I can’t remember when I’ve last benefited from having something copy only into the editors paste buffer.
7. Session restoring.
I like how notepad++ remembers which tabs I’ve opened by default.
8. Inferior text based GUI directory browser.
I like how in other GUI editors such as with a plugin for notepad++ or textmate, you can get context menus and an individually font sized directory tree.