Next: , Previous: The IDLWAVE Shell, Up: The IDLWAVE Shell

5.1 Starting the Shell

The IDLWAVE shell can be started with the command M-x idlwave-shell. In idlwave-mode the function is bound to C-c C-s. It creates a buffer *idl* which is used to interact with the shell. If the shell is already running, C-c C-s will simply switch to the shell buffer. The command C-c C-l (idlwave-shell-recenter-shell-window) displays the shell window without selecting it. The shell can also be started automatically when another command tries to send a command to it. To enable auto start, set the variable idlwave-shell-automatic-start to t.

In order to create a separate frame for the IDLWAVE shell buffer, call idlwave-shell with a prefix argument: C-u C-c C-s or C-u C-c C-l. If you always want a dedicated frame for the shell window, configure the variable idlwave-shell-use-dedicated-frame.

To launch a quick IDLWAVE shell directly from a shell prompt without an IDLWAVE buffer (e.g., as a replacement for running inside an xterm), define a system alias with the following content:

     emacs -geometry 80x32 -eval "(idlwave-shell 'quick)"

Replace the ‘-geometry 80x32’ option with ‘-nw’ if you prefer the Emacs process to run directly inside the terminal window.

To use IDLWAVE with ENVI or other custom packages which change the ‘IDL> ’ prompt, you must change the idlwave-shell-prompt-pattern, which defaults to ‘"^ ?IDL> "’. Normally, you can just replace the ‘IDL’ in this expression with the prompt you see. A suitable pattern which matches the prompt for both ENVI and IDL simultaneously is ‘"^ ?\\(ENVI\\|IDL\\)> "’.

— User Option: idlwave-shell-explicit-file-name (idl)

This is the command to run IDL.

— User Option: idlwave-shell-command-line-options

A list of command line options for calling the IDL program.

— User Option: idlwave-shell-prompt-pattern

Regexp to match IDL prompt at beginning of a line.

— User Option: idlwave-shell-process-name

Name to be associated with the IDL process.

— User Option: idlwave-shell-automatic-start (nil)

Non-nil means attempt to invoke idlwave-shell if not already running.

— User Option: idlwave-shell-initial-commands

Initial commands, separated by newlines, to send to IDL.

— User Option: idlwave-shell-save-command-history (t)

Non-nil means preserve command history between sessions.

— User Option: idlwave-shell-command-history-file (~/.idlwave/.idlwhist)

The file in which the command history of the idlwave shell is saved. Unless it's an absolute path, it goes in idlwave-config-directory.

— User Option: idlwave-shell-use-dedicated-frame (nil)

Non-nil means IDLWAVE should use a special frame to display the shell buffer.

— User Option: idlwave-shell-use-dedicated-window (nil)

Non-nil means use a dedicated window for the shell, taking care not it replace it with other buffers.

— User Option: idlwave-shell-frame-parameters

The frame parameters for a dedicated idlwave-shell frame.

— User Option: idlwave-shell-raise-frame (t)

Non-nil means `idlwave-shell' raises the frame showing the shell window.

— User Option: idlwave-shell-temp-pro-prefix

The prefix for temporary IDL files used when compiling regions.

— User Option: idlwave-shell-mode-hook

Hook for customizing idlwave-shell-mode.