Neovim is such a weird derivative utility to me. Derivative/forked software usually isn't very successful to begin with, but then Neovim makes attempts to be modern and it's so not appealing at all. Here are some 5 second examples.
Example 1:
nvim .
Still uses Netrw, which is fine, but doesn't even attempt to do things like:
let g:netrw_preview=1
let g:netrw_banner=0
let g:netrw_browse_split=4
let g:netrw_liststyle= 3
let g:netrw_altv=1
let g:netrw_winsize=8
So that you get something that remotely resembles a modern text editor's tree view.
Example 2:
set number
Line numbers are off by default. Why? Why are all of these other configurations on by default? Every editor shows line numbers by default and Neovim doesn't make this 1 line configuration effort to look like everyone else.
Example 3:
set mouse
Mouse is off by default. Again, why? I get that it's a terminal editor, but if the technology is there to allow me to select text with my mouse, why do we need act like luddites?
After setting up my .vimrc file with sane defaults and a bit of an attempt to use the editor in earnest, my conclusion is that Vim/Neovim is just a bad editor.
I want more from my editors.
Here's a .vimrc file that attempts to make Vim and compatible editors more like Visual Studio Code, Atom, and Sublime Text:
You might reconsider your expectations. Neovim is not trying to occupy the same space as something like VSCode or Atom. Its focus is on being extremely extensible without sacrificing performance - just look at the website, it's right at the top of the feature list.
The intention is for it to serve as the core technology for any number of vi-like text editing setups. It's not batteries-included, but there are batteries everywhere if you look.
Mouse is off by default. Again, why? I get that it's a terminal editor, but if the technology is there to allow me to select text with my mouse, why do we need act like luddites?
Because it would be unexpected and unwelcome behavior for most users, and maybe even introduce undefined behavior in clients that lack mouse support.
After setting up my .vimrc file with sane defaults and a bit of an attempt to use the editor in earnest, my conclusion is that Vim/Neovim is just a bad editor.
You haven't really explained why you think it's a bad editor, beyond the default settings you don't like.
I don't want line numbers, IMHO it's an anti-pattern to have them. I'm not writing code trying to maximize the number of lines, or show my boss "look I wrote 10k lines today, so productive!". I'm trying to write less lines of code--if a function is sprawling past a page then I'm getting suspicious that it's too complex.
If I have to remember "ok line 7000 is where the weird permission business logic starts" that's a failure to comment and make clear how the code is structured.
If tooling is telling me there's a problem on a specific line then I should have a code action or command to take me directly to that line, I shouldn't have to juggle navigation manually.
I'm confused on the arguments presented. Is it that the out-of-box functionality isn't as good as other GUI based editors, or that certain things are off by default?
I agree that certain settings shipped with neovim could be expanded. There should really be a process to elect plugins and settings that are generally accepted as "good" for neovim.
Plugins like Gruvbox, vim-surround, coc.nvim, vim-plug, nerdtree etc. have been continuously maintained for years, why not make it easy for new users to install and use them without having to go on the path of wonder?
Example 1:
Still uses Netrw, which is fine, but doesn't even attempt to do things like: So that you get something that remotely resembles a modern text editor's tree view.Example 2:
Line numbers are off by default. Why? Why are all of these other configurations on by default? Every editor shows line numbers by default and Neovim doesn't make this 1 line configuration effort to look like everyone else.Example 3:
Mouse is off by default. Again, why? I get that it's a terminal editor, but if the technology is there to allow me to select text with my mouse, why do we need act like luddites?After setting up my .vimrc file with sane defaults and a bit of an attempt to use the editor in earnest, my conclusion is that Vim/Neovim is just a bad editor.
I want more from my editors.
Here's a .vimrc file that attempts to make Vim and compatible editors more like Visual Studio Code, Atom, and Sublime Text:
https://github.com/andrewmcwatters/dotfiles/blob/main/.vimrc
And it's still bad.