Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "neovim"
I had been working on this file for the last 4 or so hours.
And accidentally deleted it with NerdTree (mdy).
300 loc. poof.
scoured internet for recovery procedure.
... to no avail. just about to give up.
here comes the climax: .....
It was stillllll...... in the NEOVIM. BUFFER.
vim got my back.
praise you vim lord.
F*ck me, for "i-dont-know-how-many" days I've found myself scripting Lua to implement stuff for NeoVim.
Stuff that Emacs/VSCode/Sublime already have.
But no, let's redo it in Lua and have an incomplete LSP.
Let's use tree-sitter (which follows TextMate's grammar btw) BUT let's implement an API for it in an incompatible way that removes TextMate's grammar which other editors, and LSP btw, use.
And don't let me get started on NeoVim's forefather, ViM, which I've also used for a long long time.
Don't get me wrong, NeoVim IS A GREAT IMPROVEMENT OVER VIM, but while improving Vim in a lot of ways, some decisions made are almost impossible to remake without massive breaking changes, like, for example:
The decision of REWRITING Vim's C code instead of wrapping its core with Rust and going on from there. Like Deno does it, like Tree-sitter does it. F*CK ME!
"Oh, but Lua doesn't have great Rust FFI..."
Well, F*CK THAT, JUST DON'T CHOOSE LUA.
"You can use msgpack..."
Seriously, compromise performance on an editor whose mantra IS PERFORMANCE?
Anyhow, I'm leaving.
It's not that I can't stand to stop what I'm coding just to waste time scripting an editor so I can have what other editors already have.
It's having to build stuff from scratch because the editor doesn't follow the patterns laid out by other editors. F*ck, if at least it was Typescript or Python I could show the work on my portifólio, but no, IT'S LUA - very easy to script by the way, but close to no standard library.
I'm going Emacs TODAY.
"Wait, but isn't Emacs non-standard?"
YES, you're right!
BUT it's got all the stuff the others have completely implemented and a truly fully-fledged programming language to script it with so not to waste my time reinventing the wheel.
That's it. Haters gonna hate, but f*ck (Neo)Vim and my thousands of hours sunk into configuring, tweaking, scripting and learning it.6
I'm tempted to sell my MacBook Air M1, I found which I can be equally productive which a 2011 ThinkPad T420 with Lubuntu, Tmux and NeoVim.9
And there are Tons of open source projects underneath all of that, that you are not 100% aware of. (Wayland, gtk, qt, zsh, bash, sh, systemd, etc...)
The last major version made IntelliJ Idea unbearably slow on my 1 year old Intel Core i7 PC.
Fuck it, as soon as I have one hour free I'm going to reinstall Java extensions on Neovim. Stack traces sucks enough even without seconds of lags when you try scrolling them.5
Really wish the likes of JetBrains would hurry up and offer an LSP server for every language. I'm categorically not interested in using PHPstorm because my RSI makes it impractical but I'd be happy to shell out for an LSP I can use with Neovim9
ps: I'm not a natively English speaking person, please forgive tipos and other pedantic writing mistakes.
On another example of regressing for advancemente, the interested reader should read about performance differences and justification for it between grep and perl's regex implementation.
Editor [neovim](I know, I'm a degenerate) suddenly stopped responding to all mapped keys and after a while of closing and opening it, commenting out plugins,... it started working again. No idea what happened there!4