]> code.delx.au - gnu-emacs/blobdiff - lisp/progmodes/idlw-help.el
Merge from trunk.
[gnu-emacs] / lisp / progmodes / idlw-help.el
index f8121beb231e23c682ef5c8def47b783eaa53a6f..0cb8b7da4aa8bc1f15ac8ef02878af07a62cb959 100644 (file)
@@ -1,7 +1,6 @@
 ;;; idlw-help.el --- HTML Help code for IDLWAVE
 
-;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-;;   2009, 2010, 2011  Free Software Foundation, Inc.
+;; Copyright (C) 2000-2012  Free Software Foundation, Inc.
 ;;
 ;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
 ;;          Carsten Dominik <dominik@science.uva.nl>
@@ -116,7 +115,7 @@ must be explicitly set non-nil in order for the variable
   "Obsolete variable.  See `idlwave-html-help-location'.")
 
 (defcustom idlwave-help-use-dedicated-frame t
-  "*Non-nil means, use a separate frame for Online Help if possible."
+  "Non-nil means, use a separate frame for Online Help if possible."
   :group 'idlwave-online-help
   :type 'boolean)
 
@@ -165,12 +164,12 @@ probably a good idea to still call this function as a fallback."
   :type 'symbol)
 
 (defcustom idlwave-help-fontify-source-code nil
-  "*Non-nil means, fontify source code displayed as help like normal code."
+  "Non-nil means, fontify source code displayed as help like normal code."
   :group 'idlwave-online-help
   :type 'boolean)
 
 (defcustom idlwave-help-source-try-header t
-  "*Non-nil means, try to find help in routine header when displaying source.
+  "Non-nil means, try to find help in routine header when displaying source.
 Routines which are not documented in the system manual use their source as
 help text.  When this variable is non-nil, we try to find a description of
 the help item in the first routine doclib header above the routine definition.
@@ -181,14 +180,14 @@ definition is displayed instead."
 
 
 (defcustom idlwave-help-doclib-name "name"
-  "*A regexp for the heading word to search for in doclib headers
+  "A regexp for the heading word to search for in doclib headers
 which specifies the `name' section.  Can be used for localization
 support."
   :group 'idlwave-online-help
   :type 'string)
 
 (defcustom idlwave-help-doclib-keyword "KEYWORD"
-  "*A regexp for the heading word to search for in doclib headers
+  "A regexp for the heading word to search for in doclib headers
 which specifies the `keywords' section.  Can be used for localization
 support."
   :group 'idlwave-online-help
@@ -220,23 +219,24 @@ support."
 
 ;; Define the key bindings for the Help application
 
-(defvar idlwave-help-mode-map (make-sparse-keymap)
+(defvar idlwave-help-mode-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map "q" 'idlwave-help-quit)
+    (define-key map "w" 'widen)
+    (define-key map "\C-m" (lambda (arg)
+                             (interactive "p")
+                             (scroll-up arg)))
+    (define-key map " " 'scroll-up-command)
+    (define-key map [delete] 'scroll-down-command)
+    (define-key map "h" 'idlwave-help-find-header)
+    (define-key map "H" 'idlwave-help-find-first-header)
+    (define-key map "." 'idlwave-help-toggle-header-match-and-def)
+    (define-key map "F" 'idlwave-help-fontify)
+    (define-key map "\M-?" 'idlwave-help-return-to-calling-frame)
+    (define-key map "x" 'idlwave-help-return-to-calling-frame)
+    map)
   "The keymap used in `idlwave-help-mode'.")
 
-(define-key idlwave-help-mode-map "q" 'idlwave-help-quit)
-(define-key idlwave-help-mode-map "w" 'widen)
-(define-key idlwave-help-mode-map "\C-m" (lambda (arg)
-                                          (interactive "p")
-                                          (scroll-up arg)))
-(define-key idlwave-help-mode-map " " 'scroll-up)
-(define-key idlwave-help-mode-map [delete] 'scroll-down)
-(define-key idlwave-help-mode-map "h" 'idlwave-help-find-header)
-(define-key idlwave-help-mode-map "H" 'idlwave-help-find-first-header)
-(define-key idlwave-help-mode-map "." 'idlwave-help-toggle-header-match-and-def)
-(define-key idlwave-help-mode-map "F" 'idlwave-help-fontify)
-(define-key idlwave-help-mode-map "\M-?" 'idlwave-help-return-to-calling-frame)
-(define-key idlwave-help-mode-map "x" 'idlwave-help-return-to-calling-frame)
-
 ;; Define the menu for the Help application
 
 (easy-menu-define
@@ -705,7 +705,8 @@ Those words in `idlwave-completion-help-links' have links.  The
             ;; we kill the help frame before the return-frame is selected.
             ;; To protect the workings, we wait for up to one second
             ;; and check if the return-frame *is* now selected.
-            ;; This is marked "eperimental" since we are not sure when its OK.
+            ;; This is marked "experimental" since we are not sure when
+            ;; it's OK.
             (let ((maxtime 1.0) (time 0.) (step 0.1))
               (select-frame idlwave-help-return-frame)
               (while (and (sit-for step)
@@ -835,7 +836,7 @@ see if a link is set for it.  Try extra help functions if necessary."
 
      ((or idlwave-help-browser-is-local
          (string-match "w3" (symbol-name idlwave-help-browser-function)))
-      (idlwave-help-display-help-window '(lambda () (browse-url full-link))))
+      (idlwave-help-display-help-window (lambda () (browse-url full-link))))
 
      (t (browse-url full-link)))))
 
@@ -985,12 +986,12 @@ describes the correct routine - even if the keyword description cannot
 be found.  TYPE is ignored.
 
 This function expects a more or less standard routine header.  In
-particlar it looks for the `NAME:' tag, either with a colon, or alone
+particular it looks for the `NAME:' tag, either with a colon, or alone
 on a line.  Then `NAME:' must be followed by the routine name on the
 same or the next line.  When KEYWORD is non-nil, looks first for a
-`KEYWORDS' section.  It is amazing how inconsisten this is through
+`KEYWORDS' section.  It is amazing how inconsistent this is through
 some IDL libraries I have seen.  We settle for a line containing an
-upper case \"KEYWORD\" string.  If this line is not fould we search
+upper case \"KEYWORD\" string.  If this line is not found we search
 for the keyword anyway to increase the hit-rate
 
 When one of these sections exists we check for a line starting with any of