*** empty log message ***
[ess.git] / README
blob03e27b58869197aafb5b6b5643ed93400a5adc64
1 1 General Information: README
2 *****************************
4 This is the README file for the distribution of ESS version
6    5.2.7
8    The first release of the 5.2 series.  ESS is a GNU Emacs and XEmacs
9 mode for interactive statistical programming and data analysis.
10 Languages supported: the S family (S 3/4, S-PLUS 3/4/5/6/7, and R),
11 SAS, XLispStat, Stata and BUGS.  Installation help can be found in
12 sections for both Unix and Windows.  ESS grew out of the desire for bug
13 fixes and extensions to S-mode and SAS-mode as well as a consistent
14 union of their features in one package.
16    The current development team is led by Martin Maechler since August
17 2004. Former project leader A.J. (Tony) Rossini
18 (<rossini@blindglobe.net>) did the initial port to XEmacs and has been
19 the primary coder.  Martin Maechler (<maechler@stat.math.ethz.ch>) and
20 Kurt Hornik (<Kurt.Hornik@R-project.org>) have assisted with S-PLUS,
21 S4, R, and XLispStat.  Stephen Eglen (<stephen@gnu.org>) has worked
22 mostly on R support.  Richard M. Heiberger (<rmh@temple.edu>) has
23 assisted with S-PLUS and S4 development for Windows.  Richard and
24 Rodney A. Sparapani (<rsparapa@mcw.edu>) have done much of the work
25 implementing interactive SAS (iESS[SAS]) and batch SAS (ESS[SAS])
26 support.
28    We are grateful to the previous developers of S-mode (Doug Bates, Ed
29 Kademan, Frank Ritter, David M. Smith), SAS-mode (Tom Cook) and
30 Stata-mode (Thomas Lumley).
32 1.1 License
33 ===========
35 ESS is free software; you can redistribute it and/or modify it under
36 the terms of the GNU General Public License as published by the Free
37 Software Foundation; either version 2, or (at your option) any later
38 version.
40    ESS is distributed in the hope that it will be useful, but WITHOUT
41 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
42 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
43 in the file COPYING in the same directory as this file for more details.
45 1.2 New Features
46 ================
48 Changes/New Features in 5.2.6:
49    * Removed non-ASCII characters in a few files.
51    * ESS[R]: now works better when UTF-8 locale is active; in
52      particular, you get correct directional quotes in R's startup
53      message  for R-devel (unstable development version of R 2.1.0)
54      when using  environment variables LANGUAGE=en@quot
55      LC_ALL=en_US.UTF-8
57    * ESS[SAS]: toggling of .log mode improved (`F10'); toggling of .lst
58      mode now also available (`C-F10'); killing all buffers associated
59      with .sas program no longer bound to `C-F10' since its a bit
60      overzealous; EXPERIMENTAL new feature:  if your .log grows to more
61      than 2.5MB, just the first 2.5MB are refreshed; this is helpful
62      when your .sas program generates lots of error messages and gets
63      too big for emacs to display; the truncation size is controlled by
64      the variable ess-sas-log-max and defaults to 2500000.
66    * S-Plus 7 for Windows is now recognized.
68    * ESS[S] (incl. R): in auto-fill mode, strings are not wrapped
69      anymore.
71    * ESS[S] (incl. R): font-lock now correctly differs between R and S,
72      e.g., for "_"; both now fontify warning(.) and S does terminate()
73      additionally.
75    * Support for `bell' aka `beep' aka `ding' aka `alarm' in all
76      inferior modes: When \a is output "to the the console" at the
77      beginning of a line, the bell is rung.
79    Changes/New Features in 5.2.5:
80    * ESS[R]: `C-c C-q' or `Quit S' from the menu now should work (again
81      and less klunkily) and do not append `-exited' to the buffer name.
82      Further, the behavior of `(ess-cleanup)', called from ess-quit,
83      now depends on the new customizable variable
84      `ess-S-quit-kill-buffers-p' which defaults to `nil'.
85      Consequently, the question _"Delete all buffers associated with
86      ..?"_ will not be asked anymore by default.
88    * ESS[SAS] - ess-ebcdic-to-ascii-search-and-replace will now work
89      with the `recode' application as well which is available on many
90      platforms
92    * ESS[S] (incl. R): Name completion for slots of S4 objects now
93      works!
95    Changes/New Features in 5.2.4:
96    * The documentation now includes an overview of how to use the emacs
97      TAGS facility for S functions.  (The distribution also used to
98      contain a directory `etc/other/Tags' where a ~1990 version of
99      `etags.c' was distributed; this is no longer relevant and so has
100      been deleted.)
102    * ESS[SAS] - When you are working with EBCDIC files on an ASCII
103      platform, .log NOTEs may display as gibberish since the EBCDIC
104      characters are not converted to ASCII prior to their display.  So,
105      the function ess-ebcdic-to-ascii-search-and-replace is provided for
106      convenience and is bound to `C-F11'.  This function requires the
107      `dd' command (only available on unix or unix-like platforms).
109    * ESS: Completion of object names is now always done dynamically
110      rather than allowing the option of using a pre-computed database
111      (by `ess-create-object-name-db') since modern computers seem fast
112      enough for dynamic completion.  (We expect few users, if any, have
113      been using the pre-computed database method.)
115    * ESS: object completion in iESS buffers running on Windows was very
116      slow (for GNU Emacs, but not XEmacs) and has now been fixed.
117      Further, it was more or less broken for all versions of S-plus 6.x,
118      and has been fixed to work everywhere but with the Windows' GUI of
119      S-plus.  The list of objects now shows unique names also when an
120      object appears more than once in the search path.
122    * ESS[R]: Completion of object names now also includes those
123      starting with ".".
125    Changes/New Features in 5.2.3:
126    * ESS: When new inferior ESS processes are created, by default they
127      will replace the current buffer (this restores behavior from pre
128      5.2.0). If you wish new ESS processes to start in another window
129      of the current frame, set inferior-ess-same-window to nil.
131    * New variables inferior-Splus-args and inferior-R-args provide a
132      way to pass command line arguments to starting S and R processes.
134    Changes/New Features in 5.2.2:
135    * bug-fixes for 5.2.1 (require 'executable), html docs, etc.
137    * ess-lisp-directory/../doc/info added to Info-directory-list if
138      ess-info not found by info
140    * ESS[R]: If you have other versions of R on your exec-path, such as
141      "R-1.8.1" with Unix or "rw1081" with Windows, ESS will find them
142      and create appropriate functions, such as M-x R-1.8.1 or M-x
143      rw1081, for calling them.  By default only Unix programs beginning
144      "R-1" and "R-2" and Windows programs parallel to the version of R
145      in your exec-path will be found, but see ess-r-versions and
146      ess-rterm-versions for ways to find other versions of R.
148    * ESS[R]: Other versions of R, such as "R-1.8.1" on Unix and
149      "rw1081" on Windows, are added to the "ESS / Start Process /
150      Other" menu.
152    * ESS[S]: If you have other versions of S-Plus on your Windows
153      computer, such as S-Plus 6.1 or S-Plus 4.5, ESS will find them and
154      create appropriate functions, such as M-x splus61, for calling the
155      console version (Sqpe) inside an emacs buffer.  By default only
156      programs installed in the default location will be found, but see
157      ess-SHOME-versions for ways to find other versions of S-Plus.
159    * ESS[S]: Other versions of Sqpe on Windows, such as "splus61", are
160      added to the "ESS / Start Process / Other" menu.
162    * ESS[R]: (bug fix) ess-quit (bound to C-c C-q) should now quit the
163      inferior R process, when issued from either the inferior buffer,
164      or from a .R buffer.
166    Changes/New Features in 5.2.1:
167    * ESS[S] (R and S-plus): now have toolbar support with icons to
168      evaluate code in the inferior process or to switch there.  This
169      code is experimental and likely to change as XEmacs/Emacs issues
170      get resolved. The toolbar should be enabled if your Emacs displays
171      images, but can be disabled with the variable ess-use-toolbar.
172      Thanks to David Smith from Insightful for the S-plus logo.
174    * ESS[SAS]: ess-sas-graph-view (F12) enhanced; you can specify
175      external file viewers for each graphics file type via the alist
176      ess-sas-graph-view-viewer-alist; also .jpg/.gif are now handled by
177      image-mode on XEmacs, if available, otherwise by graphics
178      primitives as before
180    Changes/New Features in 5.2.0:
181    * ESS[BUGS]:  new info documentation!  now supports interactive
182      processing thanks to Aki Vehtari (mailto:Aki.Vehtari@hut.fi); new
183      architecture-independent unix support as well as support for BUGS
184      v. 0.5
186    * ESS[SAS]:  convert .log to .sas with ess-sas-transcript; info
187      documentation improved; Local Variable bug fixes; SAS/IML
188      statements/functions now highlighted; files edited remotely by
189      ange-ftp/EFS/tramp are recognized and pressing SUBMIT opens a
190      buffer on the remote host via the local variable
191      ess-sas-shell-buffer-remote-init which defaults to "ssh"; changed
192      the definition of the variable ess-sas-edit-keys-toggle to boolean
193      rather than 0/1; added the function ess-electric-run-semicolon
194      which automatically reverse indents lines containing only "run;";
195      C-F1 creates MS RTF portrait from the current buffer; C-F2 creates
196      MS RTF landscape from the current buffer; C-F9 opens a SAS DATASET
197      with PROC INSIGHT rather than PROC FSVIEW; "inferior" aliases for
198      SAS batch:  C-c C-r for submit region, C-c C-b for submit buffer,
199      C-c C-x for goto .log; C-c C-y for goto .lst
201    * ESS[S]: Pressing underscore ("_") once inserts " <- " (as before);
202      pressing underscore twice inserts a literal underscore.  To stop
203      this smart behaviour, add "(ess-smart-underscore nil)" to your
204      .emacs after ess-site has been loaded;
205      ess-dump-filename-template-proto (new name!) now can be customized
206      successfully (for S language dialects); Support for Imenu has been
207      improved; set ess-imenu-use-S to non-nil to get an "Imenu-S" item
208      on your menubar; ess-help: Now using nice underlines (instead of
209      `nuke-* ^H_')
211    * ESS[R]:  After (require 'essa-r), M-x ess-r-var allows to load
212      numbers from any Emacs buffer into an existing *R* process; M-x
213      ess-rdired gives a "directory editor" of R objects; fixed
214      ess-retr-lastvalue-command, i.e. .Last.value bug (thanks to David
215      Brahm)
217    * ESS: Support for creating new window frames has been added to ESS.
218      Inferior ESS processes can be created in dedicated frames by
219      setting inferior-ess-own-frame to t.  ESS help buffers can also
220      open in new frames; see the documentation for ess-help-own-frame
221      for details.  (Thanks to Kevin Rodgers for contributing code.)
223    Changes/New Features in 5.1.24:
224    * The version number is now correct even inside ESS/Emacs
226    Changes/New Features in 5.1.23:
227    * Minor more Makefile clean up.
229    Changes/New Features in 5.1.22:
230    * Besides info documentation, PDF and HTML documentation are also
231      provided (instead of built using "make") and available on the web
232      as well; see ESS web page (http://ess.r-project.org/) and StatLib
233      (http://lib.stat.cmu.edu/general/ESS/doc)
235    * Now that info documentation is available, the README.* files are
236      no longer supported.  However, they are still distributed for what
237      it's worth.
239    * ESS is now an XEmacs package!  See XEmacs Installation HOWTO
240      (http://www.xemacs.org/Install/index.html) for details
241      (specifically, items 10-15).
243    * ESS[SAS]: more user-friendly enhancements for remote SAS batch
244      jobs with Kermit file transfers (LOG and OUTPUT function key
245      features now supported).  Multiple shells now supported so you can
246      run SAS on different computers from different buffers by setting
247      the buffer-local variable ess-sas-shell-buffer to unique buffer
248      names.
250    * Major re-vamping of Makefile/Makeconf.
252    Changes/New Features in 5.1.21:
253    * ESS[SAS]: info documentation now available!, see ESS->Help for
254      SAS; F12 opens GSASFILE nearest point for viewing either within
255      emacs, when available, or via an external viewer; more syntax
256      highlighting keywords; more enhancements for remote SAS batch jobs
257      with Kermit; new framework for remote SAS interactive jobs, see
258      ess-remote
260    * ESS[S]: info documentation now available!, see ESS->Help for the S
261      family
263    * Makefile: tag now independent of rel; info files made by
264      doc/Makefile and installed in new info sub-directory
266    Changes/New Features in 5.1.20:
267    * New `options()$STERM' in the S dialects (S, S-Plus, R).  The S
268      program can determine the environment in which it is currently
269      running.  ESS sets the option to `iESS' or `ddeESS' when it starts
270      an S language process.  We recommend other specific values for S
271      language processes that ESS does not start.
273    * New `ess-mouse-me' function, assigned to S-mouse-3 by default.
274      User may click on a word or region and then choose from the menu
275      to display the item, or a summary, or a plot, etc.  This feature
276      is still under development.
278    * GNU Emacs 21.1 is now supported (fixed for S dialects, SAS & BUGS),
279      (some from Stephen Eglen).
281    * XEmacs 21.x is now supported (fixed w32-using-nt bug)
283    * XEmacs on Win (NT) is better supported.
285    * Workaround for bug in Sqpe+6 (S-PLUS 6 for Win).
287    * should now work even when imenu is not available (for old
288      XEmacsen).
290    * ESS[SAS]: XEmacs-Imenu fix; C-TAB is globalized along with your
291      function-key definitions, if specified; you can specify your SAS
292      library definitions outside of autoexec.sas for ess-sas-data-view
293      with SAS code placed in the variable ess-sas-data-view-libname,
294      also the dataset name is defaulted to the nearest permanent dataset
295      to point; Speedbar support now works for permanent datasets, please
296      ignore first./last.; new font-locking is now the default with more
297      improvements for font-locking PROCs, macro statements, * ; and %* ;
298      comments; you can toggle sas-log-mode with F10 which will font-lock
299      your .log (if it isn't too big); submit remote .sas files accessed
300      with ange-ftp, EFS or Tramp (Kermit is experimental) by setting
301      ess-sas-submit-method to 'sh; ess-sas-submit-command and
302      ess-sas-submit-command-options are buffer-local so you can have
303      local file variable sections at the end of your .sas files to
304      request different executables or specify special options and the
305      local file variables are re-read at submit instead of only at file
306      open so that if you make a change it is picked up immediately;
308    * ESS[BUGS]: font-lock with `in' fixed.
310    * for STATA: font-lock bug fixed.
312    * for Rd mode: C-c C-v and `switch-process' in menu.  further, C-c
313      C-f prefix (Rd-font) for inserting or surrounding a word by things
314      such as \code{.}, \code{\link{.}}, \emph{.} etc.
316    * new functions (ess-directory-function) and (ess-narrow-to-defun)
317      ess-directory <-> default-directory logic (Jeff Mincy).
319    * Re-organized Makefile and fixed a few bugs.
321    Changes/New Features in 5.1.19:
322    * S+6 now supported (Tony Rossini (Unix) and Rich Heiberger
323      (Windows))
325    * New BUGS support through ESS[BUGS] mode (Rodney Sparapani)
326      Templates assist you in writing .bug and .cmd code (.cmd and .log
327      are replaced by .bmd and .bog to avoid emacs extension collisions).
328      Substitution" parameters facilitate "automagic" generation of
329      data...in" and "init...in" filenames, "const N=" from your data
330      file and "monitor()/stats()" commands.  Activated by pressing F12.
332    * Fixes for `ess-smart-underscore' SAS breakage (Rich Heiberger)
334    * You can change between PC and Unix, local and global SAS
335      function-key definitions interactively (Rich Heiberger)
337    * C-Submit a highlighted region to SAS batch (Rodney Sparapani)
339    * New and improved SAS syntax highlighting (Rodney Sparapani) To get
340      the new functionality, set ess-sas-run-make-regexp to nil.  Also
341      available in .log files via F10.
343    * Open a permanent SAS dataset for viewing via F9 (Rodney Sparapani)
344      You must have the library defined in autoexec.sas for it to work.
346    * User-friendly defaults for `sas-program',
347      `ess-sas-batch-pre-command' and `ess-sas-batch-post-command' as
348      well Customize support for these and other ESS[SAS] variables
349      (Rodney Sparapani)
351    * `ess-sas-suffix-2' now defaults to .dat via F11 (Rodney Sparapani)
353    * Emacs/XEmacs, Unix/Windows issues collectively handled in
354      ess-emcs.el
356    * defadvice solves problem of missing *ESS* (thanks to Jeff Mincy)
358    * Improved manual a bit by including things that were only in
359      `README'.
361    Changes/New Features in 5.1.18:
362    * New `ess-smart-underscore' function, now assigned to "_" by
363      default.  Inserts `ess-S-assign' (customizable " <- "), unless
364      inside string and comments where plain "_" is used instead. (MM)
366    * Fixes for longstanding interactive SAS breakage (RMH)
368    Changes/New Features in 5.1.17:
369    * Documentation for Windows Installation (Rich Heiberger)
371    * removal of ess-vars, finalization of customize support (in the
372      sense that there is no more use of ess-vars, but that we need to
373      fix ess-cust) (AJ Rossini)
375    * Many small (and large) fixes/contributions (MMaechler)
377    * addition of the "S-equal" variable and provide M-x ess-add-MM-keys
378      a way to remap "_" to `ess-S-assign', typically " <- ", but
379      customizable. (MMaechler)
381    Changes/New Features in 5.1.16:
382    * BUG FIXES
384    * Better SAS support
386    Changes/New Features in 5.1.15:
387    * BUG FIXES
389    Changes/New Features in 5.1.14:
390    * Yet more fixes to SAS mode, (Rich Heiberger and Rodney Sparapani)
392    * Customize support (for most Emacsen which support it) (AJRossini)
394    * ARC and ViSta support out of the box, and fixes for XLispStat
395      (AJRossini)
397    Changes/New Features in 5.1.13:
398    * Version numbering finally all depending on the ./VERSION file,
399      thanks to Martin Maechler.
401    * Yet more fixes to SAS mode, thanks to Rich Heiberger.
403    Changes/New Features in 5.1.12:
404    * Splus 5.1 stabilized, thanks to Martin Maechler, Bill Venables,
405      Chuck Taylor, and others.
407    * More fixes to SAS mode, thanks to Rodney Sparapani and Rich
408      Heiberger.
410    Changes/New Features in 5.1.11:
411    * More fixes to Stata mode, thanks to Brendan Halpin
412      (mailto:brendan@essex.ac.uk).
414    * fixed bugs in ESS-elsewhere, thanks to many testers
416    * README.SPLUS4WIN has DETAILED instructions for S-PLUS 2000, thanks
417      to David Brahm (mailto:brahm@alum.mit.edu).
419    * Fixes to SAS mode, thanks to Rodney Sparapani
421    Changes/New Features in 5.1.10:
422    * More fixes to Stata mode
424    * primitive generic version of ESS-elsewhere
426    * Small fixes to SAS/Stata.
428    Changes/New Features in 5.1.9:
429    * Stata mode works
431    * Literate Data Analysis using Noweb works
433    Changes/New Features in 5.1.8:
434    * Bug fixes
436    * R documentation mode defaults changed
438    Changes/New Features in 5.1.2:
439    * able to use inferior iESS mode to communicate directly with a
440      running S-Plus 4.x process using the Microsoft DDE protocol.  We
441      use the familiar (from Unix ESS) C-c C-n and related key sequences
442      to send lines from the S-mode file to the inferior S process.  We
443      continue to edit S input files in ESS[S] mode and transcripts of
444      previous S sessions in ESS Transcript mode.  All three modes know
445      the S language, syntax, and indentation patterns and provide the
446      syntactic highlighting that eases the programming tasks.
448 1.3 Current Features
449 ====================
451    * Languages Supported:
452         * S family (S 3/4, S-PLUS 3.x/4.x/5.x/6.x/7.x, and R)
454         * SAS
456         * BUGS
458         * Stata
460         * XLispStat including Arc and ViSta
462    * Editing source code (S family, SAS, BUGS, XLispStat)
463         * Syntactic indentation and highlighting of source code
465         * Partial evaluation of code
467         * Loading and error-checking of code
469         * Source code revision maintenance
471         * Batch execution (SAS, BUGS)
473         * Use of imenu to provide links to appropriate functions
475    * Interacting with the process (S family, SAS, XLispStat)
476         * Command-line editing
478         * Searchable Command history
480         * Command-line completion of S family object names and file
481           names
483         * Quick access to object lists and search lists
485         * Transcript recording
487         * Interface to the help system
489    * Transcript manipulation (S family, XLispStat)
490         * Recording and saving transcript files
492         * Manipulating and editing saved transcripts
494         * Re-evaluating commands from transcript files
496    * Help File Editing (R)
497         * Syntactic indentation and highlighting of source code.
499         * Sending Examples to running ESS process.
501         * Previewing
503 1.4 Stability
504 =============
506 Versions 5.2.x are meant to be release-quality versions.  While some
507 new features are being introduced, we are cleaning up and improving the
508 interface.  We know about some remaining documentation inconsistencies.
509 Patches or suggested fixes with bug reports are much appreciated!
511 1.5 Requirements
512 ================
514 ESS has been tested with
516    * S-PLUS 3.3-4, 4.5, 2000, 5.0-1, 6.0-2, 7.0
518    * R >=0.49
520    * S4
522    * SAS >=6.12
524    * BUGS 0.5, 0.603
526    * Stata >=6.0
528    * XLispStat >=3.50
530    on the following platforms
532    * Linux (all)
534    * Solaris/SunOS (all)
536    * Microsoft Windows 95/98/NT/2000/XP (SPLUS 4.5/2000/6.*, R, SAS and
537      BUGS)
539    * Apple Mac OS (SAS for OS 9 and R for OS X)
541    with the following versions of emacs
543    * GNU Emacs 20.3-7, 21.1, 21.3, 21.4
545    * XEmacs 21.0, 21.1.13-14, 21.4.0-8, 21.4.9-13(1), 21.4.14-15,
546      21.4.17, 21.5.18
548    ---------- Footnotes ----------
550    (1) require the files.el patch to revert-buffer for the Local
551 Variables updating problem
553 1.6 Getting the Latest Version
554 ==============================
556 The latest released version of ESS is always available on the web at:
557 ESS web page (http://ess.r-project.org) or StatLib
558 (http://lib.stat.cmu.edu/general/ESS/)
560    The latest development version of ESS is available via
561 `https://svn.R-project.org/ESS/', the ESS Subversion repository.  If
562 you have a Subversion client (see `http://subversion.tigris.org/'), you
563 can download the sources using:
564      % svn checkout https://svn.r-project.org/ESS/trunk PATH
565    which will put the ESS files into directory PATH.  Later, within
566 that directory, `svn update' will bring that directory up to date.
567 Windows-based tools such as TortoiseSVN are also available for
568 downloading the files.  Alternatively, you can browse the sources with a
569 web browser at: ESS SVN site (https://svn.r-project.org/ESS/trunk).
570 However, please use a subversion client instead to minimize the load
571 when retrieving.
573    If you remove other versions of ESS from your emacs load-path, you
574 can then use the development version by adding the following to .emacs:
576      (load "/path/to/ess-svn/lisp/ess-site.el")
578    Note that https is required, and that the SSL certificate for the
579 Subversion server of the R project is
581      Certificate information:
582       - Hostname: svn.r-project.org
583       - Valid: from Jul 16 08:10:01 2004 GMT until Jul 14 08:10:01 2014 GMT
584       - Issuer: Department of Mathematics, ETH Zurich, Zurich, Switzerland, CH
585       - Fingerprint: c9:5d:eb:f9:f2:56:d1:04:ba:44:61:f8:64:6b:d9:33:3f:93:6e:ad
587 (currently, there is no "trusted certificate").  You can accept this
588 certificate permanently and will not be asked about it anymore.
590 1.7 Installation (from tar file)
591 ================================
593 We now discuss installation, which might happen under Unix or Microsoft
594 Windows.  First, we discuss Unix installation.  *Note Unix
595 installation::.
597    For Microsoft Windows Installation please skip to the *Note
598 Microsoft Windows installation::.
600 1.8 Unix installation
601 =====================
603   1. cd to a directory where you want to install ESS, creating it if
604      necessary.  This directory will be referred to below as ESSDIR.
606   2. Retrieve the latest version from ESS downloads area
607      (http://ess.r-project.org/downloads/ess) to ESSDIR.
609   3. Decompress/unarchive the files from the disribution.
610           gunzip ess-VERSION.tar.gz
611           tar xvf ess-VERSION.tar
613           (or: `gunzip < ess-VERSION.tar.gz | tar xvf -' ).
614           (or using GNU tar:  `tar zxvf ess-VERSION.tar.gz').
616      The `tar' command will create the subdirectory ess-VERSION and
617      unarchive the files there.
619   4. Edit the file `ESSDIR/ess-VERSION/lisp/ess-site.el' as explained
620      in the comments section of that file.
622   5.  Add the line
623           (load "ESSDIR/ess-VERSION/lisp/ess-site")
624      to your user or system installation file (GNU Emacs uses
625      `$HOME/.emacs' and XEmacs uses `$HOME/.xemacs/init.el' for the
626      user initialization file.  GNU Emacs uses default.el or
627      site-init.el and XEmacs uses site-start.el for the system
628      installation file).
630      Alternatively, if ess-site.el is in your current Lisp path, you
631      can do:
632           (require 'ess-site)
633      to configure emacs for ESS.
635   6. That's it!  If you are installing just a local copy of ESS for
636      yourself, ESS is now ready to be used.  (The remaining step below
637      is for advanced installation.)  To edit statistical programs, load
638      the files with the requiste extensions (".sas" for SAS, ".S" for
639      S-PLUS, ".R" for R, and ".lsp" for XLispStat).  To start a
640      statistical process within Emacs, such as R, type `M-x R'.
642   7. (OPTIONAL) READ THIS ITEM THOROUGHLY BEFORE STARTING:
644      If you want to place the compiled files in other locations edit
645      the LISPDIR and INFODIR entries in `Makeconf' in the
646      ESSDIR/ess-VERSION directory (if you are using XEmacs, then you
647      also need to edit the EMACS entry as follows:  EMACS=xemacs).
649      You can compile those files by:
650           make all
652      When that completes successfully, install the compiled files:
653           make install
655      This will install the compiled info files and lisp files.  If you
656      are an XEmacs user, then you should be done.  If not, then you may
657      have to edit/create the file `dir' that is found in the directory
658      specified by `INFODIR': see the sample `dir' in
659      ESSDIR/ess-VERSION/doc/info.  If `dir' does not exist in
660      `INFODIR', then the sample `dir' will be installed.
662      _Note:_ ESS can be installed for XEmacs as an XEmacs package much
663      more easily than what has been described anywhere above.  However,
664      the latest ESS version will not be available at the same time as an
665      XEmacs package; generally, it can take weeks or months to appear
666      in the latter format.  For more information on installing ESS as
667      an XEmacs package see Quickstart Package Guide
668      (http://www.xemacs.org/Documentation/packageGuide.html).
671 1.9 Microsoft Windows installation
672 ==================================
674 For Microsoft Windows installation, please follow the next steps: (see
675 separate instructions above for UNIX *Note Unix installation::.
677   1. cd to a directory where you keep emacs lisp files, or create a new
678      directory (for example, `c:\emacs\') to hold the distribution.
679      This directory will be referred to below as "the ESS distribution
680      directory".  It will contain, at the end, either the tar file
681      `ess-VERSION.tar.gz' or the zip file `ess-VERSION.zip', and a
682      directory for the ESS source, which will be termed "the
683      ESS-VERSION source directory".
685   2. Retrieve the compressed tar file `ess-VERSION.tar.gz' or the
686      zipped file `ess-VERSION.zip' from one of the FTP or WWW archive
687      sites via FTP (or HTTP).  Be aware that http browsers on Windows
688      frequently change the "." and "-" characters in filenames to other
689      punctuation.  Please change the names back to their original form.
691   3. Copy `ess-VERSION.tar.gz' to the location where you want the
692      ess-VERSION directory, for example to
693      `c:\emacs\ess-VERSION.tar.gz', and cd there.  For example,
695           cd c:\emacs
697      Extract the files from the distribution, which will unpack into a
698      subdirectory, `ess-VERSION'.
699           gunzip ess-VERSION.tar.gz
700           tar xvf ess-VERSION.tar
701           (or: `gunzip < ess-VERSION.tar.gz | tar xvf -' ).
702           (or: from the zip file: `unzip ess-VERSION.zip')
704      The `tar' command will extract files into the current directory.
706      Do not create `ess-VERSION' yourself, or you will get an extra
707      level of depth to your directory structure.
709   4. Windows users will usually be able to use the `lisp/ess-site.el'
710      as distributed.  Only rarely will changes be needed.
712   5. Windows users will need to make sure that the directories for the
713      software they will be using is in the PATH environment variable.
714      On Windows 9x, add lines similar to the following to your
715      `c:\autoexec.bat' file:
716           path=%PATH%;c:\progra~1\spls2000\cmd
717      On Windows NT/2000/XP, add the directories to the PATH using the
718      `My Computer/Control Panel/System/Advanced/Environment Variables'
719      menu.  Note that the directory containing the program is added to
720      the PATH, not the program itself.  One such line is needed for
721      each software program.  Be sure to use the abbreviation `progra~1'
722      and not the long version with embedded blanks.  Use backslashes
723      "\".
725   6. Add the line
726           (load "/PATH/ess-site")
727      to your .emacs (or _emacs) file (or default.el or site-init.el, for
728      a site-wide installation).  Replace `/PATH' above with the value
729      of ess-lisp-directory as defined in `ess-site.el'.  Use
730      forwardslashes `/'.  (GNU Emacs uses the filename `%HOME%/.emacs'
731      and XEmacs uses the filename `%HOME%/.xemacs/init.el' for the
732      initialization file.)
734   7. To edit statistical programs, load the files with the requisite
735      extensions  (".sas" for SAS, ".S" or "s" or "q" or "Q" for S-PLUS,
736      ".r" or ".R" for R, and ".lsp"   for XLispStat).
738   8. To run statistical processes under emacs:
740      To start the S-PLUS [67].x GUI from ESS under emacs:
741           M-x S
742           (or `M-x S+6').
743      You will then be asked for a pathname ("S starting data
744      directory?"), from which to start the process.  The prompt will
745      propose your current directory as the default.  ESS will start the
746      S-PLUS GUI.  There will be slight delay during which emacs is
747      temporarily frozen.  ESS will arrange for communication with the
748      S-PLUS GUI using the DDE protocol.  Send lines or regions from the
749      emacs buffer containing your S program (for example, `myfile.s')
750      to the S-PLUS Commands Window with the `C-c C-n' or `C-c C-r' keys.
751      (If you are still using S-PLUS 4.x or 2000, then use `M-x S+4'.)
753      To start an S-PLUS [67].x session inside an emacs buffer--and
754      without the S-PLUS GUI:
755           M-x Sqpe
756           (or `M-x Sqpe+6').
757      You will then be asked for a pathname ("S starting data
758      directory?"), from which to start the process.  The prompt will
759      propose your current directory as the default.  You get Unix-like
760      behavior, in particular the entire transcript is available for
761      emacs-style search commands.  Send lines or regions from the emacs
762      buffer containing your S program (for example, `myfile.s') to the
763      *S+6* buffer with the `C-c C-n' or `C-c C-r' keys.  Interactive
764      graphics are available with Sqpe by using the java library
765      supplied with S-PLUS 6.1 and newer releases.  Enter the commands:
766           library(winjava)
767           java.graph()
768      Graphs can be saved from the `java.graph' device in several
769      formats, but not PostScript.   If you need a PostScript file you
770      will need to open a separate `postscript' device.  (If you are
771      still using S-PLUS 4.x or 2000, then use `M-x Sqpe+4'.)
773      To connect to an already running S-PLUS GUI (started, for example,
774      from the S-PLUS icon):
775           M-x S+6-existing
776      You will then be asked for a pathname ("S starting data
777      directory?"), from which to start the process.  The prompt will
778      propose your current directory as the default.  ESS will arrange
779      for communication with the already running S-PLUS GUI using the
780      DDE protocol.  Send lines or regions from the emacs buffer
781      containing your S program (for example, `myfile.s') to the S-PLUS
782      Commands Window with the `C-c C-n' or `C-c C-r' keys.  (If you are
783      still using S-PLUS 4.x or 2000, then use `M-x S+4-existing'.)
785      If you wish to run R, you can start it with:
786           M-x R
788      XLispStat can not currently be run with
789           M-x XLS
790      Hopefully, this will change.  However, you can still edit with
791      emacs, and cut and paste the results into the XLispStat *Listener*
792      Window under Microsoft Windows.
794   9. That's it!
797 1.10 Reporting Bugs
798 ===================
800 Please send bug reports, suggestions etc. to
802    <ESS-bugs@stat.math.ethz.ch>
804    The easiest way to do this is within Emacs by typing
806    `M-x ess-submit-bug-report'
808    This also gives the maintainers valuable information about your
809 installation which may help us to identify or even fix the bug.
811    If Emacs reports an error, backtraces can help us debug the problem.
812 Type "M-x set-variable RET debug-on-error RET t RET".  Then run the
813 command that causes the error and you should see a *Backtrace* buffer
814 containing debug information; send us that buffer.
816    Note that comments, suggestions, words of praise and large cash
817 donations are also more than welcome.
819 1.11 Mailing Lists
820 ==================
822 There is a mailing list for discussions and announcements relating to
823 ESS.  Join the list by sending an e-mail with "subscribe ess-help" (or
824 "help") in the body to <ess-help-request@stat.math.ethz.ch>;
825 contributions to the list may be mailed to
826 <ess-help@stat.math.ethz.ch>.  Rest assured, this is a fairly
827 low-volume mailing list.
829    The purposes of the mailing list include
831    *  helping users of ESS to get along with it.
833    *  discussing aspects of using ESS on Emacs and XEmacs.
835    *  suggestions for improvements.
837    *  announcements of new releases of ESS.
839    *  posting small patches to ESS.
841 1.12 Authors
842 ============
844    * A.J. Rossini (mailto:rossini@blindglobe.net)
846    * Richard M. Heiberger (mailto:rmh@temple.edu)
848    * Kurt Hornik (mailto:Kurt.Hornik@R-project.org)
850    * Martin Maechler (mailto:maechler@stat.math.ethz.ch)
852    * Rodney A. Sparapani (mailto:rsparapa@mcw.edu)
854    * Stephen Eglen (mailto:stephen@gnu.org)