I settled on vim for its technical merits but Bram using his goodwill to fund a charity like this for so long always made me feel good about my choice.
In the end I just kept quiet about the fact that it ships in all the Linux package repos.
(Just to be clear, I fully support what Bram did here)
I can't prove it, but I am willing to bet my entire salary that the costs of all the new extra bureaucratic overhead introduced for small purchases, nullified or even exceeded all their savings, when the remaining engineers and managers paid six figures have to spend more of their time writing, reviewing and approving paperclip orders instead of you know, running the company, fulfilling customer demands and innovating.
I'm pretty new to this, but I have a feeling these are all the signs of a company it's worth jumping ship from ASAP as there's no chance of things improving back from this. Sure, AMD managed to turn the ship around with cost cutting, but our CEO is not Lisa Su, he's a boomer who cuts where the clueless $BIG_4 consultants tell him to cut, and big_4 doesn't care about innovation or the company being relevant in 10 years, they care about showing some immediate results/positive cash to justify their outrageous rates.
When you're being outcompeted and outmaneuvered it's important to slow down and make sure you save a few dollars wherever possible, apparently.
But if you wanted to install it separately on a computer that didn't have it already, then you'd need to get it “approved.”
One question is: will more plugin authors move to Vim9Script? It seems that Neovim users have generally moved towards Lua-based plugins, so there's less of a motivation to produce plugins that support both Neovim and Vim9.
But Lua support in Neovim is the primary reason I moved over from Emacs. Elisp and Vim are both so heart sink for me.
That said I'd have preferred something other than Lua if I had the choice.
Same. I know we as a community would never agree on what that language should be, but in my dreams it would have been ruby. Even javascript would have been better for me than Lua.
Also Ruby has been getting quite fast since YJIT (and now ZJIT):
Why?
But the people who did the work wanted Lua, and I have no problem with that. That's their privilege as the people doing the work. I'm still free to fork it and make ruby or js or whatever (Elixir would be awesome!) first-class.
There is a large class of problems now for which I consider the chosen programming language to be irrelevant. I don't vibe code my driver code/systems programming stuff, but my helper scripts, gdb extensions, etc are mostly written or maintained by an LLM now.
lua array index starting at 1 gets me at least once whenever i sit down to write a library for my nvim or wezterm.
Fabrice Bellard! https://github.com/bellard/mquickjs
(I agree with you, just wanted to note this super neat project)
as an aside i’m curious how quickjs/mquickjs compares to mruby in speed and size. something to ponder
Also, I cannot think of an extension / new feature that makes sense as a part of Vim (if I want something more, I want a lot more. I don't want Vim to do a lot more, for the sake of simplicity and conformity, that's a job for vscode with Vim extension).
At the same time I wouldn't object to someone adding features to this program. But they have to try really hard to convince me to start relying on that feature (I wouldn't, because I would miss it on Ubuntu 20.04 and I will forget how I used to work without that feature).
I tried nvim a few years ago and honestly didn't find anything advantageous there. But since I had `:sh` in muscle memory and it was a bit (very?) different there I gave up on nvim.
Honestly a lot of this is that I hate Lua. With so much of the infrastructure moving in that direction it's basically unavoidable. XDG support was honestly one of the things holding me back; I'm glad that this is finally fixed.
Only joking of course, actually quite refreshing to see a new version announcement of something this major without any AI nonsense.
Obviously vim doesn't need AI, but one feature I really wish vim had was native support for multiple cursors.
It's the feature that lured me away to Sublime Text in the first place many years ago, and it's a pre-requisite for pretty much every editor I use these days, from VSCode to Zed.
There are plugins, but multicursor is such a powerful force-multiplier that I think a native implementation would benefit.
If you need multi-cursor to do manual search and replace in text, then don't, just do automatic search and replace, maybe scoped to a block. If you need multi-cursor for refactoring or renaming a variable across entire source file, then don't, use LSP plugin (or switch to Neovim) and do the proper refactoring action.
Sure, there are legit cases of using multi-cursor in Vim, but they are rare. So it's not worth to put it into Vim itself.
[0] I've been using vim-multiple-cursors for years, it's abandoned but still works ok most of the time.
Actual Intelligence. It's connected to fingers/hands/arms/torso that is using it.
Just an honest opinion of someone who didn’t have skin in the game. Not sure if it helps.
I still have PyCharm, especially for working with data which I do a lot it helps quite a bit, but by default I'm back to a very vanilla Vim setup. Others have mentioned tmux which is great and I'd use anyway especially over ssh, but even just terminal tabs for instances of agents are fine frankly.
AI Should Rewrite Everything In Rust
Congratulations on the new release! Looking forward to applying these awesome improvements.
It seems they didn't publish the tag yet though.
cool
>Full support for the Wayland UI
I really hope they never deprecate X11 support :) I doubt they will, but if they do, it will leave the BSDs without a good alternative.
Without X Server support at the OS level for the new hardware, doesn't really matter if vim supports it on its source code.
So - on the occasion of VIm 9.2 coming out - do people have a recommendation for a gentle path to "leveling up" one's VIm skills and engagement?
the scripting language is.. okay, but u have to try doing something practical in it, to get a feeling.
see my vimrc, being updating it since ~2000
https://github.com/svilendobrev/svd_bin/blob/master/qini/_vi...
And the VimL Primer[2] by B. Klein
But Vim is a whole culture that starts with ed(1), the standard editor. You do edit based on line numbers and regex addressing and commands. Then there was ex(1) that added more features. vi(1) added a `visual` mode to ex(1), and some commands can now be done in relation to the position of the cursor. Vim is the improved version of vi(1), a lot more commands and a scripting language.
The plugin system is similar to everything that was unix at that time, relying on a variable like $PATH. Any path added to that variable (runtimepath for vim), should follow some patterns for subdirectories and the file will be loaded according to a certain logic. Plugin managers actually manage that variable and do a few things aside (isolating plugins, downloading from forges,...)
[0]: https://pragprog.com/titles/dnvim2/practical-vim-second-edit...
[1]: https://pragprog.com/titles/modvim/modern-vim/
[2]: https://www.oreilly.com/library/view/the-viml-primer/9781680...
While walking around a file with keyboard, sometimes a random line's indent is removed - that is, text goes left-flushed. AND it's not a tracked change that can be UNDOne - as if it never happened / always has-been-so. Have not been able to correlate this to any other thing. It happens like once a few days, very rarely it might happen twice within minutes. Sometimes i notice that, sometimes i don't and (luckily) python screams of broken indentation. If the file isn't deeply nested python.. good luck.
Has anyone "achieved" such a thing?
One little thought is, has there been much drama between the vim and neovim communities? (I guess community can be defined broadly enough that the answer to that question is always “yes,” but I haven’t seen much). They both seem completely happy to just do their own thing. I think the perennial argument just exits in the mind of some fans.
It is nice to see a pair of projects with so much potential for competition coexisting peacefully. Plenty of room on the internet I guess.
Not that I agree with your parent comment or anything (I don’t), I use Helix so don’t really have a dog in this fight, I think it’s fine for them all to coexist.
https://groups.google.com/g/vim_dev/c/65jjGqS1_VQ/m/fFiFrrIB...
Vim 8 did add support for asynchronous jobs, due to the pressure of Neovim fork.
it’s pretty great to have my vimconfig give red squiggle in editor if i’m doing it wrong before i save & reload.
but i’ve not followed vim9 script as its evolved perhaps there’s a good type checker for it at this point?
even before neovim, there were vim extensions written in lua so it feels gravity of lua code has been considerable for a long time.
to me vim9script feels like perl5/raku split - evolution too late to grow new users, a remnant for a niche that will fade to oblivion slowly over the next 10 years.