changeset 92349:ac2ad154ea14

(view-emacs-todo): Rename from view-todo. (describe-gnu-project): Rename from describe-project. Users changed. (view-help-file): New helper function. (describe-distribution, describe-copying, describe-gnu-project) (view-todo, view-order-manuals, view-emacs-problems): Use it. (view-emacs-debugging, view-external-packages): New commands. (help-map): Move describe-distribution to C-h C-o (ordering). Move view-emacs-problems to C-h C-p (problems). Bind view-emacs-debugging to C-h C-d (debugging). Bind view-external-packages to C-h C-e (extras). (help-for-help-internal): Cleanup and align descriptions. Remove command names to reduce clutter.
author Kim F. Storm <storm@cua.dk>
date Fri, 29 Feb 2008 23:37:38 +0000
parents 71a92a048b47
children 42d2ac4260eb
files lisp/help.el
diffstat 1 files changed, 74 insertions(+), 70 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/help.el	Fri Feb 29 23:37:10 2008 +0000
+++ b/lisp/help.el	Fri Feb 29 23:37:38 2008 +0000
@@ -55,7 +55,7 @@
 ;; `with-output-to-temp-buffer'.  `with-help-window' has this point
 ;; nowhere before exiting.  Currently used by `view-lossage' to assert
 ;; that the last keystrokes are always visible.
-(defvar help-window-point-marker (make-marker) 
+(defvar help-window-point-marker (make-marker)
   "Marker to override default `window-point' of `help-window'.")
 
 (defvar help-map
@@ -68,13 +68,14 @@
 
     (define-key map "\C-a" 'about-emacs)
     (define-key map "\C-c" 'describe-copying)
-    (define-key map "\C-d" 'describe-distribution)
-    (define-key map "\C-e" 'view-emacs-problems)
+    (define-key map "\C-d" 'view-emacs-debugging)
+    (define-key map "\C-e" 'view-external-packages)
     (define-key map "\C-f" 'view-emacs-FAQ)
     (define-key map "\C-m" 'view-order-manuals)
     (define-key map "\C-n" 'view-emacs-news)
-    (define-key map "\C-p" 'describe-project)
-    (define-key map "\C-t" 'view-todo)
+    (define-key map "\C-o" 'describe-distribution)
+    (define-key map "\C-p" 'view-emacs-problems)
+    (define-key map "\C-t" 'view-emacs-todo)
     (define-key map "\C-w" 'describe-no-warranty)
 
     ;; This does not fit the pattern, but it is natural given the C-\ command.
@@ -93,6 +94,7 @@
     (define-key map "d" 'apropos-documentation)
     (define-key map "e" 'view-echo-area-messages)
     (define-key map "f" 'describe-function)
+    (define-key map "g" 'describe-gnu-project)
     (define-key map "h" 'view-hello-file)
 
     (define-key map "i" 'info)
@@ -201,63 +203,52 @@
 (defalias 'help-for-help 'help-for-help-internal)
 ;; It can't find this, but nobody will look.
 (make-help-screen help-for-help-internal
-  "a b c C e f F i I k C-k l L m p r s t v w C-c C-d C-f C-n C-p C-t C-w . or ? :"
+  "Type a help option: [abcCdefFgiIkKlLmnprstvw.] C-[cdefmnoptw] or ?"
   "You have typed %THIS-KEY%, the help character.  Type a Help option:
 \(Use SPC or DEL to scroll through this text.  Type \\<help-map>\\[help-quit] to exit the Help command.)
 
-a  command-apropos.  Type a list of words or a regexp; it shows a list of
-        commands whose names match.  See also the  apropos  command.
-b  describe-bindings.  Display a table of all key bindings.
-c  describe-key-briefly.  Type a key sequence;
-	it displays the command name run by that key sequence.
-C  describe-coding-system.  Type the name of the coding system to describe,
-        or just RET to describe the ones currently in use.
-d  apropos-documentation.  Type a pattern (a list of words or a regexp), and
-	it shows a list of functions, variables, and other items whose
-	documentation matches that pattern.  See also the apropos command.
-e  view-echo-area-messages.  Go to the buffer that logs echo-area messages.
-f  describe-function.  Type a function name and you see its documentation.
-F  Info-goto-emacs-command-node.  Type a command name;
-	it goes to the on-line manual's section that describes the command.
-h  Display the HELLO file which illustrates various scripts.
-i  info.  The Info documentation reader: read on-line manuals.
-I  describe-input-method.  Describe a specific input method (if you type
-	its name) or the current input method (if you type just RET).
-k  describe-key.  Type a key sequence;
-	it displays the full documentation for that key sequence.
-K  Info-goto-emacs-key-command-node.  Type a key sequence;
-	it goes to the on-line manual's section that describes
-	the command bound to that key.
-l  view-lossage.  Show last 100 characters you typed.
-L  describe-language-environment.  This describes either a
-	specific language environment (if you type its name)
-	or the current language environment (if you type just RET).
-m  describe-mode.  Display documentation of current minor modes,
-	and the current major mode, including their special commands.
-n  view-emacs-news.  Display news of recent Emacs changes.
-p  finder-by-keyword. Find packages matching a given topic keyword.
-r  info-emacs-manual.  Display the Emacs manual in Info mode.
-s  describe-syntax.  Display contents of syntax table, plus explanations.
-S  info-lookup-symbol.  Type a symbol; it goes to that symbol in the
-        on-line manual for the programming language used in this buffer.
-t  help-with-tutorial.  Select the Emacs learn-by-doing tutorial.
-v  describe-variable.  Type name of a variable;
-	it displays the variable's documentation and value.
-w  where-is.  Type a command name; it displays which keystrokes
-	invoke that command.
-.  display-local-help.  Display any available local help at point
-        in the echo area.
+a PATTERN   Show commands whose name matches the PATTERN (a list of words
+              or a regexp).  See also the `apropos' command.
+b           Display all key bindings.
+c KEYS      Display the command name run by the given key sequence.
+C CODING    Describe the given coding system, or RET for current ones.
+d PATTERN   Show a list of functions, variables, and other items whose
+              documentation matches the PATTERN (a list of words or a regexp).
+e           Go to the *Messages* buffer which logs echo-area messages.
+f FUNCTION  Display documentation for the given function.
+F COMMAND   Show the on-line manual's section that describes the command.
+g           Display information about the GNU project.
+h           Display the HELLO file which illustrates various scripts.
+i           Start the Info documentation reader: read on-line manuals.
+I METHOD    Describe a specific input method, or RET for current.
+k KEYS      Display the full documentation for the key sequence.
+K KEYS      Show the on-line manual's section for the command bound to KEYS.
+l           Show last 100 characters you typed (lossage).
+L LANG-ENV  Describes a specific language environment, or RET for current.
+m           Display documentation of current minor modes and current major mode,
+              including their special commands.
+n           Display news of recent Emacs changes.
+p TOPIC     Find packages matching a given topic keyword.
+r           Display the Emacs manual in Info mode.
+s           Display contents of current syntax table, plus explanations.
+S SYMBOL    Show the section for the given symbol in the on-line manual
+              for the programming language used in this buffer.
+t           Start the Emacs learn-by-doing tutorial.
+v VARIABLE  Display the given variable's documentation and value.
+w COMMAND   Display which keystrokes invoke the given command (where-is).
+.           Display any available local help at point in the echo area.
 
-C-a Display information about Emacs.
-C-c Display Emacs copying permission (GNU General Public License).
-C-d Display Emacs ordering information.
-C-e Display info about Emacs problems.
-C-f Display the Emacs FAQ.
-C-m Display how to order printed Emacs manuals.
-C-n Display news of recent Emacs changes.
-C-p Display information about the GNU project.
-C-t Display the Emacs TODO list.
-C-w Display information on absence of warranty for GNU Emacs."
+C-a         Information about Emacs.
+C-c         Emacs copying permission (GNU General Public License).
+C-d         Instructions for debugging GNU Emacs.
+C-e         External packages and information about Emacs.
+C-f         Emacs FAQ.
+C-m         How to order printed Emacs manuals.
+C-n         News of recent Emacs changes.
+C-o         Emacs ordering and distribution information.
+C-p         Info about known Emacs problems.
+C-t         Emacs TODO list.
+C-w         Information on absence of warranty for GNU Emacs."
   help-map)
 
 
@@ -303,22 +294,26 @@
 
 ;;; `User' help functions
 
+(defun view-help-file (file &optional dir)
+  (view-file (expand-file-name file (or dir data-directory)))
+  (goto-address)
+  (goto-char (point-min)))
+
 (defun describe-distribution ()
   "Display info on how to obtain the latest version of GNU Emacs."
   (interactive)
-  (view-file (expand-file-name "DISTRIB" data-directory)))
+  (view-help-file "DISTRIB"))
 
 (defun describe-copying ()
   "Display info on how you may redistribute copies of GNU Emacs."
   (interactive)
-  (view-file (expand-file-name "COPYING" data-directory))
-  (goto-char (point-min)))
+  (view-help-file "COPYING"))
 
-(defun describe-project ()
+(defalias 'describe-project 'describe-gnu-project)
+(defun describe-gnu-project ()
   "Display info on the GNU project."
   (interactive)
-  (view-file (expand-file-name "THE-GNU-PROJECT" data-directory))
-  (goto-char (point-min)))
+  (view-help-file "THE-GNU-PROJECT"))
 
 (defun describe-no-warranty ()
   "Display info on all the kinds of warranty Emacs does NOT have."
@@ -417,11 +412,11 @@
 	   (beginning-of-line)
 	   (point)))))))
 
-
-(defun view-todo (&optional arg)
+(defalias 'view-todo 'view-emacs-todo)
+(defun view-emacs-todo (&optional arg)
   "Display the Emacs TODO list."
   (interactive "P")
-  (view-file (expand-file-name "TODO" data-directory)))
+  (view-help-file "TODO"))
 
 (defun view-echo-area-messages ()
   "View the log of recent echo-area messages: the `*Messages*' buffer.
@@ -433,8 +428,7 @@
 (defun view-order-manuals ()
   "Display the Emacs ORDERS file."
   (interactive)
-  (view-file (expand-file-name "ORDERS" data-directory))
-  (goto-address))
+  (view-help-file "ORDERS"))
 
 (defun view-emacs-FAQ ()
   "Display the Emacs Frequently Asked Questions (FAQ) file."
@@ -445,7 +439,17 @@
 (defun view-emacs-problems ()
   "Display info on known problems with Emacs and possible workarounds."
   (interactive)
-  (view-file (expand-file-name "PROBLEMS" data-directory)))
+  (view-help-file "PROBLEMS"))
+
+(defun view-emacs-debugging ()
+  "Display info on how to debug Emacs problems."
+  (interactive)
+  (view-help-file "DEBUG"))
+
+(defun view-external-packages ()
+  "Display external packages and information about Emacs."
+  (interactive)
+  (view-help-file "MORE.STUFF"))
 
 (defun view-lossage ()
   "Display last 100 input keystrokes.