We now discuss installation, which might happen under Unix or Microsoft Windows.  First, we discuss Unix installation. See Unix installation.

For Microsoft Windows Installation please skip to the see Microsoft Windows installation.

Unix installation
=================

 1. cd to a directory where you want to install ESS, creating it if necessary. This directory will be referred to below as ESSDIR.

 2. Retrieve the latest version from ESS downloads area (http://ess.r-project.org/downloads/ess) to ESSDIR.

 3. Decompress/unarchive the files from the disribution.

          gunzip ess-VERSION.tar.gz
          tar xvf ess-VERSION.tar

          (or: gunzip < ess-VERSION.tar.gz | tar xvf - ).
          (or using GNU tar:  tar zxvf ess-VERSION.tar.gz).

     The tar command will create the subdirectory ess-VERSION and unarchive the files there.

 4. Edit the file ESSDIR/ess-VERSION/lisp/ess-site.el as explained in the comments section of that file.

 5. Add the line

          (load "ESSDIR/ess-VERSION/lisp/ess-site")

     to your user or system installation file (GNU Emacs uses $HOME/.emacs and XEmacs uses $HOME/.xemacs/init.el for the user initialization file.  GNU Emacs uses default.el or site-init.el and XEmacs uses site-start.el for the system installation file).

     Alternatively, if ess-site.el is in your current Lisp path, you can do:

          (require 'ess-site)

     to configure emacs for ESS.

 6. That's it!  If you are installing just a local copy of ESS for yourself, ESS is now ready to be used.  (The remaining step below is for advanced installation.)  To edit statistical programs, load the files with the requiste extensions (".sas" for SAS, ".S" for S-PLUS, ".R" for R, and ".lsp" for XLispStat).  To start a statistical process within Emacs, such as R, type M-x R.

 7. (OPTIONAL) READ THIS ITEM THOROUGHLY BEFORE STARTING:

     If you want to place the compiled files in other locations edit the LISPDIR and INFODIR entries in Makeconf in the ESSDIR/ess-VERSION directory (if you are using XEmacs, then you also need to edit the EMACS entry as follows:  EMACS=xemacs).

     You can compile those files by:

          make all

     When that completes successfully, install the compiled files:

          make install

     This will install the compiled info files and lisp files.  If you are an XEmacs user, then you should be done.  If not, then you may have to edit/create the file dir that is found in the directory specified by INFODIR: see the sample dir in ESSDIR/ess-VERSION/doc/info. If dir does not exist in INFODIR, then the sample dir will be installed.

     Note: ESS can be installed for XEmacs as an XEmacs package much more easily than what has been described anywhere above.  However, the latest ESS version will not be available at the same time as an XEmacs package; generally, it can take weeks or months to appear in the latter format.  For more information on installing ESS as an XEmacs package see Quickstart Package Guide (http://www.xemacs.org/Documentation/packageGuide.html).

Microsoft Windows installation
==============================

For Microsoft Windows installation, please follow the next steps: (see separate instructions above for UNIX see Unix installation.

 1. cd to a directory where you keep emacs lisp files, or create a new directory (for example, c:\emacs\) to hold the distribution.  This directory will be referred to below as "the ESS distribution directory".  It will contain, at the end, either the tar file ess-VERSION.tar.gz or the zip file ess-VERSION.zip, and a directory for the ESS source, which will be termed "the ESS-VERSION source directory".

 2. Retrieve the compressed tar file ess-VERSION.tar.gz or the zipped file ess-VERSION.zip from one of the FTP or WWW archive sites via FTP (or HTTP).  Be aware that http browsers on Windows frequently change the "." and "-" characters in filenames to other punctuation.  Please change the names back to their original form.

 3. Copy ess-VERSION.tar.gz to the location where you want the ess-VERSION directory, for example to c:\emacs\ess-VERSION.tar.gz, and cd there.  For example,

          cd c:\emacs

     Extract the files from the distribution, which will unpack into a subdirectory, ess-VERSION.

          gunzip ess-VERSION.tar.gz
          tar xvf ess-VERSION.tar
          (or: gunzip < ess-VERSION.tar.gz | tar xvf - ).
          (or: from the zip file: unzip ess-VERSION.zip)

     The tar command will extract files into the current directory.

     Do not create ess-VERSION yourself, or you will get an extra level of depth to your directory structure.

 4. Windows users will usually be able to use the `lisp/ess-site.el' as distributed.  Only rarely will changes be needed.

 5. Windows users will need to make sure that the directories for the software they will be using is in the PATH environment variable.  On Windows 9x, add lines similar to the following to your c:\autoexec.bat file:

          path=%PATH%;c:\progra~1\spls2000\cmd

     On Windows NT/2000/XP, add the directories to the PATH using the My Computer/Control Panel/System/Advanced/Environment Variables menu. Note that the directory containing the program is added to the PATH, not the program itself.  One such line is needed for each software program.  Be sure to use the abbreviation progra~1 and not the long version with embedded blanks.  Use backslashes "\".

 6. Add the line

          (load "/PATH/ess-site")

     to your .emacs (or _emacs) file (or default.el or site-init.el, for a site-wide installation).  Replace /PATH above with the value of ess-lisp-directory as defined in ess-site.el.  Use forwardslashes /. (GNU Emacs uses the filename %HOME%/.emacs and XEmacs uses the filename %HOME%/.xemacs/init.el for the initialization file.)

 7. To edit statistical programs, load the files with the requisite extensions  (".sas" for SAS, ".S" or "s" or "q" or "Q" for S-PLUS, ".r" or ".R" for R, and ".lsp"   for XLispStat).

 8. To run statistical processes under emacs:

     To start the S-PLUS 6.x GUI from ESS under emacs:

          M-x S
          (or M-x S+6).

     You will then be asked for a pathname ("S starting data directory?"), from which to start the process.  The prompt will propose your current directory as the default.  ESS will start the S-PLUS GUI.  There will be slight delay during which emacs is temporarily frozen.  ESS will arrange for communication with the S-PLUS GUI using the DDE protocol. Send lines or regions from the emacs buffer containing your S program (for example, myfile.s) to the S-PLUS Commands Window with the C-c C-n or C-c C-r keys. (If you are still using S-PLUS 4.x or 2000, then use M-x S+4.)

     To start an S-PLUS 6.x session inside an emacs buffer---and without the S-PLUS GUI:

          M-x Sqpe
          (or M-x Sqpe+6).

     You will then be asked for a pathname ("S starting data directory?"), from which to start the process.  The prompt will propose your current directory as the default. You get Unix-like behavior, in particular the entire transcript is available for emacs-style search commands. Send lines or regions from the emacs buffer containing your S program (for example, myfile.s) to the *S+6* buffer with the C-c C-n or C-c C-r keys. Interactive graphics are available with Sqpe by using the java library supplied with S-PLUS 6.1 and newer releases. Enter the commands:

          library(winjava)
          java.graph()

     Graphs can be saved from the java.graph device in several formats, but not PostScript.   If you need a PostScript file you will need to open a separate postscript device. (If you are still using S-PLUS 4.x or 2000, then use M-x Sqpe+4.)

     To connect to an already running S-PLUS GUI (started, for example, from the S-PLUS icon):

          M-x S+6-existing

     You will then be asked for a pathname ("S starting data directory?"), from which to start the process.  The prompt will propose your current directory as the default.  ESS will arrange for communication with the already running S-PLUS GUI using the DDE protocol. Send lines or regions from the emacs buffer containing your S program (for example, myfile.s) to the S-PLUS Commands Window with the C-c C-n or C-c C-r keys. (If you are still using S-PLUS 4.x or 2000, then use M-x S+4-existing.)

     If you wish to run R, you can start it with:

          M-x R

     XLispStat can not currently be run with

          M-x XLS

     Hopefully, this will change.  However, you can still edit with emacs, and cut and paste the results into the XLispStat *Listener* Window under Microsoft Windows.

 9. That's it!