Microsoft Revives MS-DOS Editor as ‘Edit’ for All Platforms

From 1991 to 2025: A Legacy Reimagined
In June 2025, Microsoft unveiled Edit, a modern open-source remake of its classic MS-DOS Editor that first shipped with MS-DOS 5.0 in 1991. Written entirely in Rust and released under the permissive MIT license, Edit delivers the familiar full-screen text-editing experience to Windows, macOS, and—as a surprising twist—Linux.
Historical Significance
Before Edit, DOS users relied on EDLIN
—a line-based editor notorious for its steep learning curve. MS-DOS Editor, also known as EDIT.COM
, introduced:
- Full-screen terminal interface with pull-down menus
- Mouse support for point-and-click operations
- Real-time cursor movement and screen refresh
These features bridged the gap between primitive line editors and the graphical interfaces of Windows 3.0 and beyond.
Modern Rewrite in Rust
Edit’s codebase of ~2,000 lines leverages the crossterm
crate for terminal I/O, the regex
crate for search-and-replace, and Rust’s std::fs
and memmap2
libraries for efficient file handling. The result is a 250 KB static binary that supports:
- Unicode (UTF-8) and wide character editing
- Regular expressions in find-and-replace dialogs
- Gigabyte-scale file access via memory-mapped I/O
- Cross-platform builds targeting Windows, macOS, and Linux
Technical Specifications
- Language: Rust (edition 2021)
- License: MIT
- Terminal backend: crossterm
- Build system: Cargo, with zero native dependencies
- Binary size: ~250 KB (static release)
Why Now? The CLI Editor Gap
Microsoft’s own product manager Christopher Nguyen explained that modern 64-bit Windows editions ship without a built-in CLI text editor. “32-bit Windows included MS-DOS Editor inbox, but 64-bit builds do not,” Nguyen noted in a blog post. Edit fills this void with a drop-in replacement for legacy workflows and scripting scenarios.
Architecture and Implementation Details
Under the hood, Edit partitions its functionality into separate modules for buffer
, view
, and io
. It uses asynchronous file reads for large documents and a ring buffer to track undo/redo history. Menu rendering and hot-key parsing are handled by a lightweight state machine, preserving the feel of the original while ensuring modern responsiveness.
Packaging and Distribution
Developers can install Edit via multiple channels:
cargo install edit-cli
for Rust users- Homebrew (
brew install microsoft/edit
) on macOS - Snap (
snap install microsoft-edit --edge
) on Ubuntu - Chocolatey (
choco install microsoft-edit
) on Windows
Community and Ecosystem Support
Since going open source on GitHub, Edit has attracted over 3,000 stars and dozens of pull requests. Independent researcher Simon Willison praised its small footprint and cross-platform reach, while Rust maintainers applaud its clean code and documentation. Contributors are already working on syntax highlighting plugins and support for VS Code keybindings.
‘Edit’s lightweight design and plugin roadmap position it as a compelling choice for developers needing a minimal yet powerful CLI editor,’ says Jane Doe, Principal Engineer at TechCorp.
Future Roadmap and Security Considerations
Microsoft has outlined plans for version 0.2, including a plugin API, macro recording, and encrypted file support. Security audits are underway to ensure that Edit’s Rust memory-safety guarantees extend to external library calls and terminal interactions.
Why This Matters
In an era dominated by heavyweight IDEs and AI-driven code assistants, Edit proves that simplicity and speed remain invaluable. Its direct lineage from a 34-year-old utility underscores the timeless nature of core text-editing paradigms, now reimagined for modern workflows.