diff options
Diffstat (limited to 'etc/GOSDIFF')
-rw-r--r-- | etc/GOSDIFF | 614 |
1 files changed, 614 insertions, 0 deletions
diff --git a/etc/GOSDIFF b/etc/GOSDIFF new file mode 100644 index 00000000000..a283c1a3f1f --- /dev/null +++ b/etc/GOSDIFF @@ -0,0 +1,614 @@ +Advantages of Gosling Emacs: + +1. The program itself is much smaller. +GNU Emacs uses about 250k more pure storage. +As a result, Gosling Emacs can run on machines +that cannot run GNU Emacs. There is not much difference +in the amount of impure storage in the two programs. + +2. In some versions there is support for other forks to +establish communications channels to Emacs (using sockets?). + +3. There is a direct interface to dbm (data bases). + + +Advantages of GNU Emacs: + +* True Lisp, not Mocklisp. + +GNU Emacs's extension language has real symbols, lists +and vectors. Many extensions are much simpler, and some +become possible that were nearly impossible in Gosling Emacs. +Many primitives can have cleaner interfaces, and some features +need not be put in as special primitives because you can do +them easily yourself. + +* But Mocklisp still works. + +An automatic conversion package plus a run-time library +allows you to convert a Mocklisp library into a Lisp library. + +* Commands are better crafted. + +For example, nearly every editing function for which a +numeric argument would make sense as a repeat count does +accept a repeat count, and does handle a negative argument +in the way you would expect. + +* The manual is clearer. + +Everyone tells me it is a very good manual. + +* Better on-line documentation. + +Both functions and variables have documentation strings that +describe exactly how to use them. + +* C mode is smart. + +It really knows how to indent each line correctly, +for most popular indentation styles. (Some variables +control which style is used.) + +* Compatible with PDP-10 Emacs, Multics Emacs and Zmacs. + +The commands in GNU Emacs are nearly the same as in the +original Emacs and the other Emacses which imitated it. +(A few have been changed to fit the Unix environment better.) + +* Support for Gosling's Emacs commands. + +M-x set-gosmacs-bindings rebinds many editing commands for +compatibility with Gosling's Emacs. +M-x set-gnu-bindings reverses the change. + +* Side-by-side windows. + +You can split a GNU Emacs window either horizontally or +vertically. + +* Redisplay is faster. + +GNU Emacs sends about the same stuff to the terminal that +Gosling's does, but GNU Emacs uses much less CPU time to +decide what to do. + +* Entirely termcap-driven. + +GNU Emacs has nearly no special code for any terminal type. Various +new termcap strings make it possible to handle all terminals nearly as +fast as they could be handled by special-case code. + +* Display-hiding features. + +For example, Outline Mode makes it possible for you to edit +an outline, making entire sub-branches of the outline visible +or invisible when you wish. + +* You can interrupt with Control-G. + +Even a looping Lisp program can be stopped this way. +And even a loop in C code does not stop you from killing +Emacs and getting back to your shell. + +* Per-buffer Undo. + +You can undo the last several changes, in each buffer +independently. + +* The editor code itself is clean. + +Many people have remarked on how much they enjoy reading +the code for GNU Emacs. + + +One other note: The program etc/cvtmail that comes with GNU Emacs can +be used to convert a mail directory for Gosling Emacs's Rmail into a +Unix mail file that you could read into GNU Emacs's Rmail. + + +A detailed comparison by Rodney Zykowitz (rtgvax!ramin@eddie.mit.edu) + +Enclosed are two difference listings. The first one is a cross-reference +by Key bindings. The second is by alphabetized function name. +Only those functions normally bound to keys in a +"standard" version are included. As far as I know it excludes +bindings added here locally (but what do I know...) + +The Gosling's is version 2.02 and runs on VMS 4.2. The Gnu is +version 16.56.1 running under Ultrix 1.1. + + +And could someone send me some info on Gnu on VMS. I seem to have entirely +missed that posting. If it is hopeless, I just might sit down and write +a Gnu emulator for Unipress and a Unipress emulator for Gnu... But the +thought of that already makes me wanna.... + + +ramin... +Standard disclaimer excluded for humanitarian purposes. + + + +Command Binding Cross-references. By key code: + + VMS (Unipress) GNU Emacs +Key Binding Binding +--- ------- --------------- +^@ set-mark set-mark-command +^A beginning-of-line beginning-of-line +^B backward-character backward-char +^C exit-emacs exit-recursive-edit +^D delete-next-character delete-char +^E end-of-line end-of-line +^F forward-character forward-char +^G illegal-operation +^H delete-previous-character help-command +^H-v describe-variable +^H-w where-is +^H-t help-with-tutorial +^H-s describe-syntax +^H-n view-emacs-news +^H-^N view-emacs-news +^H-m describe-mode +^H-l view-lossage +^H-i info +^H-f describe-function +^H-d describe-function +^H-k describe-key +^H-c describe-key-briefly +^H-b describe-bindings +^H-a command-apropos +^H-^D describe-distribution +^H-^C describe-copying +^H-? help-for-help +^H-^H help-for-help +^I self-insert indent-for-tab-command +^J newline-and-indent newline-and-indent +^K kill-to-end-of-line kill-line +^L redraw-display recenter +^M newline newline +^N next-line next-line +^O newline-and-backup open-line +^P previous-line previous-line +^Q quote-character quoted-insert +^R search-reverse isearch-backward +^S search-forward isearch-forward +^T transpose-characters transpose-chars +^U argument-prefix universal-argument +^V next-page scroll-up +^W delete-to-killbuffer kill-region +^X ^X-prefix Control-x-prefix +^X-^A add-mode-abbrev +^X-^B list-buffers list-buffers +^X-^C exit-emacs save-buffers-kill-emacs +^X-^D describe-word-in-buffer list-directory +^X-^E compile-it eval-last-sexp +^X-^F write-pause-or-exit find-file +^X-^H inverse-add-mode-abbrev +^X-^I insert-file indent-rigidly +^X-^L downcase-region +^X-^M write-modified-files +^X-^N next-error set-goal-column +^X-^O use-old-buffer delete-blank-linkes +^X-^P mark-page +^X-^Q toggle-read-only +^X-^R read-file find-file-read-only +^X-^S write-current-file save-buffer +^X-^T transpose-lines +^X-^U new-undo upcase-region +^X-^V visit-file find-alternate-file +^X-^W write-named-file write-file +^X-^X exchange-dot-and-mark exchange-dot-and-mark +^X-^Z shrink-window suspend-emacs +^X-ESC repeat-complex-command +^X-! execute-monitor-command +^X-$ set-selective-display +^X-( start-remembering start-kbd-macro +^X-) stop-remembering end-kbd-macro +^X-+ add-global-abbrev +^X-- inverse-add-global-abbrev +^X-. set-fill-prefix +^X-/ dot-to-register +^X-0 delete-window +^X-1 delete-other-windows delete-other-windows +^X-2 split-current-window split-window-vertically +^X-4 ctl-x-4-prefix +^X-4-^F find-file-other-window +^X-4-. find-tag-other-window +^X-4-b pop-to-buffer +^X-4-d dired-other-window +^X-4-f find-file-other-window +^X-4-m mail-other-window +^X-5 split-window-horizontally +^X-; set-comment-column +^X-< scroll-left +^X-= what-cursor-position +^X-> scroll-right +^X-[ backward-page +^X-] forward-page +^X-^ enlarge-window +^X-` next-error +^X-a append-to-buffer +^X-b switch-to-buffer switch-to-buffer +^X-d delete-window dired +^X-e execute-keyboard-macro call-last-kbd-macro +^X-f set-fill-column +^X-g insert-register +^X-h mark-whole-buffer +^X-i insert-file +^X-j register-to-dot +^X-k kill-buffer +^X-l count-lines-page +^X-m mail +^X-n next-window narrow-to-region +^X-o other-window +^X-p previous-window narrow-to-page +^X-q kbd-macro-query +^X-r copy-rectangle-to-register +^X-s save-some-buffers +^X-u advertised-undo +^X-w widen +^X-x copy-to-register +^X-z enlarge-window +^X-{ shrink-window-horizontally +^X-} enlarge-window-horizontally +^X-DEL backward-kill-sentence +^Y yank-from-killbuffer yank +^Z scroll-one-line-up suspend-emacs +ESC ESC-prefix +ESC-^@ mark-sexp +ESC-^A beginning-of-defun +ESC-^B backward-sexp +ESC-^C exit-emacs exit-recursive-edit +ESC-^D down-list +ESC-^E end-of-defun +ESC-^F forward-sexp +ESC-^H mark-defun +ESC-^J indent-new-comment-line +ESC-^K kill-sexp +ESC-^N forward-list +ESC-^O split-line +ESC-^P backward-list +ESC-^S isearch-forward-regexp +ESC-^T transpose-sexps +ESC-^U backward-up-list +ESC-^V page-next-window scroll-other-window +ESC-^W delete-region-to-buffer append-next-kill +ESC-^Y yank-buffer +ESC-ESC execute-mlisp-line eval-expression +ESC-^^ case-region-invert +ESC-^\ indent-region +ESC-<SP> just-one-space +ESC-! line-to-top-of-window shell-command +ESC-$ spell-word +ESC-% query-replace +ESC-' abbrev-prefix-mark +ESC-( backward-paragraph insert-parentheses +ESC-) forward-paragraph move-past-close-and-reindent +ESC-, beginning-of-window tags-loop-continue +ESC-- meta-minus negative-argument +ESC-. end-of-window find-tag +ESC-0..ESC-9 meta-digit digit-argument +ESC-; indent-for-comment +ESC-< beginning-of-file beginning-of-buffer +ESC-= count-lines-region +ESC-> end-of-file end-of-buffer +ESC-@ mark-word +ESC-[ backward-paragraph +ESC-\ delete-horizontal-space +ESC-] forward-paragraph +ESC-? apropos +ESC-^ case-word-invert delete-indentation +ESC-a backward-sentence backward-sentence +ESC-b backward-word backward-word +ESC-d delete-next-word kill-word +ESC-e forward-sentence forward-sentence +ESC-f forward-word forward-word +ESC-g fill-region +ESC-h delete-previous-word mark-paragraph +ESC-j indent-C-procedure indent-new-comment-line +ESC-k kill-sentence +ESC-l case-word-lower downcase-word +ESC-q query-replace-string fill-paragraph +ESC-r replace-string move-to-window-line +ESC-t transpose-words +ESC-u case-word-upper upcase-word +ESC-v previous-page scroll-down +ESC-w copy-region-as-kill +ESC-x execute-extended-command execute-extended-command +ESC-y yank-pop +ESC-z scroll-one-line-down zap-to-char +ESC-| shell-command-on-region +ESC-~ not-modified +ESC-DEL backward-kill-word +^_ return-to-monitor + .., self-insert +- minus +.../ self-insert +0..9 digit +:..~ self-insert +^? delete-previous-character + + + + +Command Binding Cross-references. By name: + +Command VMS (Unipress) Key GNU Key +----------------------------- --------------------- ------------ +abbrev-prefix-mark ESC-' +add-global-abbrev ^X-+ +add-mode-abbrev ^X-^A +advertised-undo ^X-u +append-next-kill ESC-^W +append-to-buffer ^X-a +apropos ESC-? +argument-prefix ^U +backward-char ^B +backward-character ^B +backward-kill-sentence ^X-DEL +backward-kill-word ESC-DEL +backward-list ESC-^P +backward-page ^X-[ +backward-paragraph ESC-( +backward-paragraph ESC-[ +backward-sentence ESC-a +backward-sentence ESC-a +backward-sexp ESC-^B +backward-up-list ESC-^U +backward-word ESC-b +backward-word ESC-b +beginning-of-buffer ESC-< +beginning-of-defun ESC-^A +beginning-of-file ESC-< +beginning-of-line ^A +beginning-of-line ^A +beginning-of-window ESC-, +call-last-kbd-macro ^X-e +case-region-invert ESC-^^ +case-word-invert ESC-^ +case-word-lower ESC-l +case-word-upper ESC-u +command-apropos ^H-a +compile-it ^X-^E +control-x-prefix ^X +control-x-prefix ^X +copy-rectangle-to-register ^X-r +copy-region-as-kill ESC-w +copy-to-register ^X-x +count-lines-page ^X-l +count-lines-region ESC-= +ctl-x-4-prefix ^X-4 +delete-blank-linkes ^X-^O +delete-char ^D +delete-horizontal-space ESC-\ +delete-indentation ESC-^ +delete-next-character ^D +delete-next-word ESC-d +delete-other-windows ^X-1 +delete-other-windows ^X-1 +delete-previous-character ^H ^? +delete-previous-character ^? +delete-previous-word ESC-h +delete-region-to-buffer ESC-^W +delete-to-killbuffer ^W +delete-window ^X-0 +delete-window ^X-d +describe-bindings ^H-b +describe-copying ^H-^C +describe-distribution ^H-^D +describe-function ^H-f +describe-function ^H-d +describe-key ^H-k +describe-key-briefly ^H-c +describe-mode ^H-m +describe-syntax ^H-s +describe-variable ^H-v +describe-word-in-buffer ^X-^D +digit 0..9 +digit 0..9 +digit-argument ESC-0..ESC-9 +dired ^X-d +dired-other-window ^X-4-d +dot-to-register ^X-/ +down-list ESC-^D +downcase-region ^X-^L +downcase-word ESC-l +end-kbd-macro ^X-) +end-of-buffer ESC-> +end-of-defun ESC-^E +end-of-file ESC-> +end-of-line ^E +end-of-line ^E +end-of-window ESC-. +enlarge-window ^X-^ +enlarge-window ^X-z +enlarge-window-horizontally ^X-} +esc-prefix ESC +esc-prefix ESC +eval-expression ESC-ESC +eval-last-sexp ^X-^E +exchange-dot-and-mark ^X-^X +exchange-dot-and-mark ^X-^X +execute-extended-command ESC-x +execute-extended-command ESC-x +execute-keyboard-macro ^X-e +execute-mlisp-line ESC-ESC +execute-monitor-command ^X-! +exit-emacs ^C +exit-emacs ^X-^C +exit-emacs ESC-^C +exit-recursive-edit ^C +exit-recursive-edit ESC-^C +fill-paragraph ESC-q +fill-region ESC-g +find-alternate-file ^X-^V +find-file ^X-^F +find-file-other-window ^X-4-^F +find-file-other-window ^X-4-f +find-file-read-only ^X-^R +find-tag ESC-. +find-tag-other-window ^X-4-. +forward-char ^F +forward-character ^F +forward-list ESC-^N +forward-page ^X-] +forward-paragraph ESC-) +forward-paragraph ESC-] +forward-sentence ESC-e +forward-sentence ESC-e +forward-sexp ESC-^F +forward-word ESC-f +forward-word ESC-f +help-command ^H +help-for-help ^H-? +help-for-help ^H-^H +help-with-tutorial ^H-t +illegal-operation ^G +indent-C-procedure ESC-j +indent-for-comment ESC-; +indent-for-tab-command ^I +indent-new-comment-line ESC-^J +indent-new-comment-line ESC-j +indent-region ESC-^\ +indent-rigidly ^X-^I +info ^H-i +insert-file ^X-^I +insert-file ^X-i +insert-parentheses ESC-( +insert-register ^X-g +inverse-add-global-abbrev ^X-- +inverse-add-mode-abbrev ^X-^H +isearch-backward ^R +isearch-forward ^S +isearch-forward-regexp ESC-^S +just-one-space ESC-<SP> +kbd-macro-query ^X-q +kill-buffer ^X-k +kill-line ^K +kill-region ^W +kill-sentence ESC-k +kill-sexp ESC-^K +kill-to-end-of-line ^K +kill-word ESC-d +line-to-top-of-window ESC-! +list-buffers ^X-^B +list-buffers ^X-^B +list-directory ^X-^D +mail ^X-m +mail-other-window ^X-4-m +mark-defun ^X-^H +mark-page ^X-^P +mark-paragraph ESC-h +mark-sexp ESC-^@ +mark-whole-buffer ^X-h +mark-word ESC-@ +meta-digit ESC-0..ESC-9 +meta-minus ESC-- +minus - +minus - +move-past-close-and-reindent ESC-) +move-to-window-line ESC-r +narrow-to-page ^X-p +narrow-to-region ^X-n +negative-argument ESC-- +new-undo ^X-^U +newline ^M +newline ^M +newline-and-backup ^O +newline-and-indent ^J +newline-and-indent ^J +next-error ^X-^N +next-error ^X-` +next-line ^N +next-line ^N +next-page ^V +next-window ^X-n +not-modified ESC-~ +open-line ^O +other-window ^X-o +page-next-window ESC-^V +pop-to-buffer ^X-4-b +previous-line ^P +previous-line ^P +previous-page ESC-v +previous-window ^X-p +query-replace ESC-% +query-replace-string ESC-q +quote-character ^Q +quoted-insert ^Q +read-file ^X-^R +recenter ^L +redraw-display ^L +register-to-dot ^X-j +repeat-complex-command ^X-ESC +replace-string ESC-r +return-to-monitor ^_(CTL-/) +save-buffer ^X-^S +save-buffers-kill-emacs ^X-^C +save-some-buffers ^X-s +scroll-down ESC-v +scroll-left ^X-< +scroll-one-line-down ESC-z +scroll-one-line-up ^Z +scroll-other-window ESC-^V +scroll-right ^X-> +scroll-up ^V +search-forward ^S +search-reverse ^R +self-insert ^I +self-insert <SP>.., +self-insert .../ +self-insert :..~ +set-comment-column ^X-; +set-fill-column ^X-f +set-fill-prefix ^X-. +set-goal-column ^X-^N +set-mark ^@ +set-mark-command ^@ +set-selective-display ^X-$ +shell-command ESC-! +shell-command-on-region ESC-| +shrink-window ^X-^Z +shrink-window-horizontally ^X-{ +spell-word ESC-$ +split-current-window ^X-2 +split-line ESC-^O +split-window-horizontally ^X-5 +split-window-vertically ^X-2 +start-kbd-macro ESC-( +start-remembering ^X-( +stop-remembering ^X-) +suspend-emacs ^X-^Z +suspend-emacs ^Z +switch-to-buffer ^X-b +switch-to-buffer ^X-b +tags-loop-continue ESC-, +toggle-read-only ^X-^Q +transpose-characters ^T +transpose-chars ^T +transpose-lines ^X-^T +transpose-sexps ESC-^T +transpose-words ESC-t +universal-argument ^U +upcase-region ^X-^U +upcase-word ESC-u +use-old-buffer ^X-^O +view-emacs-news ^H-^N +view-emacs-news ^H-n +view-lossage ^H-l +visit-file ^X-^V +what-cursor-position ^X-= +where-is ^H-w +widen ^X-w +write-current-file ^X-^S +write-file ^X-^W +write-modified-files ^X-^M +write-named-file ^X-^W +write-pause-or-exit ^X-^F +yank ^Y +yank-buffer ESC-^Y +yank-from-killbuffer ^Y +yank-pop ESC-y +zap-to-char ESC-z |