This is ess.info, produced by makeinfo version 4.2 from ess.texi. ESS -- Emacs Speaks Statistics ****************************** START-INFO-DIR-ENTRY * ESS: (ess). Emacs Speaks Statistics (S/S+/R, SAS, BUGS, Stata, XLisp-Stat). END-INFO-DIR-ENTRY  File: ess.info, Node: Source Directories, Prev: Source Files, Up: Editing Names and locations of dump files ================================= Every dump file should be given a unique file name, usually the dumped object name with some additions. - User Option: ess-dump-filename-template Template for filenames of dumped objects. `%s' is replaced by the object name. By default, dump file names are the user name, followed by `.' and the object and ending with `.S'. Thus if user `joe' dumps the object `myfun' the dump file will have name `joe.myfun.S'. The username part is included to avoid clashes when dumping into a publicly-writable directory, such as `/tmp'; you may wish to remove this part if you are dumping into a directory owned by you. You may also specify the directory in which dump files are written: - User Option: ess-source-directory Directory name (ending in a slash) where S dump files are to be written. By default, dump files are always written to `/tmp', which is fine when `ess-keep-dump-files' is `nil'. If you are keeping dump files, then you will probably want to keep them somewhere in your home directory, say `~/S-source'. This could be achieved by including the following line in your `.emacs' file: (setq ess-source-directory (expand-file-name "~/S-source/")) If you would prefer to keep your dump files in separate directories depending on the value of some variable, ESS provides a facility for this also. By setting `ess-source-directory' to a lambda expression which evaluates to a directory name, you have a great deal of flexibility in selecting the directory for a particular source file to appear in. The lambda expression is evaluated with the process buffer as the current buffer and so you can use the variables local to that buffer to make your choice. For example, the following expression causes source files to be saved in the subdirectory `Src' of the directory the ESS process was run in. (setq ess-source-directory (lambda () (concat ess-directory "Src/"))) (`ess-directory' is a buffer-local variable in process buffers which records the directory the ESS process was run from.) This is useful if you keep your dump files and you often edit objects with the same name in different ESS processes. Alternatively, if you often change your S working directory during an S session, you may like to keep dump files in some subdirectory of the directory pointed to by the first element of the current search list. This way you can edit objects of the same name in different directories during the one S session: (setq ess-source-directory (lambda () (file-name-as-directory (expand-file-name (concat (car ess-search-list) "/.Src"))))) If the directory generated by the lambda function does not exist but can be created, you will be asked whether you wish to create the directory. If you choose not to, or the directory cannot be created, you will not be able to edit functions.  File: ess.info, Node: Help, Next: Transcript Mode, Prev: Editing, Up: Top Reading help files in ESS ************************* ESS provides an easy-to-use facility for reading S help files from within Emacs. From within the ESS process buffer or any ESS edit buffer, typing `C-c C-v' (`ess-display-help-on-object') will prompt you for the name of an object for which you would like documentation. Completion is provided over all objects which have help files. If the requested object has documentation, you will be popped into a buffer (named `*help(OBJ-NAME)*') containing the help file. This buffer is placed in a special `S Help' mode which disables the usual editing commands but which provides a number of keys for paging through the help file: Help commands: * `?' (`ess-describe-help-mode') Pops up a help buffer with a list of the commands available in S help mode. * `h' (`ess-display-help-on-object') Pop up a help buffer for a different object Paging commands: * `b' or `DEL' (`scroll-down') Move one page backwards through the help file. * `SPC' (`scroll-up') Move one page forwards through the help file. * `>' (`beginning-of-buffer') and `<' (`end-of-buffer') Move to the beginning and end of the help file, respectively. Section-based motion commands: * `n' (`ess-skip-to-next-section') and `p' (`ess-skip-to-previous-section') Move to the next and previous section header in the help file, respectively. A section header consists of a number of capitalized words, followed by a colon. In addition, the `s' key followed by one of the following letters will jump to a particular section in the help file: `a' ARGUMENTS: `b' BACKGROUND: `B' BUGS: `d' DETAILS: `D' DESCRIPTION: `e' EXAMPLES: `n' NOTE: `o' OPTIONAL ARGUMENTS: `r' REQUIRED ARGUMENTS: `R' REFERENCES: `s' SIDE EFFECTS: `s' SEE ALSO: `u' USAGE: `v' VALUE: `<' Jumps to beginning of file `>' Jumps to end of file `?' Pops up a help buffer with a list of the defined section motion keys. Miscellaneous: * `l' (`ess-eval-line-and-step') Evaluates the current line in the ESS process, and moves to the next line. Useful for running examples in help files. * `r' (`ess-eval-region') Send the contents of the current region to the ESS process. Useful for running examples in help files. * `/' (`isearch-forward') Same as `C-s'. Quit commands: * `q' (`ess-switch-to-end-of-ESS') Returns to the ESS process buffer in another window, leaving the help window visible. * `k' (`kill-buffer') Kills the help buffer. * `x' (`ess-kill-buffer-and-go') Return to the ESS process, killing this help buffer. In addition, all of the ESS commands available in the edit buffers are also available in S help mode (*note Edit buffer::). Of course, the usual (non-editing) Emacs commands are available, and for convenience the digits and <-> act as prefix arguments. If a help buffer already exists for an object for which help is requested, that buffer is popped to immediately; the ESS process is not consulted at all. If the contents of the help file have changed, you either need to kill the help buffer first, or pass a prefix argument (with `C-u') to `ess-display-help-on-object'. Help buffers are marked as temporary buffers in ESS, and are deleted when `ess-quit' or `ess-cleanup' are called. Help buffers normally appear in another window within the current frame. If you wish help buffers to appear in their own frame (either one per help buffer, or one for all help buffers), you can customize the variable `ess-help-own-frame'.  File: ess.info, Node: Transcript Mode, Next: Miscellaneous, Prev: Help, Up: Top Manipulating saved transcript files *********************************** Inferior S mode records the transcript (the list of all commands executed, and their output) in the process buffer, which can be saved as a "transcript file", which should normally have the suffix `.St'. The most obvious use for a transcript file is as a static record of the actions you have performed in a particular S session. Sometimes, however, you may wish to re-execute commands recorded in the transcript file by submitting them to a running ESS process. This is what Transcript Mode is for. If you load file a with the suffix `.St' into Emacs, it is placed in S Transcript Mode. Transcript Mode is similar to Inferior S mode (*note Entering commands::): paragraphs are defined as a command and its output, and you can move though commands either with the paragraph commands or with `C-c C-p' and `C-c C-n'. * Menu: * Resubmit:: Resubmitting commands from the transcript file * Clean:: Cleaning transcript files  File: ess.info, Node: Resubmit, Next: Clean, Prev: Transcript Mode, Up: Transcript Mode Resubmitting commands from the transcript file ============================================== Three commands are provided to re-submit command lines from the transcript file to a running ESS process. They are: * `RET' (`ess-transcript-send-command') Send the current command line to the ESS process, and execute it. * `C-c RET' (`ess-transcript-copy-command') Copy the current command to the ESS process, and switch to the ESS process buffer (ready to edit the copied command). * `M-RET' (`ess-transcript-send-command-and-move') Send the current command to the ESS process, and move to the next command line. This command is useful for submitting a series of commands. Note that these commands are similar to those on the same keys in Inferior S Mode. In all three cases, the commands should be executed when the cursor is on a command line in the transcript; the prompt is automatically removed before the command is submitted.  File: ess.info, Node: Clean, Prev: Resubmit, Up: Transcript Mode Cleaning transcript files ========================= Yet another use for transcript files is to extract the command lines for inclusion in an S source file or function. Transcript mode provides one command which does just this: * `C-c C-w' (`ess-transcript-clean-region') Deletes all prompts and command output in the region, leaving only the commands themselves. The remaining command lines may then be copied to a source file or edit buffer for inclusion in a function definition, or may be evaluated directly (*note Evaluating code::) using the code evaluation commands from S mode, also available in S Transcript Mode.  File: ess.info, Node: Miscellaneous, Next: Bugs Etc, Prev: Transcript Mode, Up: Top Other features of ESS ********************* ESS has a few miscellaneous features, which didn't fit anywhere else. * Menu: * Highlighting:: Syntactic highlighting of buffers * Graphics:: Using graphics with ESS * Imenu:: Support for Imenu in ESS * Toolbar:: Support for toolbar in ESS * Object Completion::  File: ess.info, Node: Highlighting, Next: Graphics, Prev: Miscellaneous, Up: Miscellaneous Syntactic highlighting of buffers ================================= ESS provides Font-Lock (*note Using Multiple Typefaces: (emacs)Faces.) patterns for Inferior S Mode, S Mode, and S Transcript Mode buffers. To activate highlighting, you need to turn on Font Lock mode in the appropriate buffers. This can be done on a per-buffer basis with `M-x font-lock-mode', or may be done by adding `turn-on-font-lock' to `inferior-ess-mode-hook', `ess-mode-hook' and `ess-transcript-mode-hook' (*note Hooks::). Your systems administrator may have done this for you in `ess-site.el' (*note Customization::). The font-lock patterns are defined in three variables, which you may modify if desired: - Variable: inferior-ess-font-lock-keywords Font-lock patterns for Inferior ESS Mode. The default value highlights prompts, inputs, assignments, output messages, vector and matrix labels, and literals such as `NA' and `TRUE'. - Variable: ess-mode-font-lock-keywords Font-lock patterns for ESS programming mode. The default value highlights function names, literals, assignments, source functions and reserved words. - Variable: ess-trans-font-lock-keywords Font-lock patterns for ESS Transcript Mode. The default value highlights the same patterns as in Inferior ESS Mode.  File: ess.info, Node: Graphics, Next: Imenu, Prev: Highlighting, Up: Miscellaneous Using graphics with ESS ======================= One of the main features of the `S' package is its ability to generate high-resolution graphics plots, and ESS provides a number of features for dealing with such plots. * Menu: * printer:: The printer() graphics driver * X11:: The X11() (and other X-windows based) driver * winjava:: Java Graphics Device  File: ess.info, Node: printer, Next: X11, Prev: Graphics, Up: Graphics Using ESS with the `printer()' driver ------------------------------------- This is the simplest (and least desirable) method of using graphics within ESS. S's `printer()' device driver produces crude character based plots which can be contained within the ESS process buffer itself. To start using character graphics, issue the S command printer(width=79) (the `width=79' argument prevents Emacs line-wrapping at column 80 on an 80-column terminal. Use a different value for a terminal with a different number of columns.) Plotting commands do not generate graphics immediately, but are stored until the `show()' command is issued, which displays the current figure.  File: ess.info, Node: X11, Next: winjava, Prev: printer, Up: Graphics Using ESS with windowing devices -------------------------------- Of course, the ideal way to use graphics with ESS is to use a windowing system. Under X11, this requires that the DISPLAY environment variable be appropriately set, which may not always be the case within your Emacs process. ESS provides a facility for setting the value of DISPLAY before the ESS process is started if the variable `ess-ask-about-display' is non-`nil'. *Note Variables for starting ESS::, for details of this variable.  File: ess.info, Node: winjava, Prev: X11, Up: Graphics Java Graphics Device -------------------- S+6.2 on Windows contains a java library that supports graphics. Send the commands: library(winjava) java.graph() to start the graphics driver. This allows you to use ESS for both interaction and graphics within S-PLUS. (Thanks to Tim Hesterberg for this information.)  File: ess.info, Node: Imenu, Next: Toolbar, Prev: Graphics, Up: Miscellaneous Imenu ===== Imenu is an Emacs tool for providing mode-specific buffer indexes. In some of the ESS editing modes, support for Imenu is provided. For example, in S mode buffers, the menubar should display an item called "Imenu-S". Within this menubar you will then be offered bookmarks to particular parts of your source file (such as the starting point of each function definition).  File: ess.info, Node: Toolbar, Next: Object Completion, Prev: Imenu, Up: Miscellaneous Toolbar ======= The R and S editing modes have support for a toolbar. This toolbar provides icons to act as shortcuts for starting new S/R processes, or for evaluating regions of your source buffers. The toolbar should be present if your emacs can display images. *Note Customization::, for ways to change the toolbar.  File: ess.info, Node: Object Completion, Prev: Toolbar, Up: Miscellaneous Object Completion ================= If you are running S-PLUS or R, you might consider installing the database files. From within Emacs, "C-x d" to the directory containing ESS. Now: `M-x S+3' (get S-PLUS running. once you have reached the SPLUS 3.x prompt, do:) `M-x ess-create-object-name-db' (this will create the file: ess-s+3-namedb.el; if it isn't in the ESS directory, move it there). Then, completions will be autoloaded and will not be regenerated for every session. For R: `M-x R' (get R running. once you have reached the R prompt, do:) `M-x ess-create-object-name-db' (this will create the file: ess-r-namedb.el; if it isn't in the ESS directory, move it there).  File: ess.info, Node: Bugs Etc, Next: Customization, Prev: Miscellaneous, Up: Top Bugs and Bug Reporting, Mailing Lists ************************************* * Menu: * Bugs:: * Reporting Bugs:: * Mailing Lists::  File: ess.info, Node: Bugs, Next: Reporting Bugs, Prev: Bugs Etc, Up: Bugs Etc Bugs ==== * Commands like `ess-display-help-on-object' and list completion cannot be used while the user is entering a multi-line command. The only real fix in this situation is to use another ESS process. * The `ess-eval-' commands can leave point in the ESS process buffer in the wrong place when point is at the same position as the last process output. This proves difficult to fix, in general, as we need to consider all _windows_ with `window-point' at the right place. * It's possible to clear the modification flag (say, by saving the buffer) with the edit buffer not having been loaded into S. * Backup files can sometimes be left behind, even when `ess-keep-dump-files' is `nil'. * Passing an incomplete S expression to `ess-execute' causes ESS to hang. * The function-based commands don't always work as expected on functions whose body is not a parenthesized or compound expression, and don't even recognize anonymous functions (i.e. functions not assigned to any variable). * Multi-line commands could be handled better by the command history mechanism.  File: ess.info, Node: Reporting Bugs, Next: Mailing Lists, Prev: Bugs, Up: Bugs Etc Reporting Bugs ============== Please send bug reports, suggestions etc. to The easiest way to do this is within Emacs by typing `M-x ess-submit-bug-report' This also gives the maintainers valuable information about your installation which may help us to identify or even fix the bug. If Emacs reports an error, backtraces can help us debug the problem. Type "M-x set-variable RET debug-on-error RET t RET". Then run the command that causes the error and you should see a *Backtrace* buffer containing debug information; send us that buffer. Note that comments, suggestions, words of praise and large cash donations are also more than welcome.  File: ess.info, Node: Mailing Lists, Prev: Reporting Bugs, Up: Bugs Etc Mailing Lists ============= There is a mailing list for discussions and announcements relating to ESS. Join the list by sending an e-mail with "subscribe ess-help" (or "help") in the body to ; contributions to the list may be mailed to . Rest assured, this is a fairly low-volume mailing list. The purposes of the mailing list include * helping users of ESS to get along with it. * discussing aspects of using ESS on Emacs and XEmacs. * suggestions for improvements. * announcements of new releases of ESS. * posting small patches to ESS.  File: ess.info, Node: Customization, Next: Key Index, Prev: Bugs Etc, Up: Top Customizing ESS *************** ESS can be easily customized to your taste simply by including the appropriate lines in your `.emacs' file. There are numerous variables which affect the behavior of ESS in certain situations which can be modified to your liking. Keybindings may be set or changed to your preferences, and for per-buffer customizations hooks are also available. Most of these variables can be viewed and set using the Custom facility within Emacs. Type `M-x customize-group RET ess RET' to see all the ESS variables that can be customized. * Menu: * Variables:: Variables for customization * Hooks:: Customizing ESS with hooks * Keybindings:: Changing the default ESS keybindings  File: ess.info, Node: Variables, Next: Hooks, Prev: Customization, Up: Customization Variables for customization =========================== ESS is easily customizable by means of setting variables in your `.emacs' file. In most cases, you can change defaults by including lines of the form (setq VARIABLE-NAME VALUE) in your `.emacs'. In what follows, variable names will be listed along with their descriptions and default values. Just substitute the variable name and the new value into the template above. * Menu: * Variables for starting ESS:: Variables for starting ESS * Dump file variables:: Variables for dump files * Indentation variables:: Variables controlling indentation * Variables controlling interaction:: Variables controlling interaction with the ESS process * Editing assembly files:: Variables for restoring assembly mode associations  File: ess.info, Node: Variables for starting ESS, Next: Dump file variables, Prev: Variables, Up: Variables Variables for starting ESS -------------------------- - User Option: ess-ask-for-ess-directory Default: `t' If this variable has a non-`nil' value, then every time ESS is run with `M-x S' you will be prompted for a directory to use as the working directory for your S session; this directory should have a `.Data' subdirectory. If the value of `ess-ask-for-ess-directory' is `nil', the value of `S-directory' is used as the working directory. - User Option: S-directory Default: Your home directory The working directory for your S session if `ess-ask-for-ess-directory' is `nil', and the default when prompting for a directory if it is not. For example, you may wish to set this to the value of the current buffer's working directory before starting S by adding the following line to your `.emacs' file (*note Hooks::) (setq ess-pre-run-hook '((lambda () (setq S-directory default-directory)))) - User Option: ess-ask-about-display Default: `nil' If this variable has a non-`nil' value, then every time ESS is run with `M-x S' you will be asked for a value for the `DISPLAY' environment variable to be used in the current S session. If this variable is not set correctly, S will not be able to create any windows under the X windowing environment. Completion is provided over the `X-displays-list' variable; the default is the current value of `DISPLAY'. This feature is useful is you often run S on a different display than that of the machine you are running S from. If `ess-ask-about-display' is `nil', the current value of `DISPLAY' is used. - User Option: X-displays-list Default: `'(":0.0")' List of possible values for the `DISPLAY' environment variable, provided for completion when prompting for such a value.  File: ess.info, Node: Dump file variables, Next: Indentation variables, Prev: Variables for starting ESS, Up: Variables Variables for dump files ------------------------ - User Option: ess-insert-function-templates Default: `t' If this variable has a non-`nil' value, then dumping a non-existent object will result in the edit buffer containing a skeleton function definition, ready for editing. - User Option: ess-source-directory Default: `"/tmp/"' Directory name (ending in `/') in which dump files are placed. This should always be a writable directory. - User Option: ess-source-directory-generator Default: `nil' Alternative, dynamic method of specifying the directory for dump files. - User Option: ess-dump-filename-template Default: USER_NAME`.'OBJECT_NAME`.S' Naming system to use for dumped object files. *Note Source Directories::, for details of this and the previous two variables. - User Option: ess-keep-dump-files Default: `nil' Boolean flag signifying whether to keep dump files or to delete them after each use. *Note Source Files::, for more details.  File: ess.info, Node: Indentation variables, Next: Variables controlling interaction, Prev: Dump file variables, Up: Variables Variables controlling indentation --------------------------------- - User Option: ess-tab-always-indent Default: `t' If non-`nil', then `TAB' in the edit buffer always indents the current line, regardless of the position of point in the line. Otherwise, indentation is only performed if point is in the lines indentation, and a tab character is inserted is point is after the first nonblank character. - User Option: ess-auto-newline Default: `nil' Non-`nil' means automatically newline before and after braces inserted in S code. The following variables control amounts of indentation. These variables automatically become buffer-local in any ESS buffer, and so setting any of these variables has effect in the current buffer only. - User Option: ess-indent-level Default: 2 Extra indentation of S statement sub-block with respect to enclosing braces. - User Option: ess-brace-imaginary-offset Default: 0 Extra indentation (over sub-block indentation) for block following an open brace which follows on the same line as a statement. - User Option: ess-brace-offset Default: 0 Extra indentation for braces, compared with other text in same context. - User Option: ess-continued-statement-offset Default: 0 Extra indent for lines not starting new statements. - User Option: ess-continued-brace-offset Default: 0 Extra indent for substatements that start with open-braces. This is in addition to `ess-continued-statement-offset'. - User Option: ess-arg-function-offset Default: 2 Extra indent for arguments of function `foo' when it is called as the value of an argument to another function in `arg=foo(...)' form. If not number, the statements are indented at open-parenthesis following `foo'. - User Option: ess-expression-offset Default: 4 Extra indent for internal substatements of the call to `expression()' specified in `obj <- expression(...)' form. If not a number, the statements are indented at open-parenthesis following `expression'. - User Option: ess-else-offset Default: 2 Extra indentation of the `else' clause with respect to the corresponding `if'. In addition, a number of default styles are defined for you (in `ess-style-alist'): - User Option: ess-default-style Default: `DEFAULT' The default formatting style to use in edit buffers. The DEFAULT style uses the values of the above indentation variables at load-time, so that changing these variables in your `.emacs' file will affect your buffer defaults. Other styles are: `GNU', `BSD', `K&R', `CLB', and `C++'. See `ess-cust.el' for the complete definitions of the styles. *Note Edit buffer::, for more details.  File: ess.info, Node: Variables controlling interaction, Next: Editing assembly files, Prev: Indentation variables, Up: Variables Variables controlling interaction with the ESS process ------------------------------------------------------ - User Option: comint-input-ring-size Default: 50 Number of commands to store in the command history. - User Option: ess-execute-in-process-buffer Default: `nil' If this is `nil', then the `ess-execute-' commands (*note Other::) output to a temporary buffer. Otherwise, the output goes to the ESS process. - User Option: ess-eval-visibly-p Default: `nil' If non-`nil', then the `ess-eval-' commands (*note Edit buffer::) echo the S commands in the process buffer by default. In any case, passing a prefix argument to the eval command reverses the meaning of this variable.  File: ess.info, Node: Editing assembly files, Prev: Variables controlling interaction, Up: Variables Variables for restoring assembly mode associations -------------------------------------------------- - User Option: auto-mode-alist Association list mapping file extensions to emacs modes. If you edit assembler files but not S files, you may want to retain the default mode for the .s and .S extensions, namely assembler mode. ESS provides a function, `ess-restore-asm-extns' that you can use to restore default behavior for these files. You can add the following lisp to your `.emacs': (add-hook 'ess-mode-hook 'ess-restore-asm-extns) (add-hook 'inferior-ess-mode-hook 'ess-restore-asm-extns) This code removes the association between .s and .S files and S mode.  File: ess.info, Node: Hooks, Next: Keybindings, Prev: Variables, Up: Customization Customizing ESS with hooks ========================== ESS provides the following hooks: - Hook: ess-mode-hook Called every time `ESS' is run. - Hook: ess-mode-load-hook Called just after the file `ess.el' is loaded. Useful for setting up your keybindings, etc. - Hook: ess-pre-run-hook Called before the ESS process is started (e.g., with `M-x S'). Good for setting up your directory. - Hook: ess-post-run-hook Called just after the ESS process starts up. This can be used to evaluate ESS code at the start of a session, with `ess-eval-visibly', say. - Hook: inferior-ess-mode-hook For customizing inferior ESS mode. Called after inferior-ess-mode is entered and variables have been initialized. - Hook: ess-help-mode-hook Called every time when entering ess-help-mode (i.e., an ESS help buffer is generated). - Hook: ess-send-input-hook Called just before line input is sent to the process. - Hook: ess-transcript-mode-hook For customizing ESS transcript mode.  File: ess.info, Node: Keybindings, Prev: Hooks, Up: Customization Changing the default ESS keybindings ==================================== ESS provides a separate keymaps (keymap variables) for ESS process buffers, edit buffers and for help buffers. The key bindings in the edit buffers further depend on the language and dialect in use. - Keymap: inferior-ess-mode-map Keymap used in the ESS process buffer. The bindings from `comint-mode-map' are automatically inherited. - Keymap: ess-mode-map Keymap used within edit (ess-mode) buffers. - Keymap: ess-eval-map Keymap used within edit buffers for sending ESS code to the running process. - Keymap: ess-help-mode-map Keymap used within help buffers. In addition, `ess-help-sec-map' is the keymap for the `s' prefix key. Keys defined in `ess-help-sec-keys-alist' are automatically inserted into this keymap when ESS is loaded. - Keymap: ess-transcript-mode-map Keymap used within ESS transcript buffers.  File: ess.info, Node: Key Index, Next: Concept Index, Prev: Customization, Up: Top Key (Character) Index ********************* * Menu:  File: ess.info, Node: Concept Index, Next: Variable and command index, Prev: Key Index, Up: Top Concept Index ************* * Menu: * .Data directory: Variables for starting ESS. * .emacs file <1>: Source Directories. * .emacs file <2>: Variables for starting ESS. * .emacs file <3>: Indenting. * .emacs file <4>: System dependent. * .emacs file: Variables. * .First function: System dependent. * aborting S commands: Other. * aborting the ESS process: Other. * arguments to S program <1>: System dependent. * arguments to S program: Customizing startup. * Assembler mode: Editing assembly files. * authors: Credits. * autosaving: Source Files. * Bug reports: Reporting Bugs. * bugs: Bugs. * cleaning up: Hot keys. * comint: Credits. * command history: Command History. * command to run S program: System dependent. * command-line completion: Completion. * command-line editing: Command-line editing. * commands: Entering commands. * comments: Source Files. * comments in S: Indenting. * completion in edit buffer: Other edit buffer commands. * completion of object names: Completion. * completion on file names: Completion. * completion on lists: Completion. * completion, when prompted for object names: Edit buffer. * continuing prompt: System dependent. * creating new objects: Edit buffer. * credits: Credits. * customization: Customization. * data frames: Completion. * debugging S functions: Evaluating code. * defaults: Variables. * deleting output: Last command. * directories <1>: Variables for starting ESS. * directories: Starting up. * DISPLAY environment variable: Variables for starting ESS. * dump file directories: Source Directories. * dump file names: Source Directories. * dump files <1>: Source Files. * dump files <2>: Edit buffer. * dump files: Dump file variables. * echoing commands when evaluating: Evaluating code. * edit buffer: Edit buffer. * editing commands: Command History. * editing functions: Editing. * editing transcripts: Saving transcripts. * emacsclient: Emacsclient. * entering commands: Entering commands. * environment variables: Variables for starting ESS. * errors: Error Checking. * ESS process buffer: Starting up. * ESS process directory: Starting up. * evaluating code with echoed commands: Evaluating code. * evaluating S expressions: Evaluating code. * Font-lock mode: Highlighting. * formatting source code <1>: Indenting. * formatting source code: Indentation variables. * graphics: Graphics. * help files: Help. * highlighting: Highlighting. * historic backups: Source Files. * hooks: Hooks. * hot keys: Hot keys. * indentation: Indentation variables. * indenting: Indenting. * installation: Installation. * interactive use of S: Introduction. * interrupting S commands: Other. * introduction: Introduction. * keyboard short cuts: Hot keys. * killing temporary buffers: Hot keys. * killing the ESS process: Hot keys. * lists, completion on: Completion. * motion in transcript mode: Transcript Mode. * multi-line commands, resubmitting: Transcript resubmit. * Multiple ESS processes: Multiple ESS processes. * name of S program: System dependent. * new objects, creating: Edit buffer. * objects: Hot keys. * pages in the process buffer: Transcript. * paging commands in help buffers: Help. * paragraphs in the process buffer: Transcript. * parsing errors: Error Checking. * primary prompt: System dependent. * process buffer: Starting up. * process names: Multiple ESS processes. * programming in S: Introduction. * project work in S: Source Files. * prompts in S: System dependent. * quitting from ESS: Hot keys. * re-executing commands: Command History. * reading long command outputs: Last command. * Remote Computers: ESS processes on Remote Computers. * reverting function definitions: Edit buffer. * running S: Starting up. * S program name: System dependent. * search list <1>: Source Directories. * search list: Hot keys. * sending input: Entering commands. * Splus: System dependent. * starting directory <1>: Variables for starting ESS. * starting directory: Starting up. * starting ESS: Starting up. * stepping through code: Evaluating code. * STERM: Statistical Process running in ESS?. * tcsh: Completion. * temporary buffers: Help. * temporary buffers, killing: Hot keys. * transcript: Transcript. * transcript file: Customizing startup. * transcript file names: Saving transcripts. * transcript mode motion: Transcript Mode. * transcripts of S sessions: Introduction. * using S interactively: Introduction. * variables: Variables. * winjava: winjava. * working directory <1>: Starting up. * working directory: Source Directories. * X windows <1>: X11. * X windows: Variables for starting ESS.  File: ess.info, Node: Variable and command index, Prev: Concept Index, Up: Top Variable and command index ************************** * Menu: * attach(): Hot keys. * auto-mode-alist: Editing assembly files. * backward-kill-word: Command-line editing. * comint-backward-matching-input: Process buffer motion. * comint-bol: Command-line editing. * comint-copy-old-input: Transcript resubmit. * comint-delimiter-argument-list: History expansion. * comint-dynamic-complete: Completion. * comint-forward-matching-input: Process buffer motion. * comint-input-ring-size <1>: Variables controlling interaction. * comint-input-ring-size: Command History. * comint-interrupt-subjob: Other. * comint-kill-input: Command-line editing. * comint-kill-output: Last command. * comint-mode-map: Keybindings. * comint-next-input <1>: Process buffer motion. * comint-next-input: Command History. * comint-next-matching-input: Command History. * comint-next-matching-input-from-input: Command History. * comint-previous-input <1>: Process buffer motion. * comint-previous-input: Command History. * comint-previous-matching-input: Command History. * comint-previous-matching-input-from-input: Command History. * comint-show-maximum-output: Last command. * comint-show-output: Last command. * comint-stop-subjob: Other. * comment-column: Indenting. * dump(): Edit buffer. * ess-abort: Other. * ess-arg-function-offset: Indentation variables. * ess-ask-about-display <1>: Variables for starting ESS. * ess-ask-about-display: X11. * ess-ask-about-transfile <1>: Saving transcripts. * ess-ask-about-transfile: Customizing startup. * ess-ask-for-ess-directory <1>: Customizing startup. * ess-ask-for-ess-directory: Variables for starting ESS. * ess-auto-newline: Indentation variables. * ess-beginning-of-function: Other edit buffer commands. * ess-brace-imaginary-offset: Indentation variables. * ess-brace-offset: Indentation variables. * ess-change-sp-regexp: Completion details. * ess-cleanup <1>: Hot keys. * ess-cleanup: Help. * ess-continued-brace-offset: Indentation variables. * ess-continued-statement-offset: Indentation variables. * ess-default-style: Indentation variables. * ess-delete-dump-files: Source Files. * ess-describe-help-mode: Help. * ess-directory <1>: Source Directories. * ess-directory: Customizing startup. * ess-display-help-on-object: Help. * ess-dump-filename-template <1>: Dump file variables. * ess-dump-filename-template: Source Directories. * ess-dump-object-into-edit-buffer <1>: Edit buffer. * ess-dump-object-into-edit-buffer: Other. * ess-else-offset: Indentation variables. * ESS-elsewhere: ESS processes on Remote Computers. * ess-end-of-function: Other edit buffer commands. * ess-eval-buffer: Evaluating code. * ess-eval-function: Evaluating code. * ess-eval-function-and-go: Evaluating code. * ess-eval-line: Evaluating code. * ess-eval-line-and-go: Evaluating code. * ess-eval-line-and-step <1>: Help. * ess-eval-line-and-step: Evaluating code. * ess-eval-map: Keybindings. * ess-eval-region <1>: Help. * ess-eval-region: Evaluating code. * ess-eval-region-and-go: Evaluating code. * ess-eval-visibly-p <1>: Variables controlling interaction. * ess-eval-visibly-p: Evaluating code. * ess-execute: Hot keys. * ess-execute-attach: Hot keys. * ess-execute-in-process-buffer <1>: Hot keys. * ess-execute-in-process-buffer: Variables controlling interaction. * ess-execute-in-tb: Evaluating code. * ess-execute-objects: Hot keys. * ess-execute-search: Hot keys. * ess-expression-offset: Indentation variables. * ess-fancy-comments: Indenting. * ess-function-template: Edit buffer. * ess-help-mode-hook: Hooks. * ess-help-mode-map: Keybindings. * ess-help-sec-keys-alist: Keybindings. * ess-indent-level: Indentation variables. * ess-insert-function-templates: Dump file variables. * ess-keep-dump-files <1>: Source Files. * ess-keep-dump-files: Dump file variables. * ess-list-object-completions: Completion. * ess-load-file <1>: Loading. * ess-load-file: Hot keys. * ess-mode-font-lock-keywords: Highlighting. * ess-mode-hook: Hooks. * ess-mode-load-hook: Hooks. * ess-mode-map: Keybindings. * ess-parse-errors <1>: Error Checking. * ess-parse-errors: Hot keys. * ess-post-run-hook: Hooks. * ess-pre-run-hook: Hooks. * ess-quit <1>: Help. * ess-quit: Other. * ess-remote: ESS processes on Remote Computers. * ess-request-a-process: Multiple ESS processes. * ess-restore-asm-extns: Editing assembly files. * ess-resynch: Completion details. * ess-search-list: Source Directories. * ess-send-input-hook: Hooks. * ess-skip-to-help-section: Help. * ess-skip-to-next-section: Help. * ess-skip-to-previous-section: Help. * ess-source-directory <1>: Dump file variables. * ess-source-directory: Source Directories. * ess-source-directory-generator: Dump file variables. * ess-style-alist: Indentation variables. * ess-submit-bug-report: Reporting Bugs. * ess-switch-to-end-of-ESS <1>: Other edit buffer commands. * ess-switch-to-end-of-ESS: Help. * ess-switch-to-ESS: Other edit buffer commands. * ess-tab-always-indent: Indentation variables. * ess-trans-font-lock-keywords: Highlighting. * ess-transcript-clean-region: Saving transcripts. * ess-transcript-copy-command: Resubmit. * ess-transcript-mode-hook: Hooks. * ess-transcript-mode-map: Keybindings. * ess-transcript-send-command: Resubmit. * ess-transcript-send-command-and-move: Transcript resubmit. * exit(): Hot keys. * expression(): Indentation variables. * inferior-ess-font-lock-keywords: Highlighting. * inferior-ess-mode-hook: Hooks. * inferior-ess-mode-map: Keybindings. * inferior-ess-primary-prompt: System dependent. * inferior-ess-program <1>: System dependent. * inferior-ess-program: Customizing startup. * inferior-ess-prompt: System dependent. * inferior-ess-send-input <1>: Command-line editing. * inferior-ess-send-input: Transcript resubmit. * inferior-Splus-args: System dependent. * objects(): Hot keys. * options(): System dependent. * printer(): printer. * q(): Hot keys. * S <1>: Starting up. * S: Variables for starting ESS. * S+elsewhere: ESS processes on Remote Computers. * S-directory: Variables for starting ESS. * S-plus: System dependent. * search() <1>: Completion. * search(): Hot keys. * source() <1>: Evaluating code. * source(): Loading. * STERM: Statistical Process running in ESS?. * X-displays-list: Variables for starting ESS.