Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Tree: 2911cd2a6e
Fetching contributors…

Cannot retrieve contributors at this time

579 lines (381 sloc) 18.966 kB
For changes since the release of R 1.0.0 on 29 Feb 2000
see the file CHANGES
The highlight colour used for help files in the internal pager can now
be set in the file Rconsole.
tempfile() can have argument `pattern' of length greater than 1.
A bug in tab expansion in the console and internal pager has been
corrected. is able to cope with packages with missing TITLE files.
The console and internal pager now have horizontal scollbars. These
are disabled (greyed out) if no text is obscured in the current view.
Help menu items will be greyed out if the corresponding files are not
Many of the menu items now call internal functions and so are much
faster, but produce nothing on the console.
Help files will be displayed in the internal pager with headings
in a contrasting colour.
There are new functions winDialog() and winDialogString() to produce
dialog boxes, and functions winMenu* (use ?winMenus) to manipulate
user menus.
Following Unix, the handling of help(, offline=TRUE) has been altered.
It will be necessary to adjust helpPRINT.bat to set the TEXINPUTS path
to find Rd.sty. TeX processing of these help files normally uses LaTeX
package `ae' to handle Latin-1 characters: this can be changed by
setting the environment variable R_RD4DVI.
The conversion to text help no longer requires groff.
It is possible to install packages from any directory (set PKGDIR on
the make command) and to any directory (set RLIB on the make command).
RLIBS is no longer accepted for the library directory: use R_LIBS
(which has been preferred since 0.65.0).
The code to set the `cra' parameter for a windows() device (and hence
the base character size of symbols) is more robust.
The code handling Ctrl-like keys has been changed and ought to be more
robust (AltGr on Danish Windows NT used to misbehave.)
savePlot recognises filename="clipboard" (or "") for wmf plots.
The installer has always been version-specific and now tests it is
being used for the right version.
We made a determined attempt to quote paths which might contain spaces,
and almost all cases work. Be careful with external unzip, pager and editor
programs that these do handle quoted paths.
Rterm can be interrupted by Ctrl-C as well as Ctrl-Break. Fast
typing should not give problems in interactive use.
Better formatting of math expressions in graphics labels, legends, ...
(but only if font is True Type since it seems not possible to get
per-char font metric information for raster fonts).
Support for GIF format bitmaps has been removed, but support for PNG,
JPEG and BMP has been added. This can be done via the File menu on the
graphics window, savePlot() or dev.print to the new devices png(), bmp()
and jpeg(), which can also be used directly.
PDF versions of the (draft) manuals are available in file
and install into rw0900/doc/manuals. These can be read in Acrobat
Reader from the Manuals sub-menu of the Help menu provided they and
the reader ( are installed.
The installer will install packages in the library directory if the
installation directory path ends in rw0900.
You can install packages by
install.packages("/path/to/", CRAN=NULL)
New function savePlot() to save plots to wmf, gif or ps.
There is now support for help via compiled HTML files (as used by the
latest Microsoft products): set options(chmhelp=TRUE) to use this.
You will probably need Internet Explorer 4 or later installed to use
this, or you can install hhupd.exe from the windows/windows-NT/base/etc
directory on CRAN.
There is support for building Windows help files (as in Windows 95).
Set options(winhelp=TRUE) to make this your preferred help system.
Both compiled HTML files and Windows help are available for the
standard packages.
The new function update.packages() is supported if you have wget.exe
(a copy is in the windows/windows-NT/base/etc/ on CRAN) or
lynx.exe, from
On NT only, CPU times are returned by proc.time() (using a call to
Rotated text on a windows / win.* device is placed more accurately,
especially for non-multiples of 90 degrees.
A windows() device reports itself as `windows' not `X11'.
getenv() now returns all the environmental variables.
unlink() can now remove (empty) directories (but not using wildcard
The complex LINPACK routines which were not included in the Unix
versions of R are now omitted here.
There is more support for (support of) ActiveX Automation via the
Rproxy.dll: see the file front-ends/readme.
As under Unix, .Renviron is first searched for in the working directory,
then in the home directory. (It this case the home directory must
be given by the R_USER or HOME environmental variable.)
The sockets code is definitely working in this version, enough to support
source.url and friends.
options(pager="console") is set as the default if --ess is used (as it
works better with Emacs).
The rounding code has been re-written to be more accurate and to round
to even as documented.
The rw-FAQ is linked into the HTML help system.
We believe the problems with re-sizing windows (especially on Windows 9x)
have been solved.
[ Because Guido Masarotto was ill for several weeks, rw0650 was only ever
pre-released. ]
There are many changes `under the skin' which are not reflected in
user-visible changes, but either improve performance or will allow
future enhancements.
The environment variables have been changed: R_HOME is now R's home
directory and R_USER is the HOME for the user which will be used by R
(and defaults to HOME, if set, then to ${HOMEDRIVE}${HOMEPATH}, if that
is set, then the working directory). (There are many other such
changes in R: for example RLIBS becomes R_LIBS, although for the time
being RLIBS is also recognised.)
Saving a plot as postscript from the device menu will produce a
portrait plot irrespective of the setting of ps.options().
Saving a plot as a metafile should be more reliable on machines which
report incorrect information on the size of the screen.
The new flag --no-environ suppresses reading .Renviron and is implied by
When rterm is used non-interactively either --save or --no-save must be
specified: these is no longer a default of --no-save (for consistency
with Unix).
More support for building R into other applications: see the examples
in the front-ends directory of the source distribution.
Interrupting by Esc or Ctrl-Break is handled internally by signals, so
the `User Break' response will no longer appear, but in rterm ^C will
be echoed.
There is limited support for `tilde-expansion': file paths such as
~/rest will be expanded to ${HOME}\rest if HOME is set, or to
${HOMEDRIVE}${HOMEPATH}\rest if those variables are set.
Using rterm either interactively or with --ess will be more responsive and
use much less CPU time when waiting for input. Interruptions by Ctrl-Break
or (under --ess, for use by ESS) Ctrl-C should happen immediately and be
handled correctly. [On NT: problems with Win 98 were corrected for rw0651.]
The installer can now install correctly in a top-level directory (e.g.
C:\), fixing a bug in the unzip code used.
There are few Windows-specific enhancements: rw0642 (and R-0.64.2) is
a bug-fixing release.
If options(pager="console") then files are listed in the console
window, as happened prior to rw0640.
On request, we have enabled `pagerstyle = singlewindow' in MDI mode,
although we do not recommend this combination.
The file HOME\.Renviron is read (it was HOME\Renviron, and the
documentation used both names). Only the last line was successfully
processed in rw0641, but all lines are in this version.
unlink() on non-existent files no longer causes a crash.
The new function win.version() will report details of the run-time
Windows version, principally for use in has a new argument wait: wait=FALSE gives a non-modal editor
Generally TAB will move between fields in dialog boxes, and return and
escape will work (selecting OK and Cancel) in the Change Directory
dialog box.
The installer will allow several packages to be selected, and will
install them in sequence. It should give more informative messages on
some error conditions. Usually return will select Next or Finish,
escape will select Cancel and B Back.
There is a new target `make check' for running the standard tests and
checking the standard packages (as on Unix).
Saving the content of a graphic device as GIF should work again (under some
circumstances, it resulted in a white image in rw064[01]).
There is a choice of interface for Rgui:
o SDI, single document interface. This is like the previous version,
with separate windows for the console, graphics and pager(s).
o MDI, multiple document interface. Here the console, graphics and
pagers are subwindows of one main `frame' window.
You can set your preference (and details of the MDI) in the Rconsole
file: this can also be overriden on the command line by --mdi or --sdi.
If you use multiple files in a single SDI pager, the (row) positions
are remembered and re-used when you switch views in the pager.
For MDI pagers, the pager size is chosen by the system, and only
multiple pagers are supported.
When pagers are re-sized the strategy is now to keep the middle line
in the middle.
The option `setwidthonresize' in Rconsole automatically generates an
internal call to options("width") if you resize the console and change
its width. This is the default, but we suggest you do not resize
while R is outputting.
The console, pagers and graphics devices now have right-click popup
menus, and you can paste from a pager to the console directly.
There is a new console menu item to show a file in a pager. This is
intended to allow lines to be selected in an script file displayed in
a pager and submitted to the R engine.
`Busy' cursors are used where appropriate: a cross-hair cursor is
used on a graphics device to indicate that locator() (or identify())
is in use.
The file HOME\.Renviron is now read. This can contain environment
variables in NAME=value form, one per line. This is useful for setting
You can now paste in more to the console: the limit (which was 2048
chars) is now that of the clipboard. Pasting can take place whilst
the console is busy.
The command `make pkgcheck-pkgname' will do the equivalent of `R CMD
check', that is run all the examples in the help pages for that package.
unlink can now handle wildcards and a vector argument of length more than
The inverse hyperbolic tangent functions asinh acosh atanh are now
available in this version.
R-0.64 uses platform-independent code for file handling. Files are
displayed under a pager in a separate window rather than in the
Environment variables can be set as NAME=value on the command line,
including in a short-cut.
Content of the pager and of the Rgui's console can be printed
using File | Print.
The help, latex and example files can be stored in zip files to save
space; this is used for the base package.
The menus are enabled/disabled and check-marked correctly under NT.
We hope to have solved the 'rw0633 font dimension problem' shown
under some NT versions.
read.fwf works if you have Perl installed.
help(, offline=TRUE) will work if you have latex installed and
customize RHOME/bin/helpPRINT.bat
The sockets code is compiled in, but we have not tested it.
system() has new arguments `invisible' and `minimized'.
The beginnings of a FAQ (RHOME/rw-faq).
Programs can be launched from all shells: the full path to the
executable is not needed.
Configurable fonts in the graphics devices by the file Rdevga.
Workspaces are saved in XDR format, and so can be shared with most
Unix implementations of R.
Printer and metafile graphics devices (?win.print and ?win.metafile).
Consistent handling of start directory for dialogs and the working
directory across versions of Windows.
An improved and enhanced system() function (?system and ?shell).
Windows-specific help files where necessary.
Better support for ESS.
Better support for the installation of pre-compiled packages
The NT copy to the clipboard bug has been fixed.
Help files use latin1 encoding (but, to see the difference,
you must use a latin1 capable font; for this reason, now, as packed,
the R console uses "Courier New"; if you don't like it, edit etc/Rconsole).
There are two executables, Rgui.exe and Rterm.exe.
Will run from NT command line.
No `tricks' are needed for animated graphics.
The windows are much more responsive.
R commands can be interrupted by Esc.
Rterm allows batch mode operation and can also be run in
inferior-R-mode under NTEmacs.
There is a history mechanism for graphics plots.
Graphics can be copied to the clipboard.
Commands history is saved between session (only by Rgui.exe).
Saved images and user profile are called .RData and .Rprofile as under Unix
(before they were RData and Rprofile).
- Minor adjustment to reflect changes in R-0.63.0 (options, example,...)
- Fixed a couple of minor bugs in the graphics device.
- More control keys (some Emacs-like (crtl+a, crtl+e, crtl+k), and, by
popular demand, crtl+c and crtl-v for copy and paste); take a look at
the help/console menuitem.
- Added support for Cygwin B20 (target remains Mingw32,i.e, no Unix
emulation layer)
- Access of global variables in R.exe from a dll should work (all the
horrible name-mangling needed by `gnuwin32' - `var' in R.exe becames
`*__imp_var' in a dll - is done automatically).
New features:
- The console can be configured (font, colours, dimensions). No fancy
dialog (yet), but look at the rw0624/etc/Rconsole file.
- help.start() now is implemented. Of course, you need the html
Bugs fixed (I hope):
- Alt+Gr problems on some European keyboards.
- Focus is 'always' given back to the console.
- Filters in the dialogs which ask a file-name.
- round(..) now works as documented.
- Some small modifications to the graphic device (position of text and
clipping of lines was sometimes not exact). In addition, I changed the
font to helvetica (for better consistency with the X11 device).
A. News (with respect to rw0613)
(a) I rewrote the console using a portable toolkit (GraphApp, see Now, output is buffered
until some input is required. In addition, there are some command
history support. For a mini help on the new console, use the
help/Console menuitem.
(b) I also rewrote the graphics device using GraphApp. Apart for the
redraw (which seems faster) the GraphApp device is +/- equal to the
one that you find in RJune. With respect to rw0613 the major
improvements are: (i) it is a R0.62.x device,i.e., it supports
multiple instances, resizing, copy,...(look to the functions);
(ii) it supports plotting math expression; (iii) there is a new item
in the menu which let to save the contents of the active device as a
gif file; (ii) arbitrary line patterns in any width are supported.
(c) Now, edit makes use of an external editor (the default one is
notepad), i.e., it works as under Unix.
(d) date() now works. In addition, proc.time(), and so
system.time(..), works (but don't expect too much, you will get only
the elapsed time).
(e) IEEE math (Inf, Nan,..).
(f) I used the GNU regex library. Hence all the
code is GPL'ed.
B. The new menubar
The menu bar contains the following item:
Source R Code -> ask for a filename and then send to the
interpreter a source(filename) command.
Load Image -> ask for a filename and then send to the
interpreter a load(filename) command.
Save Image -> ask for a filename and then send to the
interpreter a save.image(filename) command.
Copy Paste Copy and Paste Select All
Kill current computation
List objects -> send to the interpreter a ls() command
Remove all objects -> ask for confirmation and then send to
the interpreter a rm(list=ls()) command
Graphics save as Postscript -> ask for a filename and then send to the
interpreter a dev.print(...) command
save as gif -> ask for a filename (extension must be
.gif) and then save the current plot as gif
Console -> mini help on the console
R language -> ask for a topic and then send to the interpreter a
help(topic) command
Apropos -> ask for a topic and then send to the interpreter a
apropos(topic) command
Observe that some of the menu items just send to the interpreter a
command. This means that these items are disabled when the interpreter
is waiting for the completion of a previous command,i..e, when you
have the ''continuation'' prompt. On the other end, under normal
editing (prompt='>'), since the current line is saved and then
restored you can, for example, type part of a command, ask for some
help, and then complete your command.
C. Printing
To avoid questions: printing is not directly supported (yet).
To print the content of the console you must:
a) select the text;
b) copy it to the clipboard;
c) paste it in some word processor or editor which can print.
To obtain a good copy of your graphs you can:
a) save it as postscript and then print on a ps printer (or play with
it using ghostscript);
b) save it as a gif and then print it using one of the many programs
which support this format (image manipulation programs, word processors,
internet browsers,...).
If you give the focus to a graphic window, you can also copy it to
the clipboard using the alt+print keys. But this is the standard
Windows command and you will get also the window's decoration. So
this is useful only to get a "draft" copy of the graph. [however, I
find quite effective to open a word processor in which to paste
command, console output and graphs. Indeed this is the way I ask my
students to work (of course, they must also write comments!)].
H. Bugs (known) and misc. observations.
(a) As always, the English of this README.
(b) de() doesn't work anymore. If someone needs it, I can try to include
the old one (or try to write a portable version of it using GraphApp).
(c) edit(...) doesn't work properly under Win3.1/Win32s.
(d) system(...) is quite limited (popen under MsWindows is a
(d) To use this version under Win32s you need a recent version of
Win32s (I have only tested with the last one that can be found at
(e) Only the mouse can be used to select the text in the console.
Jump to Line
Something went wrong with that request. Please try again.