4 The ESS Developers proudly announce the release of ESS
8 Emacs Speaks Statistics (ESS) provides an intelligent, consistent
9 interface between the user and the software. ESS interfaces with
10 S-PLUS, R, SAS, BUGS and other statistical analysis packages under the
11 Unix, Microsoft Windows, and Apple Mac OS operating systems. ESS is a
12 package for the GNU Emacs and XEmacs text editors whose features ESS
13 uses to streamline the creation and use of statistical software. ESS
14 knows the syntax and grammar of statistical analysis packages and
15 provides consistent display and editing features based on that
16 knowledge. ESS assists in interactive and batch execution of
17 statements written in these statistical analysis languages.
19 ESS is freely available under the GNU General Public License (GPL).
20 Please read the file COPYING which comes with the distribution, for
21 more information about the license. For more detailed information,
22 please read the README files that come with ESS.
24 Getting the Latest Version
25 ==========================
27 The latest version of ESS is always available on the web at: ESS web
28 page (http://www.analytics.washington.edu/downloads/ess/) or StatLib
29 (http://lib.stat.cmu.edu/general/ESS/)
31 There no longer is an anonymous CVS repository for ESS, due to lack
32 of interest, little demand, and problems with security.
37 * Languages Supported:
38 * S family (S 3/4, S-PLUS 3.x/4.x/5.x/6.x, and R)
46 * XLispStat including Arc and ViSta
48 * Editing source code (S family, SAS, BUGS, XLispStat)
49 * Syntactic indentation and highlighting of source code
51 * Partial evaluation of code
53 * Loading and error-checking of code
55 * Source code revision maintenance
57 * Batch execution (SAS, BUGS)
59 * Use of imenu to provide links to appropriate functions
61 * Interacting with the process (S family, SAS, XLispStat)
62 * Command-line editing
64 * Searchable Command history
66 * Command-line completion of S family object names and file
69 * Quick access to object lists and search lists
71 * Transcript recording
73 * Interface to the help system
75 * Transcript manipulation (S family, XLispStat)
76 * Recording and saving transcript files
78 * Manipulating and editing saved transcripts
80 * Re-evaluating commands from transcript files
82 * Help File Editing (R)
83 * Syntactic indentation and highlighting of source code.
85 * Sending Examples to running ESS process.
92 ESS has been tested with
94 * S-PLUS 3.3, 3.4, 4.5, 5.0, 5.1, 6.0, 6.1, 2000
108 on the following platforms
112 * Solaris/SunOS (all)
114 * Microsoft Windows 95/98/NT/2000 (SPLUS 4.5/2000, R, SAS and BUGS)
116 * Apple Mac OS (SAS for OS 9 and X11 R for OS X)
118 with the following versions of emacs
120 * GNU Emacs 20.3, 20.4, 20.5, 20.6, 20.7, 21.1, 21.3
122 * XEmacs 21.0, 21.1.13-14, 21.4.0-8, 21.4.9-13/21.5.17(1), 21.4.14-15
124 * GNU Emacs <20.3 and XEmacs <21.0(2)
126 ---------- Footnotes ----------
128 (1) requires the files.el patch to revert-buffer for the Local
129 Variables updating problem
131 (2) These releases of emacs are no longer supported, so an upgrade
132 is recommended if you plan to use ESS. If you have GNU Emacs 19.29,
133 see *Note Unix installation::. Also, note that the `custom' library
134 bundled with Emacs 19.34 is too _old_, its API is incompatible with the
135 `new custom' bundled with recent Emacsen. The `new custom' for Emacs
136 19.34 is available for download here
137 (ftp://ftp.dina.kvl.dk/pub/Staff/Per.Abrahamsen/custom/custom-1.9962.tar.gz).
142 Versions 5.1.x are meant to be gamma-level releases. While some bugs
143 are fixed, others may have been introduced, especially with regards to
144 new features. See the file doc/TODO for details. Bug reports are
145 solicited; see the Bugs Section below. Patches or suggested coding
146 fixes with bug reports are much appreciated!
151 There is a mailing list for discussions and announcements relating to
152 ESS. Join the list by sending an e-mail with "subscribe ess-help" (or
153 "help") in the body to <ess-help-request@stat.math.ethz.ch>;
154 contributions to the list may be mailed to
155 <ess-help@stat.math.ethz.ch>. Rest assured, this is a fairly
156 low-volume mailing list.
158 The purposes of the mailing list include
160 * helping users of ESS to get along with it.
162 * discussing aspects of using ESS on Emacs and XEmacs.
164 * suggestions for improvements.
166 * announcements of new releases of ESS.
168 * posting small patches to ESS.
173 Please send bug reports, suggestions etc. to
175 <ESS-bugs@stat.math.ethz.ch>
177 The easiest way to do this is within Emacs by typing
179 `M-x ess-submit-bug-report'
181 This also gives the maintainers valuable information about your
182 installation which may help us to identify or even fix the bug.
184 If Emacs reports an error, backtraces can help us debug the problem.
185 Type "M-x set-variable RET debug-on-error RET t RET". Then run the
186 command that causes the error and you should see a *Backtrace* buffer
187 containing debug information; send us that buffer.
189 Note that comments, suggestions, words of praise and large cash
190 donations are also more than welcome.
195 * A.J. Rossini (mailto:rossini@u.washington.edu)
197 * Richard M. Heiberger (mailto:rmh@temple.edu)
199 * Kurt Hornik (mailto:hornik@ci.tuwien.ac.at)
201 * Martin Maechler (mailto:maechler@stat.math.ethz.ch)
203 * Rodney A. Sparapani (mailto:rsparapa@mcw.edu)
205 * Stephen Eglen (mailto:stephen@gnu.org)
210 ESS is free software; you can redistribute it and/or modify it under
211 the terms of the GNU General Public License as published by the Free
212 Software Foundation; either version 2, or (at your option) any later
215 ESS is distributed in the hope that it will be useful, but WITHOUT
216 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
217 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
218 in the file COPYING in the same directory as this file for more details.
223 Changes/New Features in 5.2.1:
224 * ESS[S] (R and S-plus): now have tool-bar with entries to evaluate
225 code in the inferior process or to switch there. This code is
226 experimental and likely to change as XEmacs/Emacs issues get
229 Changes/New Features in 5.2.0:
230 * ESS[BUGS]: new info documentation! now supports interactive
231 processing thanks to Aki Vehtari (mailto:Aki.Vehtari@hut.fi); new
232 architecture-independent unix support as well as support for BUGS
235 * ESS[SAS]: convert .log to .sas with ess-sas-transcript; info
236 documentation improved; Local Variable bug fixes; SAS/IML
237 statements/functions now highlighted; files edited remotely by
238 ange-ftp/EFS/tramp are recognized and pressing SUBMIT opens a
239 buffer on the remote host via the local variable
240 ess-sas-shell-buffer-remote-init which defaults to "ssh"; changed
241 the definition of the variable ess-sas-edit-keys-toggle to boolean
242 rather than 0/1; added the function ess-electric-run-semicolon
243 which automatically reverse indents lines containing only "run;";
244 C-F1 creates MS RTF portrait from the current buffer; C-F2 creates
245 MS RTF landscape from the current buffer; C-F9 opens a SAS DATASET
246 with PROC INSIGHT rather than PROC FSVIEW; C-F10 kills all buffers
247 associated with .sas program; "inferior" aliases for SAS batch:
248 C-c C-r for submit region, C-c C-b for submit buffer, C-c C-x for
249 goto .log; C-c C-y for goto .lst
251 * ESS[S]: Pressing underscore ("_") once inserts " <- " (as before);
252 pressing underscore twice inserts a literal underscore. To stop
253 this smart behaviour, add "(ess-smart-underscore nil)" to your
254 .emacs after ess-site has been loaded;
255 ess-dump-filename-template-proto (new name!) now can be customized
256 successfully (for S language dialects); Support for Imenu has been
257 improved; set ess-imenu-use-S to non-nil to get an "Imenu-S" item
258 on your menubar; ess-help: Now using nice underlines (instead of
261 * ESS[R]: After (require 'essa-r), M-x ess-r-var allows to load
262 numbers from any Emacs buffer into an existing *R* process; M-x
263 ess-rdired gives a "directory editor" of R objects; fixed
264 ess-retr-lastvalue-command, i.e. .Last.value bug (thanks to David
267 * ESS: Support for creating new window frames has been added to ESS.
268 Inferior ESS processes can be created in dedicated frames by
269 setting inferior-ess-own-frame to t. ESS help buffers can also
270 open in new frames; see the documentation for ess-help-own-frame
271 for details. (Thanks to Kevin Rodgers for contributing code.)
273 Changes/New Features in 5.1.24:
274 * The version number is now correct even inside ESS/Emacs
276 Changes/New Features in 5.1.23:
277 * Minor more Makefile clean up.
279 Changes/New Features in 5.1.22:
280 * Besides info documentation, PDF and HTML documentation are also
281 provided (instead of built using "make") and available on the web
282 as well; see ESS web page
283 (http://software.biostat.washington.edu/ess/doc) and StatLib
284 (http://lib.stat.cmu.edu/general/ESS/doc)
286 * Now that info documentation is available, the README.* files are
287 no longer supported. However, they are still distributed for what
290 * ESS is now an XEmacs package! See XEmacs Installation HOWTO
291 (http://www.xemacs.org/Install/index.html) for details
292 (specifically, items 10-15).
294 * ESS[SAS]: more user-friendly enhancements for remote SAS batch
295 jobs with Kermit file transfers (LOG and OUTPUT function key
296 features now supported). Multiple shells now supported so you can
297 run SAS on different computers from different buffers by setting
298 the buffer-local variable ess-sas-shell-buffer to unique buffer
301 * Major re-vamping of Makefile/Makeconf.
303 Changes/New Features in 5.1.21:
304 * ESS[SAS]: info documentation now available!, see ESS->Help for
305 SAS; F12 opens GSASFILE nearest point for viewing either within
306 emacs, when available, or via an external viewer; more syntax
307 highlighting keywords; more enhancements for remote SAS batch jobs
308 with Kermit; new framework for remote SAS interactive jobs, see
311 * ESS[S]: info documentation now available!, see ESS->Help for the S
314 * Makefile: tag now independent of rel; info files made by
315 doc/Makefile and installed in new info sub-directory
317 Changes/New Features in 5.1.20:
318 * New `options()$STERM' in the S dialects (S, S-Plus, R). The S
319 program can determine the environment in which it is currently
320 running. ESS sets the option to `iESS' or `ddeESS' when it starts
321 an S language process. We recommend other specific values for S
322 language processes that ESS does not start.
324 * New `ess-mouse-me' function, assigned to S-mouse-3 by default.
325 User may click on a word or region and then choose from the menu
326 to display the item, or a summary, or a plot, etc. This feature
327 is still under development.
329 * GNU Emacs 21.1 is now supported (fixed for S dialects, SAS & BUGS),
330 (some from Stephen Eglen).
332 * XEmacs 21.x is now supported (fixed w32-using-nt bug)
334 * XEmacs on Win (NT) is better supported.
336 * Workaround for bug in Sqpe+6 (S-PLUS 6 for Win).
338 * should now work even when imenu is not available (for old
341 * ESS[SAS]: XEmacs-Imenu fix; C-TAB is globalized along with your
342 function-key definitions, if specified; you can specify your SAS
343 library definitions outside of autoexec.sas for ess-sas-data-view
344 with SAS code placed in the variable ess-sas-data-view-libname,
345 also the dataset name is defaulted to the nearest permanent dataset
346 to point; Speedbar support now works for permanent datasets, please
347 ignore first./last.; new font-locking is now the default with more
348 improvements for font-locking PROCs, macro statements, * ; and %* ;
349 comments; you can toggle sas-log-mode with F10 which will font-lock
350 your .log (if it isn't too big); submit remote .sas files accessed
351 with ange-ftp, EFS or Tramp (Kermit is experimental) by setting
352 ess-sas-submit-method to 'sh; ess-sas-submit-command and
353 ess-sas-submit-command-options are buffer-local so you can have
354 local file variable sections at the end of your .sas files to
355 request different executables or specify special options and the
356 local file variables are re-read at submit instead of only at file
357 open so that if you make a change it is picked up immediately;
359 * ESS[BUGS]: font-lock with `in' fixed.
361 * for STATA: font-lock bug fixed.
363 * for Rd mode: C-c C-v and `switch-process' in menu. further, C-c
364 C-f prefix (Rd-font) for inserting or surrounding a word by things
365 such as \code{.}, \code{\link{.}}, \emph{.} etc.
367 * new functions (ess-directory-function) and (ess-narrow-to-defun)
368 ess-directory <-> default-directory logic (Jeff Mincy).
370 * Re-organized Makefile and fixed a few bugs.
372 Changes/New Features in 5.1.19:
373 * S+6 now supported (Tony Rossini (Unix) and Rich Heiberger
376 * New BUGS support through ESS[BUGS] mode (Rodney Sparapani)
377 Templates assist you in writing .bug and .cmd code (.cmd and .log
378 are replaced by .bmd and .bog to avoid emacs extension collisions).
379 Substitution" parameters facilitate "automagic" generation of
380 data...in" and "init...in" filenames, "const N=" from your data
381 file and "monitor()/stats()" commands. Activated by pressing F12.
383 * Fixes for `ess-smart-underscore' SAS breakage (Rich Heiberger)
385 * You can change between PC and Unix, local and global SAS
386 function-key definitions interactively (Rich Heiberger)
388 * C-Submit a highlighted region to SAS batch (Rodney Sparapani)
390 * New and improved SAS syntax highlighting (Rodney Sparapani) To get
391 the new functionality, set ess-sas-run-make-regexp to nil. Also
392 available in .log files via F10.
394 * Open a permanent SAS dataset for viewing via F9 (Rodney Sparapani)
395 You must have the library defined in autoexec.sas for it to work.
397 * User-friendly defaults for `sas-program',
398 `ess-sas-batch-pre-command' and `ess-sas-batch-post-command' as
399 well Customize support for these and other ESS[SAS] variables
402 * `ess-sas-suffix-2' now defaults to .dat via F11 (Rodney Sparapani)
404 * Emacs/XEmacs, Unix/Windows issues collectively handled in
407 * defadvice solves problem of missing *ESS* (thanks to Jeff Mincy)
409 * Improved manual a bit by including things that were only in
412 Changes/New Features in 5.1.18:
413 * New `ess-smart-underscore' function, now assigned to "_" by
414 default. Inserts `ess-S-assign' (customizable " <- "), unless
415 inside string and comments where plain "_" is used instead. (MM)
417 * Fixes for longstanding interactive SAS breakage (RMH)
419 Changes/New Features in 5.1.17:
420 * Documentation for Windows Installation (Rich Heiberger)
422 * removal of ess-vars, finalization of customize support (in the
423 sense that there is no more use of ess-vars, but that we need to
424 fix ess-cust) (AJ Rossini)
426 * Many small (and large) fixes/contributions (MMaechler)
428 * addition of the "S-equal" variable and provide M-x ess-add-MM-keys
429 a way to remap "_" to `ess-S-assign', typically " <- ", but
430 customizable. (MMaechler)
432 Changes/New Features in 5.1.16:
437 Changes/New Features in 5.1.15:
440 Changes/New Features in 5.1.14:
441 * Yet more fixes to SAS mode, (Rich Heiberger and Rodney Sparapani)
443 * Customize support (for most Emacsen which support it) (AJRossini)
445 * ARC and ViSta support out of the box, and fixes for XLispStat
448 Changes/New Features in 5.1.13:
449 * Version numbering finally all depending on the ./VERSION file,
450 thanks to Martin Maechler.
452 * Yet more fixes to SAS mode, thanks to Rich Heiberger.
454 Changes/New Features in 5.1.12:
455 * Splus 5.1 stabilized, thanks to Martin Maechler, Bill Venables,
456 Chuck Taylor, and others.
458 * More fixes to SAS mode, thanks to Rodney Sparapani and Rich
461 Changes/New Features in 5.1.11:
462 * More fixes to Stata mode, thanks to Brendan Halpin
463 (mailto:brendan@essex.ac.uk).
465 * fixed bugs in ESS-elsewhere, thanks to many testers
467 * README.SPLUS4WIN has DETAILED instructions for S-PLUS 2000, thanks
468 to David Brahm (mailto:brahm@alum.mit.edu).
470 * Fixes to SAS mode, thanks to Rodney Sparapani
472 Changes/New Features in 5.1.10:
473 * More fixes to Stata mode
475 * primitive generic version of ESS-elsewhere
477 * Small fixes to SAS/Stata.
479 Changes/New Features in 5.1.9:
482 * Literate Data Analysis using Noweb works
484 Changes/New Features in 5.1.8:
487 * R documentation mode defaults changed
489 Changes/New Features in 5.1.2:
490 * able to use inferior iESS mode to communicate directly with a
491 running S-Plus 4.x process using the Microsoft DDE protocol. We
492 use the familiar (from Unix ESS) C-c C-n and related key sequences
493 to send lines from the S-mode file to the inferior S process. We
494 continue to edit S input files in ESS[S] mode and transcripts of
495 previous S sessions in ESS Transcript mode. All three modes know
496 the S language, syntax, and indentation patterns and provide the
497 syntactic highlighting that eases the programming tasks.