{"id":17440,"date":"2026-06-03T08:39:44","date_gmt":"2026-06-03T15:39:44","guid":{"rendered":"https:\/\/jasonsblog.ddns.net\/?p=17440"},"modified":"2026-06-03T08:40:44","modified_gmt":"2026-06-03T15:40:44","slug":"vim-classic-is-a-vim-fork-for-people-who-want-their-editor-ai-free","status":"publish","type":"post","link":"https:\/\/jasonsblog.ddns.net\/index.php\/2026\/06\/03\/vim-classic-is-a-vim-fork-for-people-who-want-their-editor-ai-free\/","title":{"rendered":"Vim Classic is a Vim Fork for People Who Want Their Editor AI-Free"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">I have severe concerns with AI created code not being sufficiently vetted as it can be a source of exploits and backdoors. And the cultish rush to the Rust programming language is equally concerning for the same things. And I think we&#8217;ll see opensource software split in two directions, one logically limiting or excluding AI, and one fully embracing AI which in no way is fully audited for security. And I know which side I&#8217;m picking. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/itsfoss.com\/news\/vim-classic-first-release\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/itsfoss.com\/news\/vim-classic-first-release\/<\/a><\/p>\n\n\n<div class=\"wp-block-ub-divider ub_divider ub-divider-orientation-horizontal\" id=\"ub_divider_86e3042d-077d-4577-b238-2f0d46ccea7d\"><div class=\"ub_divider_wrapper\" style=\"position: relative; margin-bottom: 2px; width: 100%; height: 2px; \" data-divider-alignment=\"center\"><div class=\"ub_divider_line\" style=\"border-top: 2px solid #ccc; margin-top: 2px; \"><\/div><\/div><\/div>\n\n\n<h5 class=\"wp-block-heading\">Drew DeVault of SourceHut fame has shipped the first release of his Vim 8.2-based fork.<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">By Sourav Rudra<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A Vim fork has arrived, and it exists because of AI. <a href=\"https:\/\/drewdevault.com\/about\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Drew DeVault<\/a>, the developer behind SourceHut, announced Vim Classic <a href=\"https:\/\/drewdevault.com\/blog\/Forking-vim\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">back in March 2026<\/a> after becoming unhappy with the direction both <a href=\"https:\/\/www.vim.org\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Vim<\/a> and <a href=\"https:\/\/neovim.io\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">NeoVim<\/a> were heading.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">His gripe was that generative AI had started creeping into their development, and he wanted no part of it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The NeoVim side of that concern is the project&#8217;s labeling of AI-assisted pull requests as &#8220;<a href=\"https:\/\/github.com\/neovim\/neovim\/pulls?q=label%3A%22AI%20assisted%20%F0%9F%A4%96%22&amp;ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\"><em>AI assisted \ud83e\udd16<\/em><\/a>,&#8221; which has now stacked up a fair number of requests, many of which have already been merged.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With Vim, the situation is a bit murky. Drew points to <a href=\"https:\/\/github.com\/vim\/vim\/issues\/18800?ref=itsfoss.com#issuecomment-3568099543\" target=\"_blank\" rel=\"noreferrer noopener\">a GitHub issue<\/a> where community members suspected one contributor of using LLMs, but a Vim maintainer had already pushed back on those accusations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anyhow, <a href=\"https:\/\/vim-classic.org\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Vim Classic<\/a> has received its <a href=\"https:\/\/git.sr.ht\/~sircmpwn\/vim-classic\/refs\/v8.3.0?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">first-ever release<\/a>, so let&#8217;s see what it has to offer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Drew warns that Vim Classic is meant for early adopters. Not for people looking to daily drive it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A classic Vim experience<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/itsfoss.com\/content\/images\/2026\/06\/vim-classic-website.png\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2026\/06\/vim-classic-website.png\" alt=\"cropped screenshot of the vim classic website\"\/><\/a><figcaption class=\"wp-element-caption\"><em>Screenshot of the website because building from source is <\/em>\u2620\ufe0f.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Based on <a href=\"https:\/\/github.com\/vim\/vim\/releases\/tag\/v8.2.0148?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Vim 8.2.0148<\/a>, Vim Classic predates the <a href=\"https:\/\/vimhelp.org\/vim9.txt.html?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Vim9 script<\/a> entirely. This was done deliberately to keep the maintenance burden manageable, stopping at the last patch before the script was introduced.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>As a result, some Vim plugins that rely on Vim9 Script will not work with Vim Classic.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From that base, <strong>select patches have been backported from upstream<\/strong>, mostly addressing CVEs discovered after 8.2, alongside some bug fixes and original patches to keep things building on modern toolchains.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">DeVault is also upfront that not every applicable security patch has been confirmed as backported, <strong>so some CVEs may have slipped through<\/strong>. The project is currently recommended only for early adopters comfortable with that uncertainty.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In addition, <strong>the charityware model carries over from Vim<\/strong>, with this project continuing to support the children of Uganda (<em>albeit via a different charity<\/em>) that <a href=\"https:\/\/itsfoss.com\/news\/vim-creator-passed-away\/\">Bram Moolenaar<\/a>, the creator of Vim, endorsed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The original <a href=\"https:\/\/iccf-holland.org\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">ICCF Holland<\/a> charity was dissolved following his passing, with its mission carried forward by <a href=\"https:\/\/www.kuwasha.net\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">Kuwasha<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The packages<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Vim Classic 8.3 is currently available as a source tarball from <a href=\"https:\/\/git.sr.ht\/~sircmpwn\/vim-classic\/archive\/v8.3.0.tar.gz?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">SourceHut<\/a> (<em>direct download<\/em>). You will also find the release tarball and its PGP signature, signed with DeVault&#8217;s public key, up on the project&#8217;s <a href=\"https:\/\/git.sr.ht\/~sircmpwn\/vim-classic\/refs\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">refs page<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For the source code, head to <a href=\"https:\/\/sr.ht\/~sircmpwn\/vim-classic\/?ref=itsfoss.com\" target=\"_blank\" rel=\"noreferrer noopener\">the homepage<\/a> of the SourceHut instance for Vim Classic.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have severe concerns with AI created code not being sufficiently vetted as it can be a source of exploits and backdoors. And the cultish rush to the Rust programming language is equally concerning for the same things. And I think we&#8217;ll see opensource software split in two directions, one logically limiting or excluding AI, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,7],"tags":[],"class_list":["post-17440","post","type-post","status-publish","format-standard","hentry","category-tech","category-world"],"blocksy_meta":[],"featured_image_src":null,"author_info":{"display_name":"Jason","author_link":"https:\/\/jasonsblog.ddns.net\/index.php\/author\/jturning\/"},"_links":{"self":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/17440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/comments?post=17440"}],"version-history":[{"count":2,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/17440\/revisions"}],"predecessor-version":[{"id":17442,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/17440\/revisions\/17442"}],"wp:attachment":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/media?parent=17440"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/categories?post=17440"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/tags?post=17440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}