summaryrefslogtreecommitdiff
path: root/etc/GOSDIFF
diff options
context:
space:
mode:
Diffstat (limited to 'etc/GOSDIFF')
-rw-r--r--etc/GOSDIFF614
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