xref: /openbsd/usr.bin/mg/README (revision 09467b48)
1[This is an edited version of the original mg README, updated slightly to
2reflect changes in the last 20 years.]
3
4
5Mg (mg) is a Public Domain EMACS style editor.  It is "broadly"
6compatible with GNU Emacs, the latest creation of Richard M.
7Stallman, Chief GNUisance and inventor of Emacs.  GNU Emacs (and other
8portions of GNU as they are released) are essentially free, (there are
9handling charges for obtaining it) and so is Mg.  You may never have
10to learn another editor.  (But probably will, at least long enough to
11port Mg...)  Mg was formerly named MicroGnuEmacs, the name change was
12done at the request of Richard Stallman.
13
14Mg is not associated with the GNU project, and it does not have the
15copyright restrictions present in GNU Emacs.  (However, some modules
16do have copyright notices.)  The Mg authors individually may or may
17not agree with the opinions expressed by Richard Stallman in "The GNU
18Manifesto".
19
20This program is intended to be a small, fast, and portable editor for
21people who can't (or don't want to) run real Emacs for one reason
22or another.  It is compatible with GNU because there shouldn't be
23any reason to learn more than one Emacs flavor.
24
25
26Beyond the work of Dave Conroy, author of the original public domain
27v30, the current version contains the work of:
28
29	blarson@ecla.usc.edu		Bob Larson
30	mic@emx.utexas.edu		Mic Kaczmarczik
31	mwm@violet.berkeley.edu		Mike Meyer
32	sandra@cs.utah.edu		Sandra Loosemore
33	mp1u+@andrew.cmu.edu		Michael Portuesi
34	RCKG01M@CALSTATE.BITNET		Stephen Walton
35	hakanson@mist.cs.orst.edu	Marion Hakanson
36
37People who have worked on previous versions of Mg:
38
39	rtech!daveb@sun.com		Dave Brower
40
41Early release history:
42
43* Nov 16, 1986: First release to mod.sources
44* Mar 3, 1987: First Release (mg1a) via comp.sources.unix
45* May 26, 1988: Second release: (mg2a) via comp.sources.misc
46* Jan 26, 1992: Linux port released by Charles Hedrick. This version
47  later makes its way onto tsx-11, Infomagic, and various other Linux
48  repositories.
49* Feb 25, 2000: First import into the OpenBSD tree, where it is
50  currently maintained with contributions from many others.
51
52----------------------------------------------------------------------
53
54Known limitations:
55
56Recursive bindings may cause help and key rebinding code to go into
57an infinite loop, aborting with a stack overflow.
58
59Overwrite mode does not work in macros.	 (Characters are inserted
60rather than overwriting.)
61
62Dired mode has some problems: .. and . are not recognized as special
63cases.  Also, mg uses the output of the command 'ls' to populate a
64dired buffer.  This is not ideal, dired mode should probably be
65rewritten to use the directory(3) set of functions.
66
67On systems with 16 bit integers, the kill buffer cannot exceed 32767
68bytes.
69
70Unlike GNU Emacs, Mg's minibuffer isn't multi-line aware and hence
71some commands like "shell-command-on-region" always pop up a buffer to
72display output irrespective of output's size.
73
74While navigating source code using Mg's cscope commands, the cursor
75is always at the match location rather than in *cscope* buffer. Mg uses
76the same keybindings of GNU Emacs's xcscope package for it's cscope commands.
77As Mg's keybindings are case-insensitive some of the commands don't have a
78default keybinding.
79
80New implementation oddities:
81
82insert and define-key are new commands corresponding to the mocklisp
83functions in GNU Emacs.	 (Mg does not have non-command functions.)
84(Mg's insert will only insert one string.)
85
86The display wrap code does not work at all like that of GNU emacs.
87
88Some commands that do not mimic emacs exactly don't have a "standard"
89emacs name. For example 'backup-to-home-directory' is only a partial
90implementation of emacs' range of commands that allow a user to
91customise the backup file location. If a more complete implementation
92were coded of these commands the non standard commands would probably
93be removed.
94