setenv allows $-substitution.
[bpt/emacs.git] / man / idlwave.texi
index 94b78dd..6fc0662 100644 (file)
@@ -1,8 +1,8 @@
 \input texinfo  @c -*-texinfo-*-
 @c %**start of header
-@setfilename idlwave
+@setfilename ../info/idlwave
 @settitle IDLWAVE User Manual
-@dircategory Editors
+@dircategory Emacs
 @direntry
 * IDLWAVE: (idlwave).  Major mode and shell for IDL and WAVE/CL files.
 @end direntry
@@ -17,8 +17,8 @@
 @set DATE December 2000
 @set AUTHOR Carsten Dominik
 @set AUTHOR-EMAIL dominik@@astro.uva.nl
-@set MAINTAINER Carsten Dominik
-@set MAINTAINER-EMAIL dominik@@astro.uva.nl
+@set MAINTAINER John-David Smith
+@set MAINTAINER-EMAIL jdsmith@@astro.cornell.edu
 @set IDLWAVE-HOMEPAGE http://www.strw.leidenuniv.nl/~dominik/Tools/idlwave
 @c %**end of header
 @finalout
@@ -31,31 +31,24 @@ a subprocess.
 This is edition @value{EDITION} of the IDLWAVE User Manual for
 IDLWAVE @value{VERSION}
 
-Copyright (c) 1999, 2000 Free Software Foundation, Inc.
+Copyright (c) 1999, 2000, 2001 Free Software Foundation, Inc.
 
-Permission is granted to make and distribute verbatim
-copies of this manual provided the copyright notice and
-this permission notice are preserved on all copies.
-     
-@ignore
-Permission is granted to process this file through TeX
-and print the results, provided the printed document
-carries a copying permission notice identical to this
-one except for the removal of this paragraph (this
-paragraph not being relevant to the printed manual).
-     
-@end ignore
-Permission is granted to copy and distribute modified
-versions of this manual under the conditions for
-verbatim copying, provided that the entire resulting
-derived work is distributed under the terms of a permission
-notice identical to this one.
-     
-Permission is granted to copy and distribute
-translations of this manual into another language,
-under the above conditions for modified versions,
-except that this permission notice may be stated in a
-translation approved by the Free Software Foundation.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with the Front-Cover texts being ``A GNU
+Manual'', and with the Back-Cover Texts as in (a) below.  A copy of the
+license is included in the section entitled ``GNU Free Documentation
+License'' in the Emacs manual.
+
+(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
+this GNU Manual, like GNU software.  Copies published by the Free
+Software Foundation raise funds for GNU development.''
+
+This document is part of a collection distributed under the GNU Free
+Documentation License.  If you want to distribute this document
+separately from the collection, you can do so by adding a copy of the
+license to the document, as described in section 6 of the license.
 @end ifinfo
 
 @titlepage
@@ -65,31 +58,29 @@ translation approved by the Free Software Foundation.
 
 @author by Carsten Dominik
 @page
-Copyright @copyright{} 1999, 2000 Free Software Foundation, Inc.
-
-@sp 2
 This is edition @value{EDITION} of the @cite{IDLWAVE User Manual} for
 IDLWAVE version @value{VERSION}, @value{DATE}.
-
 @sp 2
-
+Copyright @copyright{} 1999, 2000, 2001 Free Software Foundation, Inc.
+@sp 2
 @cindex Copyright, of IDLWAVE
-Permission is granted to make and distribute verbatim
-copies of this manual provided the copyright notice and
-this permission notice are preserved on all copies.
-     
-Permission is granted to copy and distribute modified
-versions of this manual under the conditions for
-verbatim copying, provided that the entire resulting
-derive work is distributed under the terms of a permission
-notice identical to this one.
-     
-Permission is granted to copy and distribute
-translations of this manual into another language,
-under the above conditions for modified versions,
-except that this permission notice may be stated in a
-translation approved by the Free Software Foundation.
 
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with the Front-Cover texts being ``A GNU
+Manual'', and with the Back-Cover Texts as in (a) below.  A copy of the
+license is included in the section entitled ``GNU Free Documentation
+License'' in the Emacs manual.
+
+(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
+this GNU Manual, like GNU software.  Copies published by the Free
+Software Foundation raise funds for GNU development.''
+
+This document is part of a collection distributed under the GNU Free
+Documentation License.  If you want to distribute this document
+separately from the collection, you can do so by adding a copy of the
+license to the document, as described in section 6 of the license.
 @end titlepage
 @contents
 
@@ -214,7 +205,7 @@ Code indentation and formatting.
 Font-lock support on three levels. 
 @item 
 Display of calling sequence and keywords of more than 1000 IDL
-routines routines and any routines in your local IDL library.
+routines and any routines in your local IDL library.
 @item
 Name space conflict search.
 @item
@@ -281,7 +272,7 @@ Some configuration examples are also given in the appendix.
 @multitable @columnfractions .15 .85
 @item @key{TAB}
 @tab Indent the current line relative to context.
-@item @kbd{M-C-\}
+@item @kbd{C-M-\}
 @tab Re-indent all lines in the current region.
 @item @kbd{M-@key{RET}}
 @tab Start a continuation line.  Or split the current line at point.
@@ -414,7 +405,7 @@ end
 The indentation probably looks funny, since it's different from the
 settings you use, so use the @key{TAB} key in each line to automatically
 line it up (or more quickly @emph{select} the entire buffer with
-@kbd{C-x h} followed by @kbd{M-C-\}).  Notice how different syntactical
+@kbd{C-x h} followed by @kbd{C-M-\}).  Notice how different syntactical
 elements are highlighted in different colors, if you have set up support
 for font-lock.
 
@@ -559,7 +550,7 @@ following lines in @file{.emacs}
 @end lisp
 
 Restart Emacs, take the program we developed in the first part of this
-tutorial and re-indent it with @kbd{C-c h} and @kbd{M-C-\}.  You
+tutorial and re-indent it with @kbd{C-c h} and @kbd{C-M-\}.  You
 probably want to keep these lines in @file{.emacs}, with values adjusted
 to your likings.  If you want to get more information about any of these
 variables, type, e.g., @kbd{C-h v idlwave-main-block-indent @key{RET}}.
@@ -721,11 +712,11 @@ governed by a number of variables.
 
 @cindex Foreign code, adapting
 @cindex Indentation, of foreign code
-@kindex M-C-\
+@kindex C-M-\
 To re-indent a larger portion of code (e.g. when working with foreign code
-written with different conventions), use @kbd{M-C-\}
+written with different conventions), use @kbd{C-M-\}
 (@code{indent-region}) after marking the relevant code.  Useful marking
-commands are @kbd{C-x h} (the entire file) or @kbd{M-C-h} (the
+commands are @kbd{C-x h} (the entire file) or @kbd{C-M-h} (the
 current subprogram). @xref{Actions}, for information how to impose
 additional formatting conventions on foreign code.
 
@@ -1072,7 +1063,7 @@ statement (@code{pro}/@code{function}) is shown.
 
 @kindex M-?
 In any IDL program, press @kbd{M-?} (@code{idlwave-context-help}) or
-click with @kbd{S-mouse-3} to access context sensitive online help.  The
+click with @kbd{S-Mouse-3} to access context sensitive online help.  The
 following locations are recognized as context:
 
 @cindex Context, for online help
@@ -1108,11 +1099,11 @@ which online help can be accessed.
 @itemize @bullet
 @item
 Online help for routines and keywords can be accessed through the
-Routine Info display.  Click with @kbd{mouse-3} on an item to see the
+Routine Info display.  Click with @kbd{Mouse-3} on an item to see the
 corresponding help (@pxref{Routine Info}).
 @item
 When using completion and Emacs pops up a window with possible
-completions, clicking with @kbd{mouse-3} on a completion item invokes
+completions, clicking with @kbd{Mouse-3} on a completion item invokes
 help on that item (@pxref{Completion}).
 @end itemize
 @noindent
@@ -1121,8 +1112,8 @@ IDL manual.
 
 @page
 
-@cindex Help application, keybindings
-@cindex Keybindings, in help application
+@cindex Help application, key bindings
+@cindex Key bindings, in help application
 The help window is normally displayed in a separate frame.  The
 following commands can be used to navigate inside the help system.
 
@@ -1139,7 +1130,7 @@ following commands can be used to navigate inside the help system.
 @tab Move back and forward through the help topic history.
 @item @kbd{c}
 @tab Clear the history.
-@item @kbd{mouse-2}
+@item @kbd{Mouse-2}
 @tab Follow a link.  Active links are displayed in a different font.
 Items under @i{See Also} are active, and classes have links to their
 methods and back.
@@ -1181,7 +1172,7 @@ The frame parameters for the special Online Help frame.
 @end defopt
 
 @defopt idlwave-max-popup-menu-items (@code{20})
-Maximum number of items per pane in popup menus.
+Maximum number of items per pane in pop-up menus.
 @end defopt
 
 @defopt idlwave-extra-help-function
@@ -1252,7 +1243,7 @@ self.g*                 @r{Class structure tag in methods}
 If the list of completions is too long to fit in the
 @file{*Completions*} window, the window can be scrolled by pressing
 @kbd{M-@key{TAB}} repeatedly.  Online help (if installed) for each
-possible completion is available by clicking with @kbd{mouse-3} on the
+possible completion is available by clicking with @kbd{Mouse-3} on the
 item.  Items for which system online help (from the IDL manual) is
 available will be displayed in a different font.  For other items, the
 corresponding source code or DocLib header is available as help text.
@@ -1413,7 +1404,7 @@ collects data about routines, and how to update this information.
 @cindex Templates
 
 IDLWAVE can insert IDL code templates into the buffer.  For a few
-templates, this is done with direct keybindings:
+templates, this is done with direct key bindings:
 
 @multitable @columnfractions .15 .85
 @item @kbd{C-c C-c}
@@ -1500,7 +1491,7 @@ must be non-@code{nil}.
 Action can also be applied to a larger piece of code, e.g. in order to
 convert foreign code to your own style.  To do this, mark the relevant
 part of the code and execute @kbd{M-x expand-region-abbrevs}.  Useful
-marking commands are @kbd{C-x h} (the entire file) or @kbd{M-C-h} (the
+marking commands are @kbd{C-x h} (the entire file) or @kbd{C-M-h} (the
 current subprogram). @xref{Code Indentation}, for information how to
 adjust the indentation of the code.
 @end itemize
@@ -1688,13 +1679,13 @@ program.  These are
 @tab Beginning of block (stay inside the block)
 @item @kbd{C-c @}}
 @tab End of block (stay inside the block)
-@item @kbd{M-C-n}
+@item @kbd{C-M-n}
 @tab Forward block (on same level)
-@item @kbd{M-C-p}
+@item @kbd{C-M-p}
 @tab Backward block (on same level)
-@item @kbd{M-C-d}
+@item @kbd{C-M-d}
 @tab Down block (enters a block)
-@item @kbd{M-C-u}
+@item @kbd{C-M-u}
 @tab Backward up block (leaves a block)
 @item @kbd{C-c C-n}
 @tab Next Statement
@@ -1746,7 +1737,6 @@ Normal hook.  Executed when @file{idlwave.el} is loaded.
 @cindex Comint, Emacs package
 @cindex Windows
 @cindex MacOS
-@cindex Unix
 
 The IDLWAVE shell is an Emacs major mode which allows to run the IDL
 program as an inferior process of Emacs.  It can be used to work with
@@ -1755,8 +1745,8 @@ to debug these programs.  The IDLWAVE shell uses @file{comint}, an Emacs
 packages which handles the communication with the IDL program.
 Unfortunately IDL for Windows and MacOS does not allow the interaction
 with Emacs@footnote{Please inform the maintainer if you come up with a way
-to make the IDLWAVE shell work on these systems.} - so the IDLWAVE shell
-only works under Unix.
+to make the IDLWAVE shell work on these systems.}, so the IDLWAVE shell
+only works under GNU and Unix.
 
 @menu
 * Starting the Shell::          How to launch IDL as a subprocess
@@ -1961,13 +1951,13 @@ modes.
 
 @kindex C-c C-d
 Programs can be compiled, run, and debugged directly from the source
-buffer in Emacs.  The IDLWAVE shell installs keybindings both in the
+buffer in Emacs.  The IDLWAVE shell installs key bindings both in the
 shell buffer and in all IDL code buffers of the current Emacs session.
 On Emacs versions which support this, it also installs a debugging
 toolbar.  The display of the toolbar can be toggled with @kbd{C-c C-d
 C-t} (@code{idlwave-shell-toggle-toolbar}).
 
-The debugging keybindings are by default on the prefix key @kbd{C-c
+The debugging key bindings are by default on the prefix key @kbd{C-c
 C-d}, so for example setting a breakpoint is done with @kbd{C-c C-d
 C-b}, compiling a source file with @kbd{C-c C-d C-c}.  If you find this
 too much work you can choose a combination of modifier keys which is not
@@ -2135,8 +2125,8 @@ argument will prompt for an expression instead of using the one at
 point.
 
 It is very convenient to click with the mouse on expressions to retrieve
-their value.  Expression printing is also bound to @kbd{S-mouse-2} and
-expression help to @kbd{C-S-mouse-2}.  I.e. you need to hold down
+their value.  Expression printing is also bound to @kbd{S-Mouse-2} and
+expression help to @kbd{C-S-Mouse-2}.  I.e. you need to hold down
 @key{SHIFT} and @key{CONTROL} while clicking with the mouse.
 
 @cindex Calling stack, motion
@@ -2252,7 +2242,7 @@ to get a separate frame for the IDL shell, remove that command from your
 @end lisp
 @item 
 The key sequence @kbd{M-@key{TAB}} no longer inserts a TAB character.
-Like in in many other Emacs modes, @kbd{M-@key{TAB}} now does
+Like in many other Emacs modes, @kbd{M-@key{TAB}} now does
 completion.  Inserting a TAB has therefore been moved to
 @kbd{C-@key{TAB}}.  On a character based terminal you can also use
 @kbd{C-c @key{SPC}}.
@@ -2277,14 +2267,16 @@ Chris wrote @file{idl.el} and @file{idl-shell.el} and maintained them
 for several years.
 
 @item
-@uref{mailto:dominik@@astro.uva.nl, @b{Carsten Dominik}}, current author
-and maintainer.  I have been in charge of the package since version
-3.0. I am also responsible for the manual.
+@uref{mailto:dominik@@astro.uva.nl, @b{Carsten Dominik}}, who have
+been in charge of the package since version 3.0, and also wrote this
+manual.
 
-@item 
-@uref{mailto:jdsmith@@astrosun.tn.cornell.edu, @b{J.D. Smith}} has
-shaped Object method completion and most new features in version 4.0
-with his ideas, bug reports, and patient explanations of IDL internals. 
+@item
+@uref{mailto: jdsmith@@astro.cornell.edu, @b{John-David Smith}},
+current maintainer, who is also responsible for this manual's
+maintenance.  John-David has also shaped Object method completion and
+most new features in version 4.0 with his ideas, bug reports, and
+patient explanations of IDL internals.
 @end itemize
 
 @noindent
@@ -2442,7 +2434,6 @@ Controls under what circumstances routine info is updated automatically.
 @cindex IDL library routine info
 @cindex Windows
 @cindex MacOS
-@cindex Unix
 @cindex IDL variable @code{!DIR}
 @cindex @code{!DIR}, IDL variable
 
@@ -2455,7 +2446,7 @@ file will contain lisp code, its name should end in @file{.el}.  Under
 Windows and MacOS, you also need to specify the search path for IDL
 library files in the variable @code{idlwave-library-path}, and the
 location of the IDL directory (the value of the @code{!DIR} system
-variable) in the variable @code{idlwave-system-directory}.  Under UNIX,
+variable) in the variable @code{idlwave-system-directory}.  Under Unix and GNU,
 these values will be automatically inferred from an IDLWAVE
 shell.
 
@@ -2488,11 +2479,11 @@ File for routine information of the IDL library.
 @end defopt
 
 @defopt idlwave-library-path
-IDL library path for Windows and MacOS.  Not needed under Unix.
+IDL library path for Windows and MacOS.  Not needed under GNU and Unix.
 @end defopt
 
 @defopt idlwave-system-directory
-The IDL system directory for Windows and MacOS.  Not needed under UNIX.
+The IDL system directory for Windows and MacOS.  Not needed under GNU and Unix.
 @end defopt
 
 @defopt idlwave-special-lib-alist
@@ -2659,7 +2650,7 @@ user is King!
     (font-lock-mode 1)                   ; Turn on font-lock mode
     (idlwave-auto-fill-mode 0)           ; Turn off auto filling
     ;;
-    ;; Pad with with 1 space (if -n is used then make the
+    ;; Pad with 1 space (if -n is used then make the
     ;; padding a minimum of n spaces.)  The defaults use -1
     ;; instead of 1.
     (idlwave-action-and-binding "=" '(idlwave-expand-equal 1 1))