logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·30.10.26
← Back to news

Installing NeoVim caused original Vim undo files to be deleted

Original article
unsung.aresluna.org|280 points|237 comments|by jandeboevrie|Sep 27, 2026

The Cost of Innovation: When NeoVim Erased Vim's History


About the Author

This piece is shared by Marcin Wichary, a seasoned professional who has navigated roles as a manager, front-end developer, typographer, and UX designer at industry giants like Figma, Medium, and Google. Beyond his corporate career, Marcin has authored a book on the art of typing and keyboards, and frequently publishes essays on the intersection of technology and design.

Connect with Marcin:

  • 📧 Email
  • 🐘 Mastodon
  • 🦋 Bluesky
  • 📡 RSS Feed

A Lesson in "Duty of Care"

Marcin recently highlighted a poignant post from computer scientist David Chisnall, which serves as a cautionary tale about software development ethics. Chisnall is a power user of vim, having relied on it since the year 2000 to produce a massive body of work:

  • 5 Books
  • 1 PhD Thesis
  • Dozens of academic papers
  • 150+ Articles

For Chisnall, vim is so ingrained in his muscle memory that his "higher brain functions" don't even engage during editing. In fact, he often accidentally types :w (the save command) into other text editors.

The Magic of Persistent Undo

One specific feature Chisnall treasures is Persistent Undo. This allows a user to roll back changes even after a file has been closed or the system has rebooted.

Common Use Cases:

  1. Recovering a snippet deleted a week ago.
  2. Reverting "cleanup" changes that accidentally broke working code.

Data Safety=Persistent Undo+Stability over Time\text{Data Safety} = \text{Persistent Undo} + \text{Stability over Time}Data Safety=Persistent Undo+Stability over Time

For two decades, vim maintained this functionality across version upgrades, adhering to a fundamental principle: User data must never be harmed.


The NeoVim Incident

When NeoVim (a fork of the original vim) was in its early stages, Chisnall decided to give it a try. The experience was disastrous.

The Sequence of Failure

Upon reporting this, Chisnall was told that the persistent undo format was stable unstable and that users shouldn't rely on it—despite the feature being explicitly named "persistent undo."

Comparison of Philosophies

FeatureOriginal Vim ApproachEarly NeoVim Approach
Undo FilesPreserved across versionsDeleted if incompatible
Data IntegrityPrimary PrioritySecondary to format changes
User TrustHigh (20+ years)Compromised

Chisnall's conclusion was stark:

"The authors showed immediately that they absolutely could not be trusted with any of my data."

He argues that while a bug is forgivable, the attitude—that a program should feel free to delete user data simply because a file format changed—demonstrates a total lack of duty of care.


The Humane Interface

This story resonates with Marcin because it mirrors the philosophy of Jef Raskin (known for his work at Canon and the Macintosh). In his 2000 book, The Humane Interface, Raskin outlined three core laws for computing:

Raskin's Three Laws

  • Law 1: A computer must not damage your work or, through negligence, allow it to be damaged.
  • Law 2: A computer must not waste your time or force you to perform unnecessary labor.
  • Law 3: An interface is "humane" if it is considerate of human limitations and responsive to human needs.

Humane Interface Concept

Final Reflections

Marcin notes that people never forget when software destroys their hard work or treats them with disrespect. The feeling that "it changed once and will likely change again" creates a permanent rift in trust.

# The tragedy in one line:
rm -rf ~/.vim/undo/* # (Simulated data loss)

This serves as a reminder to all developers: the technical "instability" of a feature is no excuse for the destruction of user data.


Tags: #change-management #18-principles #text-editing #undo