Vim 9.2 (vim.org)
283 points by tapanjk 7 hours ago
srik 4 hours ago
> For over 30 years, Vim has been "Charityware," supporting children in Kibaale, Uganda. Following the passing of Bram Moolenaar, the ICCF Holland foundation was dissolved […] and its remaining funds were transferred to ensure continued support for the Kibaale project. […] Vim remains Charityware. We encourage users to continue supporting the needy children in Uganda through this new transition.
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.
jdsnape 4 hours ago
I used to work for a large enterprise, and tried to get vim ‘approved’ for internal use. I remember this charityware clause caused our legal department to get tied up in all sorts of arguments about how we could be opening ourselves to liability if we used it without donating. It was my first lesson in navigating large company processes.
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)
cbsks 2 hours ago
“Let’s spend thousands of dollars on lawyers to avoid donating to a good cause”. Large corporations can be so ridiculous.
joe_mamba 2 hours ago
nujabe 2 hours ago
Curious why you tried to get it approved in the first place if it comes with Linux?
sobjornstad 2 hours ago
bko 3 hours ago
Do I understand it correctly, but people donating to Vim, presumably for the support of the software, have their donations passed along to a charity supporting children in Uganda?
sodapopcan 3 hours ago
Bram started giving 100% after getting hired full time by Google, I believe, which continued on. There is an update on the Vim homepage now about it stopping, though I find the wording a bit confusing... I think they are dissolving the charity but still sending donations to Uganda? I feel a bit dumb for not understanding it but you can read the update on https://www.vim.org/. Unfortunately they don't have target links for dates, it's the [2025-10-28] update.
mmooss an hour ago
debugnik 42 minutes ago
It's not their fault if donors don't read what they're donating for. This reminds me of people feeling scammed after donating to Mozilla.
oscaracso 2 hours ago
I wanted to understand it too, so I clicked on the donate button and was greeted by this message: 'All donations are directed toward a good cause: helping children in Uganda. This charity is personally recommended by Vim’s creator. Funds are used to support a children's center in southern Uganda, providing food, education, and health care to communities affected by AIDS.'
jasonhansel 5 hours ago
I'm glad to see that Vim9 continues to make progress. The center of gravity may have shifted somewhat towards Neovim, but the Neovim ecosystem currently seems targeted towards people who want something more IDE-like.
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.
rustyhancock 5 hours ago
I'm not the target for your question (I distribute 0 plugins).
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.
freedomben 5 hours ago
> 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.
satvikpendem 5 hours ago
elros 5 hours ago
MarsIronPI 4 hours ago
Graziano_M 5 hours ago
I wish they supported Janet
nine_k 4 hours ago
sodapopcan 3 hours ago
I love vim9script and write most of my plugins in it now unless I want something to work in the other vim as well, of course. Really happy to see it evolving and I'm particularly happy that tuple support has landed!
gfiorav 3 hours ago
As a die-hard vim fan, I feel bitter-sour saying that I switched to nvim. Honestly, I think the vim maintainers should find a way to merge in nvim.
e-khadem 3 hours ago
I think not adding new features frequently and keeping everything stable and working in the long-term is also meritorious. Vim is the same on my local machine, on my rpi, and on an Ubuntu 20.04 VM that I use for some proprietary software.
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.
andrewla 24 minutes ago
I have also switched to nvim, but every release I consider moving back.
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.
sodapopcan 3 hours ago
I don't think that will ever happen. They have already diverged in key ways. I'm more than happy with vim9 and where it is going, personally.
sigzero 2 hours ago
Has neovim settles on a UI yet?
mystifyingpoi 2 hours ago
What do you mean? Neovim looks 100% exactly like Vim when you turn it on without any plugins. It's hard to distinguish even. It's the plugins that give it that nerdy look.
tuan 2 hours ago
3eb7988a1663 3 hours ago
NeoVim tossed significant amounts of legacy code (eg 8.3 filename support) and greatly improved out of the box default configuration. You cannot merge the two without upsetting one camp or the other. Vim wants to continue to be a stable platform that runs on 40 year old hardware. NeoVIM wanted to ditch the cruft that no longer makes applies.
actinium226 5 hours ago
But where are the AI features?? Gonna get left behind!
Only joking of course, actually quite refreshing to see a new version announcement of something this major without any AI nonsense.
kgwxd a minute ago
I was happy with VSCode after decades of Vim because it felt light enough out of the box until Copilot starting showing up in every nook and cranny of the damn thing. I switch back to Vim last year.
LexiMax 3 hours ago
> But where are the AI features?? Gonna get left behind!
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.
mystifyingpoi 2 hours ago
The canonical answer to this request is as follows: if you need multi-cursor (or, worse, multi-cursor with mouse support) then you are doing something non-Vim way (aka: wrong way) and there is a better way to do it.
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.
riffraff 43 minutes ago
ivanjermakov 2 hours ago
There are plenty of ways to achieve workflows that can be done witg multiple cursors even in plain Vim: macros, :norm, visual blocks, :s, etc.
gjkliewer 2 hours ago
Multi cursor is on the neovim roadmap https://neovim.io/roadmap/
stackbutterflow 2 hours ago
I'm curious to know what kind of editing you do that you need this so much?
WhyNotHugo 2 hours ago
Funny, I used multiple cursor a lot back when I used Sublime Text, but stopped needing them when I switched to Vim.
sejje 2 hours ago
How does it work?
michaelcampbell 4 hours ago
Vim and its ilk have plenty of AI.
Actual Intelligence. It's connected to fingers/hands/arms/torso that is using it.
comex 2 hours ago
The announcement itself looks potentially AI-assisted, judging by the bulleted list style and redundant text under the "Charity: Transition to Kuwasha" section. But maybe some people just write that way.
penguin_booze an hour ago
Wait a couple of more months, and no-none will know to write any other way.
guerrilla 4 hours ago
I agree and I know what you're saying, but I'm pretty curious: how are people using AI with vim? I've seen some scripts for ollama but what are most people doing?
troyvit 13 minutes ago
I don't use it this way yet, but aider has a watch mode that would be fun with vim:
https://aider.chat/docs/usage/watch.html
I imagine with vim, from the document you're editing, you'd go:
:ter
to get a terminal. Fire up aider with --watch-files in the terminal. Hop back up to the file and start telling it what to do. Hit L when it's done to see the changes.
That's just a guess but after writing it out I kinda want to try it.
When I use aider it's via its chat interface and then I load the file with vim in another terminal tab to follow along but I think --watch-files with vim would be fun.
flexagoon 3 hours ago
At least for Neovim, there are many official or community-made AI autocomplete plugins, and a bunch of chat interfaces as well
era86 4 hours ago
tmux + vim + Claude Code
bicx 4 hours ago
sorentwo 3 hours ago
Carrok 4 hours ago
The copilot plugin works well
guerrilla 4 hours ago
qsort 4 hours ago
AI makes advanced IDE features less relevant (or, more precisely, much easier to ignore or work without.)
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.
drawnwren 3 hours ago
Avante.nvim is quite active
user3939382 4 hours ago
I made a vim extension where you describe the edit/action you want in natural language, and my ollama model thats trained on books like Practical Vim returns the key sequence and you can press e to execute without leaving vim. So you get automation help but also learn the syntax.
yojat661 4 hours ago
That's pretty nifty. Link please
dmd 4 hours ago
:please exit vim now
aljgz 3 hours ago
AISREIR
AI Should Rewrite Everything In Rust
simoncrypta 3 hours ago
After many years being interested, I finally invest a good amount of time learning vim properly. Thanks to AI, I got more time to learn in between request and it become painfully slow to use IDE or ask AI simple change. To me the agentic workflow make it even more valuable to learn vim since I can fix and iterate on small details way faster.
riffraff 38 minutes ago
this is a richer changeset than I would have expected, I'm glad to see that.
computerfriend 5 hours ago
Strange that there's no v9.2 tag in https://github.com/vim/vim/tags.
chrisbra80 4 hours ago
Oopps, missed that. Now there is a v9.2.0 tag and a v9.2.0000 tag
c0balt 5 hours ago
The relevant release commit is, https://github.com/vim/vim/commit/e7e21018fc0b60c153c8e668f6... (at time of writing, two hours ago).
It seems they didn't publish the tag yet though.
dkga 5 hours ago
Delighted to see vim continuing.
k3vinw 3 hours ago
> The MS-Windows GUI now supports native dark mode for the menu and title bars, along with improved fullscreen support and higher-quality toolbar icons.
Congratulations on the new release! Looking forward to applying these awesome improvements.
_0xdd 2 hours ago
Couldn't have come at a better time for those who are affected by their IT departments removing access to Notepad++.
Bulbasaur2015 5 hours ago
> Vim now adheres to the XDG Base Directory Specification,
cool
jmclnx 6 hours ago
Congratulations!
>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.
zenoprax 5 hours ago
Unless I'm misunderstanding the problem, Wayland is available on FreeBSD.
giancarlostoro 5 hours ago
Some people hate wayland.
pjmlp 5 hours ago
AlecSchueler 5 hours ago
hleszek 4 hours ago
Why would they do that? When I started learning VIM more than 20 years ago, one of the main reason was that it (or vi) was already present and installed in every possible Linux system.
einpoklum 4 hours ago
I am a lay user or vim. I use it daily for editing text files and a bit of code, but I always found the plugins and the scripting language rather daunting. There are different, conflicting, plugin management systems; and of course there's the scripting language that's vim-specific, and the few times I tried to delve into this stuff, I quickly found myself in over my head.
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?
mystifyingpoi 2 hours ago
Yes, switch to Neovim. Seriously, no sarcasm. You can import your existing .vimrc at first, if you even care. I highly recommend kickstart or some other simple config scaffold.
svilen_dobrev 3 hours ago
do you really need that?
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...
skydhash 3 hours ago
There are the Practical Vim[0] and Modern Vim[1] by D. Neil
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...
sodapopcan 3 hours ago
There is also Learn VimScript the Hard Way, which is of course a bit outdated, but it does help to know "legacy" vimscript. vim9script is very intuitive and easy to learn for anyone who knows any OO language from the past 30 years. The difficulty comes in learning the ins and outs of Vim itself (when it comes to scripting it, that is).
svilen_dobrev 3 hours ago
i have been using vim since v4 (1999?), but in the last year+ - maybe since v9? - there's some weird defect happening only once in a while:
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?
worldsavior 4 hours ago
YES. Wayland support.
mcswell 5 hours ago
Ignore my comment, testing whether I'm blocked
hackerbrother 5 hours ago
Hey man, you’re not blocked. Read you loud and clear. Happy Valentine’s Day to you and yours.
mcswell 5 hours ago
In case you're wondering: I'm not blocked in this thread, but I was blocked in a thread about ICE. I told them to thaw out.
rfrey 5 hours ago
If the thread was deleted by a mod or flagged in the time between starting a comment and hitting "reply", you'd see a message that "you're not allowed to post a comment here" or similar language. Nothing to do with you, it's the state of the thread you're commenting on.
buzzerbetrayed 4 hours ago
Take your tinfoil hat off
TristanDaCunha 5 hours ago
Should stop and help with neovim
freedomben 5 hours ago
This is the perennial argument that IMHO is based on a fallacy. If the vim people suddenly stopped working on vim, it doesn't mean all their effort would go to neovim. People work on what they want to work on in open source. Also the two projects have very different goals/philosophies. The code bases have also gotten pretty different in architecture because neovim did a monstrous refactor. It's open source working as intended that we have both.
bee_rider 4 hours ago
I agree with you.
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.
freedomben 4 hours ago
benatkin 5 hours ago
Could say the same thing about people working on neovim
latexr 5 hours ago
Technically, Neovim started because the author wanted to add multi-threading to Vim but the patch was rejected. So they did try to contribuir to Vim first.
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.
aniviacat 2 hours ago
logicprog 5 hours ago
NeoVim has a fundamentally better architecture and healthier ecosystem.