30 years later, edit is back

Back in 1991, Microsoft released MS-DOS 5.0 - one of the most important releases of that OS ever, and the first one to receive a retail release. Driven by the growing OS competition on the PC platform at that time - such as DR-DOS - MS-DOS 5.0 was packed with tons of new features, such as improved memory and disk management, and - the subject of this topic - new MS-DOS Editor, also known as edit. It was the first full-screen editor shipped with MS-DOS, as previous versions only had a rudimentary edlin line editor. Edit was originally the editing component of the QBasic IDE/interpreter. However, QBasic and most other DOS tools were discontinued with the release of Windows 95 - edit remained, but was decoupled from QBasic and updated with some new features. It remained like that, unchanged, all the way until Windows 10 when it was finally removed - although in the last few releases of Windows, it was only available on the 32-bit versions due to compatibility issues.

Until now. Just a couple of days ago, Microsoft released the new edit - terminal based TUI plaintext editor just like the original one. This new version is open source, on MIT license, and written in Rust - and version number rolled back to 1.0.0. Prebuilt releases are available for Windows and Linux (both ARM and x64), and there’s a package available in winget.

Plain text editors matter

Most of the development work done today is done in IDE-s, which are glorified plain text editors with extra features and integrations. They are also an important tool for most system administrators, plenty of other engineers in tech, and many power users - especially those on Linux. Best editors are usually those that are quick to work in, with keyboard shortcuts and other time-saving features.

Plenty of Linux/UNIX users default to vim or another similar editor, but it does have a bit of a learning curve to its keyboard shortcuts, commands and logic - but it does allow very fast work. Other editors such as emacs also have their fans, and it can be safely assumed that most users can at least work with their DE editor of choice (e.g. gedit), and maybe nano in terminal.

Windows users are by default presented with Notepad, which apart from the newly released tabbed work option, is barely improved back from the Windows 1.0 days and doesn’t offer much features or fast workflows. Most people who need serious work will often pick Notepad++ or a crossplatform or WSL version of their favorite Linux editor, though these can present a few WSL-related annoyances unless you mainly work in WSL.

MacOS also comes with the standard UNIX toolchain in the terminal, as well as the mostly optional stuff, and there are no integration issues such as with WSL as these are native tools and work great. The default GUI TextEdit is not really a text editor, although it can be forced to work as one - it’s largely a rich text editor and rudimentary text processor, more accurately compared to WordPad that used to come with Windows, but there are other options, from a long-time favorite BBEdit, and a new open-source CotEditor.

How edit compares

Like the original edit, this new one is a fairly basic and rudimentary editor. It has a fresh look, reminiscent of the old one, but slightly updated with redesigned menu content. It lacks some of the features of the old one, such as binary editing, or multi-window work, although the latest is less important nowadays with multitabbed terminals, or multiple window terminals, and DOS was a single-tasking environment back in the day.

It has a few features not often seen on basic editors, such as the ability to change the end of line character between the Windows file standard (CR LF) and the Linux/UNIX standard (LF). It also has plenty of encodings available, and configurable Tab behavior. This makes it in my opinion much better than Notepad for very basic programming, scripting and administrative tasks. But it does not really come close to vim, emacs or Notepad++, if you’ve already learned these tools. It also doesn’t come preinstalled on Windows, something that I would like to see changing as terminal, keyboard based tools native to Windows are lacking. There are still some issues in this first release - I found one and went to report it to github (as you should do if you find a bug in an open source project), but it was already reported by another user an hour before I got there. So hopefully it will get fixed.

Verdict

If you’re on Windows and not using anything besides Notepad, consider the new edit if what it offers fits your needs.

If you’re not on Windows, I wouldn’t bother unless you need and prefer some of the edit’s features, such as easy encoding and CRLF/LF switching in the file. Probably the closest terminal alternative is nano, which doesn’t have all features of edit, but stands out with some of its’ own, such as regexp matching, command execution from within editor with output capture, some limited customizability, etc, but both are sufficiently lightweight, simple and user friendly.

Personally, I’ll keep vim as my main editor, but I’ll keep edit out of pure nostalgia.