User manual
Chapter 1: Introduction to ESS 3
• Command-line completion of both object and file names for quick entry. This is similar
to tcsh’s facility for filenames; here it also applies to object names and list components.
See Chapter 9 [Completion], page 46.
• Hot-keys for quick entry of commonly-used commands in ‘S’ such as objects() and
search(). See Section 4.5 [Hot keys], page 30.
• Transcript recording for a complete record of all the actions in an S session. See
Section 4.2 [Transcript], page 25.
• Interface to the help system, with a specialized mode for viewing S help files. See
Chapter 8 [Help], page 44.
If you commonly create or modify S functions, you will have found the standard facilities
for this (the ‘fix()’ function, for example) severely limiting. Using S’s standard features,
one can only edit one function at a time, and you can’t continue to use S while editing.
ESS corrects these problems by introducing the following features:
• Object editing. ESS allows you to edit more than one function simultaneously in
dedicated Emacs buffers. The ESS process may continue to be used while functions
are being edited. See Section 7.1 [Edit buffer], page 37.
• A specialized editing mode for S code, which provides syntactic indentation and high-
lighting. See Section 7.4 [Indenting], page 38.
• Facilities for loading and error-checking source files, including a keystroke to jump
straight to the position of an error in a source file. See Section 7.3 [Error Checking],
page 38.
• Source code revision maintenance, which allows you to keep historic versions of S source
files. See Section 7.6 [Source Files], page 40.
• Facilities for evaluating S code such as portions of source files, or line-by-line evaluation
of files (useful for debugging). See Chapter 5 [Evaluating code], page 34.
Finally, ESS provides features for re-submitting commands from saved transcript files,
including:
• Evaluation of previously entered commands, stripping away unnecessary prompts. See
Section 4.2.3 [Transcript resubmit], page 26.
1.2 New features in ESS
Changes and New Features in 15.03-1:
• ESS[R]: An indentation bug has been fixed (github issue 163)
• ESS[R]: On windows, if ‘ess-prefer-higher-bit’ is non-nil (the default), then R-newest
will try to run a 64 bit (rather than 32 bit) version of R.
Changes and New Features in 15.03:
• ESS[R]: Full native support for ‘company-mode‘.
• ESS[R]: More efficient caching algorithm for R completion.
• ESS: New offset variable ‘ess-close-paren-offset‘ to control the indentation of the closing
parentheses.
• ESS[R]: Ask for CRAN mirror only once per emacs session.










