Mg (mg) is a lightweight public-domain ErsatzEmacs, dating back to 1986. Mg was originally known as MicroGNUEmacs, as it strove to adhere more closely to the default behavior of GnuEmacs than other contemporary MicroEmacsen, but was renamed at the request of RichardStallman.

Modern versions of mg are maintained as a component of the OpenBSD source tree; the editor is included as standard in OpenBSD “because there shouldn’t be any reason to learn more editor types than emacs or vi.” Similarly, the README states that mg “is compatible with GNU [Emacs] because there shouldn’t be any reason to learn more than one Emacs flavor.” “Compatible,” here refers to mg’s command set, like other Ersatz Emacsen, mg has no extension language such as elisp, and is written purely in C.

Mg is also available in FreeBSD’s ports in a regular, or rescue(8) version.

Versions of macOS ≥ 10.15 also include mg by default, presumably as a replacement for the old built-in, GPLv2 licenced, tty-only version of GnuEmacs that Apple used to include, starting with Mac OS X 10.0 (Cheetah), but has now been removed from macOS 10.15 Catalina onwards.

A portable version of mg is available for download from the maintainer’s Github.

You can also browse mg’s official sources on: