I guess it depends on your definition of an IDE, and where you're most comfortable/productive. I see a lot of posts about autocomplete, refactoring, linting, tooltips, tests-by-cursor/file, snippets. Thanks to a very friendly plugin community, you can get all of these in vim, emacs etc. I like vim, and it has nothing to do with hubris.
For me it's mostly about:
1. proximity to the terminal: I find cli tools very useful for most of my daily tasks. Using an editor puts the terminal first, and my editor second. One-off tasks are a tmux split/tab/session away and everything is neatly organized.
2. consistent interface: Working with a terminal is neat because everything is text and it is composable.
Working in vim, all menus are just buffers - you can navigate them the same way as you would your code. Searching, navigation, jumping between windows/menus, filtering -- everything stays consistent.
3. quick n' dirty workflows: If I identify a task-specific workflow I want to improve in vim, it is pretty easy to drop in functions and/or keybindings to do what I want. The interface was built in a way that makes this easy. Writing a plugin for visualstudio, or jetbrains etc. requires knowing a lot more about the editor you're working in and how it's built. Maybe it just feels that way to me.
4. 0% adjustment when working over SSH: tabs, splits, etc. both in my editor and terminal are identical in an SSH session. No discomfort. Mostly useful at home.
5. low distraction: This one's personal. IDEs are intimidating, hundreds of buttons, menus, logs prompts all fighting for your attention. If I click through a deeply nested menu I often forget what I'm doing - especially if there is a fire. Functions and Muscle memory works for me. It clearly does not work for everyone.