Oh hey, thanks for reminding me that I should switch to Vim-Classic. I'm still on vim 9.1, which (as I understand it) is the last major release before the ensloppificator landed, but I should move in case the infection spreads to backports.
Yeah I am wanting to switch. I'm currently on neovim and I really like built in lsp client, treesitter integration, and now native package manager... I wonder if maybe I should just simplify the stuff I'm using anyway.
I've thought about trying doom emacs or spacemacs a few times, due to their more off the shelf "evil" mode (vim emulation), but I've been using vim for so long, even that seems like it would be a painful amount of effort.
vim-classic seems like the easy-road escape hatch.
I'm not really a fan of those all in one config setups that download everything for you (astro on the neovim side iirc?), mostly because it sounds like a supply chain nightmare.
When I decided to use Vim Classic, I had already tried, and rejected, Helix. If it hasn't changed since then, Helix is completely incapable of find and replace. Of course, you can do a mass regex select, and then a replace, but this is an unsuitable alternative, for two reasons. When two selections butt up against each other in Helix, they merge into a single selection. So if two things you want to replace happen to be adjoined, they'll be replaced with a single thing. The other issue is that you can't use regex capture variables in your replacements.
I also considered Vis, but I likewise rejected it, though I don't recall why. I've heard of Kakoune but never tried it.
The cumbersome find & replace is the main reason I gave up Helix, too. The "/\v" (or ":s/\v") operators in Vim are too powerful to be given up for a slightly better user interface.
You can emulate regex capture variables by copying the selection, then pasting it; this works as long as the cursors stay separate. The biggest frustration I run into when doing this is that find-and-replace in many editors is a little 'smart' with respect to capitalization (so foo -> bar changes Foo -> Bar, FOO -> BAR), but you can't do that with multi-cursor.
I've been enjoying vis lately. It's like vi, just as snappy, except not annoying, has syntax highlighting, and a super interesting way to address what commands should affect based on the ACME/sam editor.
I'd even say it can be much snappier than Vim! Maybe it had something to do with the plugins I was using or my config, but Vim was extremely sluggish when I tried reading a large raw database dump. Vis handled it just fine for the most part, only becoming unresponsive on searches and such (which is understandable on a multi-GB file).
The way it does multiple cursors is pretty good too; I quickly found myself trying to use them even in Vim.
My main annoyance when switching over from Vim was that it (sometimes?) positions the cursor differently after switching modes than Vim would, which trips up my muscle memory. I've mostly adjusted to it by now, but I still feel slightly awkward navigating in it.
That's why I specified vi :p Whenever I had to edit ~gigabytes sized text, Vim (especially Neovim...) choked and froze, but Vi in its lovely simplicity remained responsive. However, it's also a pain to use, so I'm super happy Vis brings the best of both worlds. (Though I suppose the rest of my comparison works a lot better with Vim, so mea half-culpa.)
it (sometimes?) positions the cursor differently after switching modes
Yeah, escape not moving the cursor did surprise me at first too, but with an unbiased eye, imo it's a lot more logical.
Wrong. Words change meaning. "Computer" used to be a job description, "compilers" worked at publishers of dictionaries, "file" was a cardboard object used to contain pieces of paper, etc.
"Slop" now means material emitted by LLMs. The quality of the material is irrelevant.
?
It's a very common word used daily by billions of people in all sorts of contexts. I don't even think 90%+ of people even heard it in the context of generative AI output.
No worries, I was just linking to past discussion in case someone wanted to have a look at it.
I think the reason why it didn't get flagged because they're two different links - your post links to the website, whereas the previous post linked to the source code on Sourcehut.
When I wonder about the differences between various vi, vim classic, and other vi and vim, I think I understand how some people feel when they wonder about the differences between NetBSD, OpenBSD and FreeBSD.
I still use vi that comes with NetBSD, and when I do use vim, I want to make sure that I'm not getting the enshittified version, so the "maintained entirely by humans" bit is quite helpful.
I switched from Neovim to Vim Classic, unfortunately I don't have my old old vimrc, so I need to relearn how to configure Vim for my own needs and preferences.
Vim includes a solid starter .vimrc file. From my reading of the help docs, it is intended for users to start with that rather than from a blank file.
I discovered this recently on a flight with no internet I decided to run through :Tutor and it turned out Neovim doesn’t have the tutor (even though it is referenced in Neovim’s :help). I opened up regular vim to go through the tutor and didn’t have vimrc but found references to the starter vimrc that was unknown to me.
It probably varies a lot. My .vimrc is 77 non-whitespace lines. A chunk of that is because I configure ALE to use different versions of clang-format and clang-tidy for different projects in there (and I share it across machines, so it has some checks to see which one it's on and then use the correct paths for the tools depending on that). It also has around ten lines of 'I tried NeoVim and wanted my config to work with it' changes that I should probably rip out since I'm never going back to NeoVim.
So a 'make vim minimally nice for the things I care about the most' .vimrc is probably around 20 lines (source $VIMRUNTIME/vimrc_example.vim is the first one, currently sitting in a if !has("nvim") guard). Probably a good 80% of what I want comes from there.
But I've seen other folks who do a lot more customisation of their editor than me. They have hundreds, if not thousands, of lines of config and actually care about them. For anyone in this situation, moving configs to a different editor, even a similar one, is a lot of work.
I've been using vim-classic for quite a few months now and I highly recommend it.
Getting your existing plugin ecosystem to work back is mostly a case of being reasonable.
The reason I switched to vim-classic is simple: performance. I didn't realise how slow vim got until I used vim-classic. There is no latency or jitter between various operations, pure and simple.
Big fan! But for the record I never could get along with neovim. I'm in the minimalist camp. I want tools I can fully understand and with the least amount of surprises.
Two9A | 21 hours ago
Oh hey, thanks for reminding me that I should switch to Vim-Classic. I'm still on vim 9.1, which (as I understand it) is the last major release before the ensloppificator landed, but I should move in case the infection spreads to backports.
[OP] datboi | 20 hours ago
Yeah I am wanting to switch. I'm currently on neovim and I really like built in lsp client, treesitter integration, and now native package manager... I wonder if maybe I should just simplify the stuff I'm using anyway.
7tehdt3cnw6kir6o | 19 hours ago
I've been considering emacs, though it's annoying having to redo my entire config.
sph | 17 hours ago
But you’ll be using it for the rest of your life… it’s a worthy time investment :)
trousers | 6 hours ago
I've thought about trying doom emacs or spacemacs a few times, due to their more off the shelf "evil" mode (vim emulation), but I've been using vim for so long, even that seems like it would be a painful amount of effort.
vim-classic seems like the easy-road escape hatch.
7tehdt3cnw6kir6o | 4 hours ago
I'm not really a fan of those all in one config setups that download everything for you (astro on the neovim side iirc?), mostly because it sounds like a supply chain nightmare.
dvogel | 14 hours ago
I find it frustrating that vim classic chose v8 because v9 brought vim9script and with in yeggapan's lsp plugin that requires vim9script.
kwas | 15 hours ago
if you consider something as alien (to a vim user), then why not helix or kakoune?
[OP] datboi | 11 hours ago
I have considered them! Neither has a clear stance on LLM generated code: https://github.com/helix-editor/helix/discussions/15408 and https://discuss.kakoune.com/t/ai-contribs/2850/15
I feel like Kakoune probably doesn't, but I'd prefer a project that takes a stance against them.
lonjil | 13 hours ago
When I decided to use Vim Classic, I had already tried, and rejected, Helix. If it hasn't changed since then, Helix is completely incapable of find and replace. Of course, you can do a mass regex select, and then a replace, but this is an unsuitable alternative, for two reasons. When two selections butt up against each other in Helix, they merge into a single selection. So if two things you want to replace happen to be adjoined, they'll be replaced with a single thing. The other issue is that you can't use regex capture variables in your replacements.
I also considered Vis, but I likewise rejected it, though I don't recall why. I've heard of Kakoune but never tried it.
hwj | 5 hours ago
The cumbersome find & replace is the main reason I gave up Helix, too. The "/\v" (or ":s/\v") operators in Vim are too powerful to be given up for a slightly better user interface.
quasi_qua_quasi | 12 hours ago
You can emulate regex capture variables by copying the selection, then pasting it; this works as long as the cursors stay separate. The biggest frustration I run into when doing this is that find-and-replace in many editors is a little 'smart' with respect to capitalization (so foo -> bar changes Foo -> Bar, FOO -> BAR), but you can't do that with multi-cursor.
ploum | 18 hours ago
waiting for the inclusion in Debian to do the switch myself
nemin | 19 hours ago
I've been enjoying vis lately. It's like vi, just as snappy, except not annoying, has syntax highlighting, and a super interesting way to address what commands should affect based on the ACME/sam editor.
ploum | 18 hours ago
do you have any tutorial to migrate from Vim to vis? I tried twice without success.
I didn’t even manage to remap keys (which I need, not using a Qwerty layout)
dzwdz | 18 hours ago
Not a tutorial, but I found the people at
#vis-editorto be pretty friendly :)ploum | 47 minutes ago
If you ever write about your experience, I would be delighted to read it!
dzwdz | 18 hours ago
I'd even say it can be much snappier than Vim! Maybe it had something to do with the plugins I was using or my config, but Vim was extremely sluggish when I tried reading a large raw database dump. Vis handled it just fine for the most part, only becoming unresponsive on searches and such (which is understandable on a multi-GB file).
The way it does multiple cursors is pretty good too; I quickly found myself trying to use them even in Vim.
My main annoyance when switching over from Vim was that it (sometimes?) positions the cursor differently after switching modes than Vim would, which trips up my muscle memory. I've mostly adjusted to it by now, but I still feel slightly awkward navigating in it.
nemin | 17 hours ago
That's why I specified vi :p Whenever I had to edit ~gigabytes sized text, Vim (especially Neovim...) choked and froze, but Vi in its lovely simplicity remained responsive. However, it's also a pain to use, so I'm super happy Vis brings the best of both worlds. (Though I suppose the rest of my comparison works a lot better with Vim, so mea half-culpa.)
Yeah, escape not moving the cursor did surprise me at first too, but with an unbiased eye, imo it's a lot more logical.
gasche | 2 hours ago
Ha! "semi-culpa" (a dictionary says that "dimidia" could also be used but the "semi-" prefix seems more frequent).
mccd | 7 hours ago
Unfortunately the LSP support is rather poor.
srcrip | 15 hours ago
What are the AI contributions to Vim that people have problems with? The word slop has been used here, is there a feature that was buggy or something?
connor | 15 hours ago
As I understand it, there’s no specific patch or regression. It is a philosophical opposition to the use of AI to develop the software.
From the project homepage:
Emphasis mine.
travis-bradbury | 15 hours ago
Drew DeVault explains the motivation here https://drewdevault.com/blog/Forking-vim/
liberty | 10 hours ago
Slop refers to the output of LLMs. No need to define it narrowly in a way that legitimizes certain uses of the technology.
nikaro | 5 hours ago
No. Slop refers to the quality of the outup, be it by humans or LLM. The term predates LLM.
lproven | 3 hours ago
Wrong. Words change meaning. "Computer" used to be a job description, "compilers" worked at publishers of dictionaries, "file" was a cardboard object used to contain pieces of paper, etc.
"Slop" now means material emitted by LLMs. The quality of the material is irrelevant.
gasche | 2 hours ago
I disagree, and also, can we all sound a bit less confident when stating such things?
pm | an hour ago
? It's a very common word used daily by billions of people in all sorts of contexts. I don't even think 90%+ of people even heard it in the context of generative AI output.
orgnizedmess | 20 hours ago
previously
jmtd | 19 hours ago
also
[OP] datboi | 20 hours ago
Oh weird it usually flags it if it has been posted before. Sorry!
orgnizedmess | 20 hours ago
No worries, I was just linking to past discussion in case someone wanted to have a look at it.
I think the reason why it didn't get flagged because they're two different links - your post links to the website, whereas the previous post linked to the source code on Sourcehut.
janus | 16 hours ago
Does Vim Classic accept patches for features dropped in Vim 9.0 like Mac Carbon, Athena and neXTaw?
johnklos | 10 hours ago
When I wonder about the differences between various
vi,vimclassic, and otherviandvim, I think I understand how some people feel when they wonder about the differences between NetBSD, OpenBSD and FreeBSD.I still use
vithat comes with NetBSD, and when I do usevim, I want to make sure that I'm not getting the enshittified version, so the "maintained entirely by humans" bit is quite helpful.lonjil | 18 hours ago
I switched from Neovim to Vim Classic, unfortunately I don't have my old old vimrc, so I need to relearn how to configure Vim for my own needs and preferences.
brad | 15 hours ago
Vim includes a solid starter .vimrc file. From my reading of the help docs, it is intended for users to start with that rather than from a blank file.
I discovered this recently on a flight with no internet I decided to run through :Tutor and it turned out Neovim doesn’t have the tutor (even though it is referenced in Neovim’s :help). I opened up regular vim to go through the tutor and didn’t have vimrc but found references to the starter vimrc that was unknown to me.
david_chisnall | 2 hours ago
It probably varies a lot. My .vimrc is 77 non-whitespace lines. A chunk of that is because I configure ALE to use different versions of
clang-formatandclang-tidyfor different projects in there (and I share it across machines, so it has some checks to see which one it's on and then use the correct paths for the tools depending on that). It also has around ten lines of 'I tried NeoVim and wanted my config to work with it' changes that I should probably rip out since I'm never going back to NeoVim.So a 'make vim minimally nice for the things I care about the most'
.vimrcis probably around 20 lines (source $VIMRUNTIME/vimrc_example.vimis the first one, currently sitting in aif !has("nvim")guard). Probably a good 80% of what I want comes from there.But I've seen other folks who do a lot more customisation of their editor than me. They have hundreds, if not thousands, of lines of config and actually care about them. For anyone in this situation, moving configs to a different editor, even a similar one, is a lot of work.
citbl | 24 minutes ago
I've been using vim-classic for quite a few months now and I highly recommend it.
Getting your existing plugin ecosystem to work back is mostly a case of being reasonable.
The reason I switched to vim-classic is simple: performance. I didn't realise how slow vim got until I used vim-classic. There is no latency or jitter between various operations, pure and simple.
Big fan! But for the record I never could get along with neovim. I'm in the minimalist camp. I want tools I can fully understand and with the least amount of surprises.