changeset 2307:10e417efb12a

Added or corrected Commentary sections
author Eric S. Raymond <esr@snark.thyrsus.com>
date Mon, 22 Mar 1993 03:27:18 +0000
parents 59c8668f70c7
children f287613dfc28
files lisp/=ada.el lisp/=cmulisp.el lisp/=gosmacs.el lisp/=iso8859-1.el lisp/=mim-mode.el lisp/abbrev.el lisp/add-log.el lisp/array.el lisp/autoinsert.el lisp/buff-menu.el lisp/cmuscheme.el lisp/comint.el lisp/compare-w.el lisp/diff.el lisp/dired-aux.el lisp/dired.el lisp/ebuff-menu.el lisp/ehelp.el lisp/emacs-lisp/autoload.el lisp/emacs-lisp/bytecomp.el lisp/emacs-lisp/cl-indent.el lisp/emacs-lisp/debug.el lisp/emacs-lisp/disass.el lisp/emacs-lisp/edebug.el lisp/emacs-lisp/lisp-mode.el lisp/emacs-lisp/lisp.el lisp/emerge.el lisp/files.el lisp/hexl.el lisp/indent.el lisp/international/iso-insert.el lisp/international/iso-swed.el lisp/kermit.el lisp/ledit.el lisp/lpr.el lisp/macros.el lisp/mail/emacsbug.el lisp/mail/mail-utils.el lisp/mail/mailalias.el lisp/makesum.el lisp/play/dissociate.el lisp/play/doctor.el lisp/play/hanoi.el lisp/play/life.el lisp/progmodes/awk-mode.el lisp/progmodes/c-mode.el lisp/progmodes/cmacexp.el lisp/progmodes/compile.el lisp/progmodes/cplus-md.el lisp/progmodes/fortran.el lisp/progmodes/hideif.el lisp/progmodes/icon.el lisp/progmodes/make-mode.el lisp/progmodes/modula2.el lisp/progmodes/perl-mode.el lisp/progmodes/prolog.el lisp/progmodes/scheme.el lisp/textmodes/=ispell4.el lisp/textmodes/bib-mode.el lisp/textmodes/bibtex.el lisp/textmodes/fill.el lisp/textmodes/nroff-mode.el lisp/textmodes/sgml-mode.el lisp/textmodes/tex-mode.el
diffstat 64 files changed, 518 insertions(+), 267 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/=ada.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/=ada.el	Mon Mar 22 03:27:18 1993 +0000
@@ -166,8 +166,8 @@
   (setq comment-column 41)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "--+ *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'c-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'c-comment-indent)
   (make-local-variable 'parse-sexp-ignore-comments)
   (setq parse-sexp-ignore-comments t)
   (run-hooks 'ada-mode-hook))
--- a/lisp/=cmulisp.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/=cmulisp.el	Mon Mar 22 03:27:18 1993 +0000
@@ -72,62 +72,65 @@
 ;;       '((lambda () 
 ;;           (define-key cmulisp-mode-map "\C-ct" 'favorite-cmd))))
 
-
-;;; Brief Command Documentation:
-;;;============================================================================
-;;; Comint Mode Commands: (common to cmulisp and all comint-derived modes)
-;;;
-;;; m-p	    comint-previous-input    	    Cycle backwards in input history
-;;; m-n	    comint-next-input  	    	    Cycle forwards
-;;; m-c-r   comint-previous-input-matching  Search backwards in input history
-;;; return  comint-send-input
-;;; c-a     comint-bol                      Beginning of line; skip prompt.
-;;; c-d	    comint-delchar-or-maybe-eof	    Delete char unless at end of buff.
-;;; c-c c-u comint-kill-input	    	    ^u
-;;; c-c c-w backward-kill-word    	    ^w
-;;; c-c c-c comint-interrupt-subjob 	    ^c
-;;; c-c c-z comint-stop-subjob	    	    ^z
-;;; c-c c-\ comint-quit-subjob	    	    ^\
-;;; c-c c-o comint-kill-output		    Delete last batch of process output
-;;; c-c c-r comint-show-output		    Show last batch of process output
-;;;         send-invisible                  Read line w/o echo & send to proc
-;;;         comint-continue-subjob	    Useful if you accidentally suspend
-;;;					        top-level job.
-;;; comint-mode-hook is the comint mode hook.
+;; Brief Command Documentation:
+;;============================================================================
+;; Comint Mode Commands: (common to cmulisp and all comint-derived modes)
+;;
+;; m-p	    comint-previous-input    	    Cycle backwards in input history
+;; m-n	    comint-next-input  	    	    Cycle forwards
+;; m-c-r   comint-previous-input-matching  Search backwards in input history
+;; return  comint-send-input
+;; c-a     comint-bol                      Beginning of line; skip prompt.
+;; c-d	    comint-delchar-or-maybe-eof	    Delete char unless at end of buff.
+;; c-c c-u comint-kill-input	    	    ^u
+;; c-c c-w backward-kill-word    	    ^w
+;; c-c c-c comint-interrupt-subjob 	    ^c
+;; c-c c-z comint-stop-subjob	    	    ^z
+;; c-c c-\ comint-quit-subjob	    	    ^\
+;; c-c c-o comint-kill-output		    Delete last batch of process output
+;; c-c c-r comint-show-output		    Show last batch of process output
+;;         send-invisible                  Read line w/o echo & send to proc
+;;         comint-continue-subjob	    Useful if you accidentally suspend
+;;					        top-level job.
+;; comint-mode-hook is the comint mode hook.
 
-;;; CMU Lisp Mode Commands:
-;;; c-m-x   lisp-send-defun     This binding is a gnu convention.
-;;; c-c c-l lisp-load-file  	Prompt for file name; tell Lisp to load it.
-;;; c-c c-k lisp-compile-file	Prompt for file name; tell Lisp to kompile it.
-;;; 	    	    	    	Filename completion is available, of course.
-;;;
-;;; Additionally, these commands are added to the key bindings of Lisp mode:
-;;; c-m-x   lisp-eval-defun         This binding is a gnu convention.
-;;; c-c c-e lisp-eval-defun 	    Send the current defun to Lisp process.
-;;; c-x c-e lisp-eval-last-sexp     Send the previous sexp to Lisp process.
-;;; c-c c-r lisp-eval-region        Send the current region to Lisp process.
-;;; c-c c-c lisp-compile-defun      Compile the current defun in Lisp process.
-;;; c-c c-z switch-to-lisp          Switch to the Lisp process buffer.
-;;; c-c c-l lisp-load-file          (See above. In a Lisp file buffer, default
-;;; c-c c-k lisp-compile-file        is to load/compile the current file.)
-;;; c-c c-d lisp-describe-sym	    Query Lisp for a symbol's description.
-;;; c-c c-a lisp-show-arglist	    Query Lisp for function's arglist.
-;;; c-c c-f lisp-show-function-documentation Query Lisp for a function's doc.
-;;; c-c c-v lisp-show-variable-documentation Query Lisp for a variable's doc.
+;; CMU Lisp Mode Commands:
+;; c-m-x   lisp-send-defun     This binding is a gnu convention.
+;; c-c c-l lisp-load-file  	Prompt for file name; tell Lisp to load it.
+;; c-c c-k lisp-compile-file	Prompt for file name; tell Lisp to kompile it.
+;; 	    	    	    	Filename completion is available, of course.
+;;
+;; Additionally, these commands are added to the key bindings of Lisp mode:
+;; c-m-x   lisp-eval-defun         This binding is a gnu convention.
+;; c-c c-e lisp-eval-defun 	    Send the current defun to Lisp process.
+;; c-x c-e lisp-eval-last-sexp     Send the previous sexp to Lisp process.
+;; c-c c-r lisp-eval-region        Send the current region to Lisp process.
+;; c-c c-c lisp-compile-defun      Compile the current defun in Lisp process.
+;; c-c c-z switch-to-lisp          Switch to the Lisp process buffer.
+;; c-c c-l lisp-load-file          (See above. In a Lisp file buffer, default
+;; c-c c-k lisp-compile-file        is to load/compile the current file.)
+;; c-c c-d lisp-describe-sym	    Query Lisp for a symbol's description.
+;; c-c c-a lisp-show-arglist	    Query Lisp for function's arglist.
+;; c-c c-f lisp-show-function-documentation Query Lisp for a function's doc.
+;; c-c c-v lisp-show-variable-documentation Query Lisp for a variable's doc.
 
-;;; cmulisp	    	    	    Fires up the Lisp process.
-;;; lisp-compile-region     	    Compile all forms in the current region.
-;;;
-;;; CMU Lisp Mode Variables:
-;;; cmulisp-filter-regexp	    Match this => don't get saved on input hist
-;;; inferior-lisp-program   	    Name of Lisp program run-lisp executes
-;;; inferior-lisp-load-command	    Customises lisp-load-file
-;;; cmulisp-mode-hook  	    
-;;; inferior-lisp-prompt	    Initialises comint-prompt-regexp.
-;;;				    Backwards compatibility.
-;;; lisp-source-modes               Anything loaded into a buffer that's in
-;;;                                 one of these modes is considered Lisp 
-;;;                                 source by lisp-load/compile-file.
+;; cmulisp	    	    	    Fires up the Lisp process.
+;; lisp-compile-region     	    Compile all forms in the current region.
+;;
+;; CMU Lisp Mode Variables:
+;; cmulisp-filter-regexp	    Match this => don't get saved on input hist
+;; inferior-lisp-program   	    Name of Lisp program run-lisp executes
+;; inferior-lisp-load-command	    Customises lisp-load-file
+;; cmulisp-mode-hook  	    
+;; inferior-lisp-prompt	    Initialises comint-prompt-regexp.
+;;				    Backwards compatibility.
+;; lisp-source-modes               Anything loaded into a buffer that's in
+;;                                 one of these modes is considered Lisp 
+;;                                 source by lisp-load/compile-file.
+
+;;; Code:
+
+(require 'comint)
 
 ;;; Read the rest of this file for more information.
 
--- a/lisp/=gosmacs.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/=gosmacs.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Make GNU Emacs look like Gosling Emacs.  `M-x set-gosmacs-bindings'
+;; does this change; `M-x set-gnu-bindings' undoes it.
+
 ;;; Code:
 
 (require 'mlsupport)
--- a/lisp/=iso8859-1.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/=iso8859-1.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,10 +22,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Code:
+;;; Commentary:
 
 ;; Written by Howard Gayle.  See case-table.el for details.
 
+;;; Code:
+
 (require 'case-table)
 
 (let ((table (standard-case-table)))
--- a/lisp/=mim-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/=mim-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -225,8 +225,8 @@
   (setq comment-end "\"")
   (make-local-variable 'comment-column)
   (setq comment-column 40)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'indent-mim-comment)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'indent-mim-comment)
   ;; tell generic indenter how to indent.
   (make-local-variable 'indent-line-function)
   (setq indent-line-function 'indent-mim-line)
--- a/lisp/abbrev.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/abbrev.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,10 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This facility is documented in the Emacs Manual.
+
 ;;; Code:
 
 (defconst only-global-abbrevs nil "\
--- a/lisp/add-log.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/add-log.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,10 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This facility is documented in the Emacs Manual.
+
 ;;; Code:
 
 ;;;###autoload
--- a/lisp/array.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/array.el	Mon Mar 22 03:27:18 1993 +0000
@@ -24,14 +24,18 @@
 
 ;;; Commentary:
 
-;;;  Written by dmb%morgoth@harvard.harvard.edu (address is old)
-;;;   (David M. Brown at Goldberg-Zoino & Associates, Inc.)
-;;;  Thanks to cph@kleph.ai.mit.edu for assistance
+;; Commands for editing a buffer interpreted as a rectangular array
+;; or matrix of whitespace-separated strings.  You specify the array
+;; dimensions and some other parameters at startup time.
 
-;;; To do:
-;;;   Smooth initialization process by grokking local variables list
-;;;     at end of buffer or parsing buffer using whitespace as delimiters.
-;;;   Make 'array-copy-column-right faster.
+;;  Written by dmb%morgoth@harvard.harvard.edu (address is old)
+;;   (David M. Brown at Goldberg-Zoino & Associates, Inc.)
+;;  Thanks to cph@kleph.ai.mit.edu for assistance
+
+;; To do:
+;;   Smooth initialization process by grokking local variables list
+;;     at end of buffer or parsing buffer using whitespace as delimiters.
+;;   Make 'array-copy-column-right faster.
 
 
 ;;; Code:
--- a/lisp/autoinsert.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/autoinsert.el	Mon Mar 22 03:27:18 1993 +0000
@@ -49,8 +49,6 @@
 ;;;           Duke University Medical Center
 ;;;           Durham, NC 27710
 ;;;	      (crm@cs.duke.edu,mcnc!duke!crm) 
-;;;
-;;;  Date: Fri Jul  1 16:15:31 EDT 1988
 
 ;;; Code:
 
--- a/lisp/buff-menu.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/buff-menu.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,13 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Edit, delete, or change attributes of all currently active Emacs
+;; buffers from a list summarizing thir state.  A good way to browse
+;; any special or scratch buffers you have loaded, since you can't find
+;; them by filename.
+
 ;;; Code:
 
 ; Put buffer *Buffer List* into proper mode right away
--- a/lisp/cmuscheme.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/cmuscheme.el	Mon Mar 22 03:27:18 1993 +0000
@@ -1,6 +1,7 @@
 ;;; cmuscheme.el --- Scheme process in a buffer. Adapted from tea.el.
 
-;;; Copyright (C) 1988 Free Software Foundation, Inc.
+
+;; Copyright (C) 1988 Free Software Foundation, Inc.
 
 ;; Author: Olin Shivers <olin.shivers@cs.cmu.edu>
 ;; Keywords: processes, lisp
--- a/lisp/comint.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/comint.el	Mon Mar 22 03:27:18 1993 +0000
@@ -1,4 +1,5 @@
 ;;; comint.el --- general command interpreter in a window stuff
+
 ;; Copyright (C) 1988, 1990, 1992, 1993 Free Software Foundation, Inc.
 
 ;; Author: Olin Shivers <shivers@cs.cmu.edu>
--- a/lisp/compare-w.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/compare-w.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,13 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This package provides one entry point, compare-windows.  It compares
+;; text starting from point in two adjacent windows, advancing point
+;; until it finds a difference.  Option variables permit you to ignore
+;; whitespace differences, or case differences, or both.
+
 ;;; Code:
 
 (defvar compare-windows-whitespace " \t\n"
--- a/lisp/diff.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/diff.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This package helps you explore differences between files, using the
+;; UNIX command diff(1).  The commands are `diff' and `diff-backup'.
+;; You can specify options with `diff-switches'.
+
 ;;; Code:
 
 (require 'compile)
--- a/lisp/dired-aux.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/dired-aux.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,6 +22,10 @@
 
 ;;; Commentary:
 
+;; The parts of dired mode not normally used.  This is a space-saving hack
+;; to avoid having to load a large mode when all that's wanted are a few
+;; functions.
+
 ;; Rewritten in 1990/1991 to add tree features, file marking and
 ;; sorting by Sebastian Kremer <sk@thp.uni-koeln.de>.
 ;; Finished up by rms in 1992.
--- a/lisp/dired.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/dired.el	Mon Mar 22 03:27:18 1993 +0000
@@ -23,6 +23,9 @@
 
 ;;; Commentary:
 
+;; This is a major mode for directory browsing and editing.  It is
+;; documented in the Emacs manual.
+
 ;; Rewritten in 1990/1991 to add tree features, file marking and
 ;; sorting by Sebastian Kremer <sk@thp.uni-koeln.de>.
 ;; Finished up by rms in 1992.
--- a/lisp/ebuff-menu.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/ebuff-menu.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,8 +22,9 @@
 
 ;;; Commentary:
 
-;; who says one can't have typeout windows in gnu emacs?
-;; like ^r select buffer from its emacs lunar or tmacs libraries.
+;; Who says one can't have typeout windows in GNU Emacs?   The entry
+;; point, `electric-buffer-list' works like ^r select buffer from the
+;; ITS Emacs lunar or tmacs libraries.
 
 ;;; Code:
 
--- a/lisp/ehelp.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/ehelp.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,14 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This package provides a pre-packaged `Electric Help Mode' for
+;; browsing on-line help screens.  There is one entry point,
+;; `with-electric-help'; All you have to give it is a no-argument
+;; function that generates the actual text of the help into the urrent
+;; buffer.
+
 ;;; Code:
 
 (require 'electric)
--- a/lisp/emacs-lisp/autoload.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/autoload.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,13 @@
 ;;; 02139, USA.
 ;;;
 
+;;; Commentary;:
+
+;; This code helps GNU Emacs maintainers keep the autoload.el file up to
+;; date.  It interprets magic cookies of the form ";;;###autoload" in
+;; lisp source files in various useful ways.  To learn more, read the
+;; source; if you're going to use this, you'd better be able to.
+
 ;;; Code:
 
 (defun make-autoload (form file)
--- a/lisp/emacs-lisp/bytecomp.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/bytecomp.el	Mon Mar 22 03:27:18 1993 +0000
@@ -28,6 +28,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; The Emacs Lisp byte compiler.  This crunches lisp source into a sort
+;; of p-code which takes up less space and can be interpreted faster.
+;; The user entry points are byte-compile-file and byte-recompile-directory.
+
 ;;; Code:
 
 ;;; ========================================================================
--- a/lisp/emacs-lisp/cl-indent.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/cl-indent.el	Mon Mar 22 03:27:18 1993 +0000
@@ -1,12 +1,12 @@
 ;;; cl-indent.el --- enhanced lisp-indent mode
 
 ;; Copyright (C) 1987 Free Software Foundation, Inc.
-;; Written by Richard Mlynarik July 1987
+
 ;; Author: Richard Mlynark <mly@eddie.mit.edu>
+;; Created: July 1987
 ;; Maintainer: FSF
 ;; Keywords: lisp, tools
 
-
 ;; This file is part of GNU Emacs.
 
 ;; GNU Emacs is free software; you can redistribute it and/or modify
@@ -25,6 +25,12 @@
 
 ;;; Commentary:
 
+;; This package supplies a single entry point, common-lisp-indent-function,
+;; which performs indentation in the preferred style for Common Lisp code.
+;; To enable it:
+;;
+;; (setq lisp-indent-function 'common-lisp-indent-function)
+
 ;;>> TODO
 ;; :foo
 ;;   bar
@@ -41,8 +47,6 @@
 
 ;;; Code:
 
-;;; Hairy lisp indentation.
-
 (defvar lisp-indent-maximum-backtracking 3
   "*Maximum depth to backtrack out from a sublist for structured indentation.
 If this variable is  0, no backtracking will occur and forms such as flet
@@ -466,10 +470,4 @@
 ;(put 'with-condition-handler 'common-lisp-indent-function '((1 4 ((* 1))) (2 &body)))
 ;(put 'condition-case 'common-lisp-indent-function '((1 4) (* 2 ((0 1) (1 3) (2 &body)))))
 
-
-;;;; Turn it on.
-;(setq lisp-indent-function 'common-lisp-indent-function)
-
-;; To disable this stuff, (setq lisp-indent-function 'lisp-indent-function)
-
 ;;; cl-indent.el ends here
--- a/lisp/emacs-lisp/debug.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/debug.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,10 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This is a major mode documented in the Emacs manual.
+
 ;;; Code:
 
 (defvar debug-function-list nil
--- a/lisp/emacs-lisp/disass.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/disass.el	Mon Mar 22 03:27:18 1993 +0000
@@ -25,9 +25,14 @@
 
 ;;; Commentary:
 
-;;; Original version by Doug Cutting (doug@csli.stanford.edu)
-;;; Substantially modified by Jamie Zawinski <jwz@lucid.com> for
-;;; the new lapcode-based byte compiler.
+;; The single entry point, `disassemble', disassembles a code object generated
+;; by the Emacs Lisp byte-compiler.  This doesn't invert the compilation
+;; operation, not by a long shot, but it's useful for debugging.
+
+;;
+;; Original version by Doug Cutting (doug@csli.stanford.edu)
+;; Substantially modified by Jamie Zawinski <jwz@lucid.com> for
+;; the new lapcode-based byte compiler.
 
 ;;; Code:
 
--- a/lisp/emacs-lisp/edebug.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/edebug.el	Mon Mar 22 03:27:18 1993 +0000
@@ -5,6 +5,10 @@
 ;; Author: Daniel LaLiberte <liberte@cs.uiuc.edu>
 ;; Keywords: lisp, tools, maint
 
+;; This is Dan's 2.5 version with some header comments rearranged to separate
+;; the Change Log from the Commentary (so the package-finder code can browse
+;; the Commentary).
+
 ;; This file is part of GNU Emacs.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
@@ -41,17 +45,30 @@
 
 ;;; Contents:
 ;;; =========
+;;; Installation
 ;;; Change list
-;;; Installation
-;;; Todo list
 ;;; Utilities
 ;;; Parser
 ;;; Debugger
 
 
-;;;================================================================
-;;; Change list
-;;; -----------
+;;; Installation
+;;; ------------
+;; Put edebug.el in some directory in your load-path and byte-compile it.
+
+;; Put the following forms in your .emacs file.
+;; (define-key emacs-lisp-mode-map "\^Xx" 'edebug-defun)
+;; (autoload 'edebug-defun "edebug")
+;; (autoload 'edebug-debug "edebug")
+;; (setq debugger 'edebug-debug)
+;; ... other options, described in the next section.
+
+;; Evaluate a defun for edebug with edebug-defun.  
+;; Evaluate your function normally.
+;; Use the "?" command in edebug to describe other commands.
+;; See edebug.texinfo for more instructions.
+
+;;; Change Log:
 
 ;;; Revision 2.5  91/07/25  13:32:53  liberte
 ;;; Doc string cleanup.
@@ -171,23 +188,6 @@
 ;;; Initial revision
 ;;; 
 
-
-;;; Installation
-;;; ------------
-;; Put edebug.el in some directory in your load-path and byte-compile it.
-
-;; Put the following forms in your .emacs file.
-;; (define-key emacs-lisp-mode-map "\^Xx" 'edebug-defun)
-;; (autoload 'edebug-defun "edebug")
-;; (autoload 'edebug-debug "edebug")
-;; (setq debugger 'edebug-debug)
-;; ... other options, described in the next section.
-
-;; Evaluate a defun for edebug with edebug-defun.  
-;; Evaluate your function normally.
-;; Use the "?" command in edebug to describe other commands.
-;; See edebug.texinfo for more instructions.
-
 ;;; Code:
 
 
--- a/lisp/emacs-lisp/lisp-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/lisp-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -23,6 +23,13 @@
 
 ;;; Code:
 
+;;; Commentary:
+
+;; The base major mode for editing Lisp code (used also for Emacs Lisp).
+;; This mode is documented in the Emacs manual
+
+;;; Code:
+
 (defvar lisp-mode-syntax-table nil "")
 (defvar emacs-lisp-mode-syntax-table nil "")
 (defvar lisp-mode-abbrev-table nil "")
@@ -94,8 +101,8 @@
   (setq comment-start-skip ";+ *")
   (make-local-variable 'comment-column)
   (setq comment-column 40)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'lisp-comment-indent))
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'lisp-comment-indent))
 
 (defvar shared-lisp-mode-map ()
   "Keymap for commands shared by all sorts of Lisp modes.")
--- a/lisp/emacs-lisp/lisp.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emacs-lisp/lisp.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,10 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Lisp ediing commands to go with Lisp major mode.
+
 ;;; Code:
 
 (defvar defun-prompt-regexp nil
--- a/lisp/emerge.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/emerge.el	Mon Mar 22 03:27:18 1993 +0000
@@ -1,4 +1,5 @@
 ;;; emerge.el --- merge diffs under Emacs control
+
 ;;; The author has placed this file in the public domain.
 
 ;; Author: Dale R. Worley <drw@math.mit.edu>
@@ -7,120 +8,8 @@
 
 ;;; Commentary:
 
-; - Changes from version 3 to version 4
-; 
-; More configuration variables are marked as user options.
-; 
-; Code is included for an improved version of make-auto-save-file-name
-; which eliminates many problems with the default version.  See the
-; documentation of emerge-make-auto-save-file-name to see how to
-; activate it.
-; 
-; Emerge now works with Gnu diff3, which can produce the groups of lines
-; from the various files in the order 1, 2, 3 or 1, 3, 2.
-; 
-; Added x f command to show what files or buffers are being operated on.
-; 
-; The merge buffer now starts read-only, which being in fast mode it
-; should be.
-; 
-; When merging buffers, Emerge writes their contents into temporary
-; files in the directory $TMPDIR (if it is defined), or /tmp by default.
-; 
-; Added x j command to join two differences.
-; 
-; Added x s command to split a difference into two differences.
-; 
-; Added emerge-version variable and function to report the version of Emerge
-; being run.
-; 
-; Added x t command to trim unchanged lines off top and bottom of
-; difference region.
-; 
-; Added x d, x a, and x b commands to locate the differences at or near
-; a given location in one of the buffers.
-; 
-; Emerge no longer tries to copy the minor modes from the A buffer to
-; the merge buffer, only the major mode.
-; 
-; The programs executed to find the differences between versions of the file
-; are no longer controlled by emerge-diff/diff3-command, but rather by:
-;   emerge-diff-program	      
-;     Variable: *Name of the program which compares two files.
-;   emerge-diff3-program	      
-;     Variable: *Name of the program which compares an ancestor file
-;     (first argument) and two variant files (second and third arguments).
-;   emerge-diff-options	      
-;     Variable: *Options to be passed to emerge-diff/diff3-program.
-; 
-; The names of the files are expanded (see expand-file-name) before being
-; passed to emerge-diff/diff3-program, so diff need not invoked under a shell
-; that understands '~', for instance.
-; 
-; If the diff/diff3 program reports errors, the user is notified and the
-; errors are displayed.
-; 
-; The command "0j" can be used to suppress the flags from showing in the buffers.
-; 
-; A discussion of the effect of the merge flags on indentation of code
-; has been added to the documentation.
-; 
-; If kill-fix.el is loaded, Emerge control variables new have their
-; 'preserved' property set, so setting the major mode in the merge
-; buffer doesn't destroy Emerge's state.
-; 
-; Added x c, x C, and x x commands to allow the A and B versions to be
-; combined into #ifdef - #endif forms.
-; 
-; Replaced calls of "ding" to calls of "error" where appropriate.
-; 
-; Added x m command to allow major mode of merge buffer to be changed.
-; 
-; Added x 1 command to shrink the merge window to one line.
-; 
-; Added emerge-startup-hook to allow customization.
-; 
-; Fixed a bug that is activated when a remote merge request is made when
-; the minibuffer window is selected.
-; 
-; - Changes from version 2 to version 3
-; 
-; The directory into which temporary files are written is now controlled
-; by a user option (emerge-temp-file-prefix).
-; 
-; The A and B versions of the difference can be loaded into the kill
-; ring with the "c a" and "c b" commands.
-; 
-; The A and B versions of the difference can be inserted into the merge
-; buffer with the "i a" and "i b" commands.
-; 
-; The difference region of the merge buffer can be surrounded by the
-; point and mark with the "m" command.
-; 
-; The three windows can be scrolled together with the "^", "v", "<",
-; ">", and "|" commands.
-; 
-; The "s s" and "s a" commands report the state of the option in the
-; echo area.  Similarly, the "f" and "e" commands report what they do in
-; the echo area.
-; 
-; The "q" command has been revamped, and its behavior is now controlled
-; by the manner in which Emerge is started.  In particular, if you wish
-; to write the merge buffer into a file upon exiting, invoke
-; emerge-files[-with-ancestor] with a prefix argument, and it will
-; prompt you for the file name.  Then exiting will write the merge
-; buffer to the file, unless "q" is given a prefix argument.
-; 
-; The "i a" and "i b" commands now work in fast mode.
-; 
-; The modifications that Emerge makes to save-buffer and write-file are
-; described.
-; 
-; Emerge now handles merging narrowed buffers correctly.
-; 
-; Emerge now isn't fooled when the buffer visiting a file is not the
-; same as the file on disk.
-; 
+;; This package assists you in reconciling differences between pair of files.
+
 ; - Starting
 ; 
 ; To start Emerge, you must run one of four commands:
@@ -558,6 +447,122 @@
 ; 
 ; ================================================================
 
+;;; Change Log:
+
+; - Changes from version 3 to version 4
+; 
+; More configuration variables are marked as user options.
+; 
+; Code is included for an improved version of make-auto-save-file-name
+; which eliminates many problems with the default version.  See the
+; documentation of emerge-make-auto-save-file-name to see how to
+; activate it.
+; 
+; Emerge now works with Gnu diff3, which can produce the groups of lines
+; from the various files in the order 1, 2, 3 or 1, 3, 2.
+; 
+; Added x f command to show what files or buffers are being operated on.
+; 
+; The merge buffer now starts read-only, which being in fast mode it
+; should be.
+; 
+; When merging buffers, Emerge writes their contents into temporary
+; files in the directory $TMPDIR (if it is defined), or /tmp by default.
+; 
+; Added x j command to join two differences.
+; 
+; Added x s command to split a difference into two differences.
+; 
+; Added emerge-version variable and function to report the version of Emerge
+; being run.
+; 
+; Added x t command to trim unchanged lines off top and bottom of
+; difference region.
+; 
+; Added x d, x a, and x b commands to locate the differences at or near
+; a given location in one of the buffers.
+; 
+; Emerge no longer tries to copy the minor modes from the A buffer to
+; the merge buffer, only the major mode.
+; 
+; The programs executed to find the differences between versions of the file
+; are no longer controlled by emerge-diff/diff3-command, but rather by:
+;   emerge-diff-program	      
+;     Variable: *Name of the program which compares two files.
+;   emerge-diff3-program	      
+;     Variable: *Name of the program which compares an ancestor file
+;     (first argument) and two variant files (second and third arguments).
+;   emerge-diff-options	      
+;     Variable: *Options to be passed to emerge-diff/diff3-program.
+; 
+; The names of the files are expanded (see expand-file-name) before being
+; passed to emerge-diff/diff3-program, so diff need not invoked under a shell
+; that understands '~', for instance.
+; 
+; If the diff/diff3 program reports errors, the user is notified and the
+; errors are displayed.
+; 
+; The command "0j" can be used to suppress the flags from showing in the buffers.
+; 
+; A discussion of the effect of the merge flags on indentation of code
+; has been added to the documentation.
+; 
+; If kill-fix.el is loaded, Emerge control variables new have their
+; 'preserved' property set, so setting the major mode in the merge
+; buffer doesn't destroy Emerge's state.
+; 
+; Added x c, x C, and x x commands to allow the A and B versions to be
+; combined into #ifdef - #endif forms.
+; 
+; Replaced calls of "ding" to calls of "error" where appropriate.
+; 
+; Added x m command to allow major mode of merge buffer to be changed.
+; 
+; Added x 1 command to shrink the merge window to one line.
+; 
+; Added emerge-startup-hook to allow customization.
+; 
+; Fixed a bug that is activated when a remote merge request is made when
+; the minibuffer window is selected.
+; 
+; - Changes from version 2 to version 3
+; 
+; The directory into which temporary files are written is now controlled
+; by a user option (emerge-temp-file-prefix).
+; 
+; The A and B versions of the difference can be loaded into the kill
+; ring with the "c a" and "c b" commands.
+; 
+; The A and B versions of the difference can be inserted into the merge
+; buffer with the "i a" and "i b" commands.
+; 
+; The difference region of the merge buffer can be surrounded by the
+; point and mark with the "m" command.
+; 
+; The three windows can be scrolled together with the "^", "v", "<",
+; ">", and "|" commands.
+; 
+; The "s s" and "s a" commands report the state of the option in the
+; echo area.  Similarly, the "f" and "e" commands report what they do in
+; the echo area.
+; 
+; The "q" command has been revamped, and its behavior is now controlled
+; by the manner in which Emerge is started.  In particular, if you wish
+; to write the merge buffer into a file upon exiting, invoke
+; emerge-files[-with-ancestor] with a prefix argument, and it will
+; prompt you for the file name.  Then exiting will write the merge
+; buffer to the file, unless "q" is given a prefix argument.
+; 
+; The "i a" and "i b" commands now work in fast mode.
+; 
+; The modifications that Emerge makes to save-buffer and write-file are
+; described.
+; 
+; Emerge now handles merging narrowed buffers correctly.
+; 
+; Emerge now isn't fooled when the buffer visiting a file is not the
+; same as the file on disk.
+
 ;;; Code:
 
 ;;; Macros
--- a/lisp/files.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/files.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Defines most of Emacs's file- and directory-handling functions,
+;; including basic file visiting, backup generation, link handling,
+;; ITS-id version control, load- and write-hook handling, and the like.
+
 ;;; Code:
 
 (defconst delete-auto-save-files t
--- a/lisp/hexl.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/hexl.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,6 +22,12 @@
 
 ;;; Commentary:
 
+;; This package implements a major mode for editing binary files.  It uses
+;; a program called hexl, supplied with the GNU Emacs distribution, that
+;; can filter a binary into an editable format or from the format back into
+;; binary.  For full instructions, invoke `hexl-mode' on an empty buffer and
+;; do `M-x describe-mode'.
+;;
 ;; This may be useful in your .emacs:
 ;;
 ;;	(autoload 'hexl-find-file "hexl"
@@ -74,7 +80,7 @@
 ;;;###autoload
 (defun hexl-mode (&optional arg)
   "\\<hexl-mode-map>
-A major mode for editting binary files in hex dump format.
+A major mode for editing binary files in hex dump format.
 
 This function automatically converts a buffer into the hexl format
 using the function `hexlify-buffer'.
--- a/lisp/indent.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/indent.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Commands for making and changing indentation in text.  These are
+;; described in the Emacs manual.
+
 ;;; Code:
 
 (defvar indent-line-function 'indent-to-left-margin "\
--- a/lisp/international/iso-insert.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/international/iso-insert.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,10 +22,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Code:
+;;; Commentary:
 
 ;; Written by Howard Gayle.  See case-table.el for details.
 
+;;; Code:
+
 (defun insert-no-break-space ()
    (interactive "*")
    (insert 160)
--- a/lisp/international/iso-swed.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/international/iso-swed.el	Mon Mar 22 03:27:18 1993 +0000
@@ -22,10 +22,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Code:
+;;; Commentary:
 
 ;; Written by Howard Gayle.  See case-table.el for details.
 
+;;; Code:
+
 ;; This code sets up to display ISO 8859/1 characters on
 ;; terminals that have ASCII in the G0 set and a Swedish/Finnish
 ;; version of ISO 646 in the G1 set.  The G1 set differs from
--- a/lisp/kermit.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/kermit.el	Mon Mar 22 03:27:18 1993 +0000
@@ -4,6 +4,7 @@
 
 ;; Author: Jeff Norden <jeff@colgate.csnet>
 ;; Created: 15 Feb 1988
+;; Keywords: comm
 
 ;; This file is part of GNU Emacs.
 
@@ -21,7 +22,7 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Commentary
+;;; Commentary:
 
 ;; I'm not sure, but I think somebody asked about running kermit under shell
 ;; mode a while ago.  Anyway, here is some code that I find useful.  The result
@@ -51,8 +52,8 @@
 ;; ^C^Q^C to send an interrupt, and ^C^Q^Z for a stop signal, etc.  (since ^C^C
 ;; just generates a local stop signal, which kermit ignores).
 ;; To connect to a VMS system, I use a shell script to invoke kermit thru the
-;; tr filter, do "M-X kermit-send-cr", and then tell VMS that I'm on a half-duplex
-;; terminal.
+;; tr filter, do "M-X kermit-send-cr", and then tell VMS that I'm on a 
+;; half-duplex terminal.
 
 ;; Some caveats:
 ;; 1) Kermit under shell mode is a real pain if you don't have pty's.  I
--- a/lisp/ledit.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/ledit.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,10 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This is a major mode for editing Liszt.  See etc/LEDIT for details.
+
 ;;; Code:
 
 ;;; To do:
--- a/lisp/lpr.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/lpr.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Commands to send the region or a buffer your printer.  Entry points
+;; are `lpr-buffer', `print-buffer', lpr-region', or `print-region'; option
+;; variables include `lpr-switches' and `lpr-command'.
+
 ;;; Code:
 
 ;;;###autoload
--- a/lisp/macros.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/macros.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,13 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Extension commands for keyboard macros.  These permit you to assign
+;; a name to the last-defined keyboard macro, expand and insert the
+;; lisp corresponding to a macro, query the user from within a macro,
+;; or apply a macro to each line in the reason.
+
 ;;; Code:
 
 ;;;###autoload
--- a/lisp/mail/emacsbug.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/mail/emacsbug.el	Mon Mar 22 03:27:18 1993 +0000
@@ -23,6 +23,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; `M-x report-emacs-bug ' starts an email note to the Emacs maintainers
+;; describing a problem.  Here's how it's done...
+
 ;;; Code:
 
 ;; >> This should be an address which is accessible to your machine,
--- a/lisp/mail/mail-utils.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/mail/mail-utils.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Utility functions for maol and netnews handling.  These handle fine
+;; points of header parsing.
+
 ;;; Code:
 
 ;;; We require lisp-mode to make sure that lisp-mode-syntax-table has
--- a/lisp/mail/mailalias.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/mail/mailalias.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Basic functions for defining and expanding mail aliases.
+;; These seal off the interface to the alias-definition parts of a
+;; .mailrc file formatted for BSD's Mail or USL's mailx.
+
 ;;; Code:
 
 (defvar mail-aliases t
--- a/lisp/makesum.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/makesum.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Displays a nice human-readable summary of all keybindings in a
+;; two-column format.
+
 ;;; Code:
 
 ;;;###autoload
--- a/lisp/play/dissociate.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/play/dissociate.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; The single entry point, `dissociatesd-press', applies a travesty
+;; generator to the current buffer.  The results can be quite amusing.
+
 ;;; Code:
 
 ;;;###autoload
--- a/lisp/play/doctor.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/play/doctor.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; The single entry point `doctor', simulates a Rogerian analyst using
+;; phrase-production techniques similar to the classic ELIZA demonstration
+;; of pseudo-AI.
+
 ;;; Code:
 
 (defun doctor-cadr (x) (car (cdr x)))
--- a/lisp/play/hanoi.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/play/hanoi.el	Mon Mar 22 03:27:18 1993 +0000
@@ -8,6 +8,35 @@
 ; This is in the public domain
 ; since he distributed it without copyright notice in 1985.
 
+;;; Commentary:
+
+;; Solves the Towers of Hanoi puzzle while-U-wait.
+;;
+;; The puzzle: Start with N rings, decreasing in sizes from bottom to
+;; top, stacked around a post.  There are two other posts.  Your mission,
+;; should you choose to accept it, is to shift the pile, stacked in its
+;; original order, to another post.
+;;
+;; The challenge is to do it in the fewest possible moves.  Each move
+;; shifts one ring to a different post.  But there's a rule; you can
+;; only stack a ring on top of a larger one.
+;;
+;; The simplest nontrivial version of this puzzle is N = 3.  Solution
+;; time rises as 2**N, and programs to solve it have long been considered
+;; classic introductory exercises in the use of recursion.
+;;
+;; The puzzle is called `Towers of Hanoi' because an early popular
+;; presentation wove a fanciful legend around it.  According to this
+;; myth (uttered long before the Vietnam War), there is a Buddhist
+;; monastery at Hanoi which contains a large room with three time-worn
+;; posts in it surrounded by 21 golden discs.  Monks, acting out the
+;; command of an ancient prophecy, have been moving these disks, in
+;; accordance with the rules of the puzzle, once every day since the
+;; monastery was founded over a thousand years ago.  They are said
+;; believe that when the last move of the puzzle is completed, the
+;; world will end in a clap of thunder.  Fortunately, they are nowhere
+;; even close to being done...
+
 ;;; Code:
 
 ;;;
--- a/lisp/play/life.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/play/life.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; A demonstrator for John Horton Conway's "Life" cellular automaton
+;; in Emacs Lisp.  Picks a random one of a set of interesting Life
+;; patterns and avolves it according to the familiar rules.
+
 ;;; Code:
 
 (defconst life-patterns
--- a/lisp/progmodes/awk-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/awk-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,6 +21,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; Sets up C-mode with support for awk-style #-comments and a lightly
+;; hacked syntax table.
+
 ;;; Code:
 
 (defvar awk-mode-syntax-table nil
@@ -83,8 +88,8 @@
   (setq comment-column 32)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "#+ *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'c-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'c-comment-indent)
   (run-hooks 'awk-mode-hook))
 
 ;;; awk-mode.el ends here
--- a/lisp/progmodes/c-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/c-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,13 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; A smart editing mode for C code.  It knows a lot about C syntax and tries
+;; to position the curser according to C layout conventions.  You can
+;; change the details of the layout style with option variables.  Load it
+;; and do M-x describe-mode for details.
+
 ;;; Code:
 
 (defvar c-mode-abbrev-table nil
@@ -204,8 +211,8 @@
   (setq comment-column 32)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "/\\*+ *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'c-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'c-comment-indent)
   (make-local-variable 'parse-sexp-ignore-comments)
   (setq parse-sexp-ignore-comments t)
   (run-hooks 'c-mode-hook))
--- a/lisp/progmodes/cmacexp.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/cmacexp.el	Mon Mar 22 03:27:18 1993 +0000
@@ -1,4 +1,4 @@
-;;; cmacexp.el --- C macro expansion
+;;; cmacexp.el --- C preprocessor macro expansion
 
 ;; Copyright (C) 1988 Free Software Foundation, Inc.
 
@@ -21,6 +21,18 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This package gives you the ability to run the C macro preprocessor
+;; on the current region, expanding macros within it.  This can be useful
+;; when you're not sure of the value or expansion of such macros and want
+;; to make sure they're doing what you think they're doing.
+;;
+;; This package supports the following option variables:
+;;
+;; c-macro-preprocessor --- program to be used for macro expansion.
+;; c-macro-options --- command-line options to pass it.
+
 ;;; Code:
 
 (defvar c-macro-preprocessor "/lib/cpp"
--- a/lisp/progmodes/compile.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/compile.el	Mon Mar 22 03:27:18 1993 +0000
@@ -5,6 +5,7 @@
 ;; Author: Roland McGrath <roland@prep.ai.mit.edu>
 ;; Maintainer: FSF
 ;; Keywords: tools, processes
+;; Info-Node: Emacs:Compilation
 
 ;; This file is part of GNU Emacs.
 
--- a/lisp/progmodes/cplus-md.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/cplus-md.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,9 +21,10 @@
 
 ;;; Commentary:
 
-;; 1987 Dave Detlefs  (dld@cs.cmu.edu) 
-;; and  Stewart Clamen (clamen@cs.cmu.edu).
+;; 1987 Dave Detlefs  <dld@cs.cmu.edu> 
+;; and  Stewart Clamen <clamen@cs.cmu.edu>.
 ;; Done by fairly faithful modification of:
+
 ;;; Change Log:
 
 ;; Feb, 1990 (Dave Detlefs, dld@cs.cmu.edu)
@@ -219,7 +220,7 @@
   (set (make-local-variable 'comment-start) "// ")
   (set (make-local-variable 'comment-end) "")
   (set (make-local-variable 'comment-start-skip) "/\\*+ *\\|// *")
-  (set (make-local-variable 'comment-indent-hook) 'c++-comment-indent)
+  (set (make-local-variable 'comment-indent-function) 'c++-comment-indent)
   (set (make-local-variable 'paragraph-start) (concat "^$\\|" page-delimiter))
   (set (make-local-variable 'paragraph-separate) paragraph-start)
   (set (make-local-variable 'paragraph-ignore-fill-prefix) t)
--- a/lisp/progmodes/fortran.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/fortran.el	Mon Mar 22 03:27:18 1993 +0000
@@ -354,8 +354,8 @@
   (setq fortran-break-before-delimiters t)
   (make-local-variable 'indent-line-function)
   (setq indent-line-function 'fortran-indent-line)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'fortran-comment-hook)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'fortran-comment-hook)
   (make-local-variable 'comment-line-start-skip)
   (setq comment-line-start-skip
 	"^[Cc*]\\(\\([^ \t\n]\\)\\2\\2*\\)?[ \t]*\\|^#.*")
@@ -475,7 +475,6 @@
   "List the currently defined abbrevs in Fortran mode."
   (interactive)
   (message "Listing abbrev table...")
-  (require 'abbrevlist)
   (display-buffer (fortran-prepare-abbrev-list-buffer))
   (message "Listing abbrev table...done"))
 
--- a/lisp/progmodes/hideif.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/hideif.el	Mon Mar 22 03:27:18 1993 +0000
@@ -23,15 +23,6 @@
 
 ;;; Commentary:
 
-;;; Written by Brian Marick, at Gould, Computer Systems Division, Urbana IL.
-;;; Extensively modified by Daniel LaLiberte (while at Gould).
-;;;
-;;; You may freely modify and distribute this, but keep a record
-;;; of modifications and send comments to:
-;;; 	 liberte@a.cs.uiuc.edu  or  ihnp4!uiucdcs!liberte
-;;; I will continue to upgrade hide-ifdef-mode
-;;; with your contributions.
-
 ;;; To initialize, toggle the hide-ifdef minor mode with
 ;;;
 ;;; M-x hide-ifdef-mode
@@ -105,6 +96,15 @@
 ;;; If you have minor-mode-alist in your mode line (the default) two labels
 ;;; may appear.  "Ifdef" will appear when hide-ifdef-mode is active.  "Hiding"
 ;;; will appear when text may be hidden ("hide-ifdef-hiding" is non-nil).
+;;;
+;;; Written by Brian Marick, at Gould, Computer Systems Division, Urbana IL.
+;;; Extensively modified by Daniel LaLiberte (while at Gould).
+;;;
+;;; You may freely modify and distribute this, but keep a record
+;;; of modifications and send comments to:
+;;; 	 liberte@a.cs.uiuc.edu  or  ihnp4!uiucdcs!liberte
+;;; I will continue to upgrade hide-ifdef-mode
+;;; with your contributions.
 
 ;;; Change Log:
 ;;;
--- a/lisp/progmodes/icon.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/icon.el	Mon Mar 22 03:27:18 1993 +0000
@@ -24,6 +24,8 @@
 
 ;;; Commentary:
 
+;; A major mode for editing the Icon programming language.
+;;
 ;; Note: use
 ;;  (autoload 'icon-mode "icon" nil t)
 ;;  (setq auto-mode-alist (cons '("\\.icn$" . icon-mode) auto-mode-alist))
@@ -146,8 +148,8 @@
   (setq comment-column 32)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "# *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'icon-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'icon-comment-indent)
   (run-hooks 'icon-mode-hook))
 
 ;; This is used by indent-for-comment to decide how much to
--- a/lisp/progmodes/make-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/make-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -6,7 +6,7 @@
 ;; Adapted-By: ESR
 ;; Keywords: unix, tools
 
-;; $Id: makefile.el,v 1.7.1.17 1992/07/15 20:05:15 tom Exp tom $
+;; $Id: makefile.el,v 1.3 1992/07/22 02:13:37 eric Exp eric $
 
 ;; This file is part of GNU Emacs.
 
@@ -24,6 +24,12 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; A major mode for editing Makefiles.  Hairy.  Needs more documentation.
+;; If you get familiar with it, please write some and send it to the GNU
+;; Emacs maintainers.
+
 ;;; Code:
 
 (provide 'makefile)
--- a/lisp/progmodes/modula2.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/modula2.el	Mon Mar 22 03:27:18 1993 +0000
@@ -134,8 +134,8 @@
   (setq comment-column 41)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "/\\*+ *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'c-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'c-comment-indent)
   (make-local-variable 'parse-sexp-ignore-comments)
   (setq parse-sexp-ignore-comments t)
   (run-hooks 'm2-mode-hook))
--- a/lisp/progmodes/perl-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/perl-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -243,8 +243,8 @@
   (setq comment-column 32)
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "\\(^\\|\\s-\\);?#+ *")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'perl-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'perl-comment-indent)
   (make-local-variable 'parse-sexp-ignore-comments)
   (setq parse-sexp-ignore-comments nil)
   (run-hooks 'perl-mode-hook))
--- a/lisp/progmodes/prolog.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/prolog.el	Mon Mar 22 03:27:18 1993 +0000
@@ -77,8 +77,8 @@
   (setq comment-start-skip "%+ *")
   (make-local-variable 'comment-column)
   (setq comment-column 48)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'prolog-comment-indent))
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'prolog-comment-indent))
 
 (defun prolog-mode-commands (map)
   (define-key map "\t" 'prolog-indent-line)
--- a/lisp/progmodes/scheme.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/progmodes/scheme.el	Mon Mar 22 03:27:18 1993 +0000
@@ -104,8 +104,8 @@
   (setq comment-start-skip ";+[ \t]*")
   (make-local-variable 'comment-column)
   (setq comment-column 40)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'scheme-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'scheme-comment-indent)
   (setq mode-line-process '("" scheme-mode-line-process)))
 
 (defvar scheme-mode-line-process "")
--- a/lisp/textmodes/=ispell4.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/=ispell4.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,11 @@
 ;;along with GNU Emacs; see the file COPYING.  If not, write to
 ;;the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; This package provides a graceful interface to ispell, the GNU
+;; spelling checker.
+
 ;;; Code:
 
 (defvar ispell-have-new-look t
--- a/lisp/textmodes/bib-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/bib-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -21,14 +21,15 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Code:
+;;; Commentary:
 
-;; Bib-Mode
 ;;   GNU Emacs code to help maintain databases compatible with (troff)
 ;;   refer and lookbib.  The file bib-file should be set to your 
 ;;   bibliography file.  Keys are automagically inserted as you type,
 ;;   and appropriate keys are presented for various kinds of entries.
 
+;;; Code:
+
 (defvar bib-file "~/my-bibliography.bib" 
    "Default name of file used by `addbib'.")
 
--- a/lisp/textmodes/bibtex.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/bibtex.el	Mon Mar 22 03:27:18 1993 +0000
@@ -25,6 +25,13 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; A major mode for entering and editing BibTex files, validating
+;; them, canonicalizing them, and sorting them.  Includes entry
+;; commands tailored to many different formats (book, master's this,
+;; journal article, etc).  Has loads of options.
+
 ;;; Change Log:
 
 ;;; alarson@src.honeywell.com 92-Jan-31
--- a/lisp/textmodes/fill.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/fill.el	Mon Mar 22 03:27:18 1993 +0000
@@ -20,6 +20,11 @@
 ;; along with GNU Emacs; see the file COPYING.  If not, write to
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
+;;; Commentary:
+
+;; All the commands for filling text.  These are documented in the Emacs
+;; manual.
+
 ;;; Code:
 
 (defconst fill-individual-varying-indent nil
--- a/lisp/textmodes/nroff-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/nroff-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -67,8 +67,8 @@
   (setq comment-start-skip "\\\\\"[ \t]*")
   (make-local-variable 'comment-column)
   (setq comment-column 24)
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'nroff-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'nroff-comment-indent)
   (run-hooks 'text-mode-hook 'nroff-mode-hook))
 
 ;;; Compute how much to indent a comment in nroff/troff source.
--- a/lisp/textmodes/sgml-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/sgml-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -89,8 +89,8 @@
   (setq comment-start "<!-- ")
   (make-local-variable 'comment-end)
   (setq comment-end " -->")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'sgml-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'sgml-comment-indent)
   (make-local-variable 'comment-start-skip)
   ;; This will allow existing comments within declarations to be
   ;; recognized.
--- a/lisp/textmodes/tex-mode.el	Mon Mar 22 03:00:23 1993 +0000
+++ b/lisp/textmodes/tex-mode.el	Mon Mar 22 03:27:18 1993 +0000
@@ -437,8 +437,8 @@
   (setq comment-start "%")
   (make-local-variable 'comment-start-skip)
   (setq comment-start-skip "\\(\\(^\\|[^\\]\\)\\(\\\\\\\\\\)*\\)\\(%+ *\\)")
-  (make-local-variable 'comment-indent-hook)
-  (setq comment-indent-hook 'tex-comment-indent)
+  (make-local-variable 'comment-indent-function)
+  (setq comment-indent-function 'tex-comment-indent)
   (make-local-variable 'compare-windows-whitespace)
   (setq compare-windows-whitespace 'tex-categorize-whitespace)
   (make-local-variable 'tex-command)