General Changes
I have re-compiled R as a shared library. This means in theory, adventurous souls could now mount the R.pnd and access R from “outside”. I haven’t tried this directly, but the theory is sound – ish. It obviously works to the extent that the GUI’s are able to access R. Next, I have NOT stripped the binaries on this build – neither will I in future builds. Stripping R is a bit aggressive, and If I strip the binaries (as I did before), errors are not trapped at all; R just segfaults with no extra information – except for the option of a core dump. Leaving the binaries unstripped means errors are generally trapped uncatastrophically and with vaguely useful error messgaes. The package is bigger, but SD cards are cheap 😛 . R.pnd now also installs a single, standard 9×15 X11 bitmap font that is needed by the data.entry() function into the appdatadir. An additional entry is also appended to the fontpath to make the new font available to R. The http daemon is now not disabled by defult since it can be useful in JGR. I have also rolled a copy of jgeiss’s leafpad into this pnd and set it as the default code editor. If you want vi back, let me know – that’s easy 😮
Java Support
Java support has now been included. To make use of Java in R, you MUST used Wizard Stan’s Java runtime pnd (java.pnd V1.2.1.1) – nothing else has been tested. The Java.pnd file must also reside in the same physical location as R.pnd (ie, the same menu, app or desktop directory). A symlink should be honoured to an alternative location if you want to take this approach, although I have not tested this. When you start R, you will be asked whether you want java support for the session. If you intend to use an R package that uses rJava, or has rJava or a java derivative as a dependency, click Yes on the dialogue. java.pnd will then be mounted, and made available to R. A couple of points here. java.pnd will not be exclusively available to R – if you run a java application in the middle of an R session, and exit the java application, java.pnd will be unmounted and R will loose java support. Also, on exit, R.pnd will only unmount java.pnd if it mounted it. So, a little care is required here. I haven’t tried pulling out Java from undermeath R, so I have no idea how it will behave in this scenario but it is unlikely to be pretty.
Tcl/Tk
A full tcl/tk (8.6) environment is now also included. If you stay on the command line interface, you will still get the odd GUI element popping up (its called progress).
Additional Packages
The following additional packages have been installed on request: openNLP, openNLPmodels.en, gsubfn, languageR, zipfR, tm, shiny and the following RCmdr packages are also now pre-installed: RcmdrPlugin.BCA, RcmdrPlugin.coin, RcmdrPlugin.depthTools, RcmdrPlugin.doBy, RcmdrPlugin.DoE, RcmdrPlugin.EBM, RcmdrPlugin.EZR, RcmdrPlugin.KMggplot2, RcmdrPlugin.mosaic, RcmdrPlugin.MPAStats, RcmdrPlugin.plotByGroup, RcmdrPlugin.SCDA, RcmdrPlugin.SM, RcmdrPlugin.survival, RcmdrPlugin.TeachingDemos, RcmdrPlugin.temis.
I have also installed JGR and Deducer (and obviously their dependencies). R.pnd also contains the base and recommended packages. Installing further packages can be tricky from the pnd. You will only be able to install packages that contain pre-compiled code or R code, into a designated “library” that you have write access to. Sometimes, packages use of “make” even when they don’t need compiling. These are likely (but are not guaranteed) to fail. If you need a package and can’t get it to install, or need a package that needs pre-compilation (whether it is fortran or C) – shout and I’ll do my best to roll it into the base pnd on the next maintenance release. It is almost impossible for me to test these packages, as they generally do stuff I have no adequate knowledge of. Any warnings or errors generated during package installs I have carried out are shown in package warnings.txt in the root of the pnd. WIth the additional, base and recommended packages, there are now a total of 139 packages insatlled: should be good for starters.
RCmdr
The RCmdr GUI is now included. Load it by issuing the command library(Rcmdr) at the R prompt. Job done. You can set Rcmdr as your default inerface in the usuual way in .Rprofile. I have lifted out the Rcmdr menu strucutre file (Rcmdr-menus.txt) and placed it into the appdata directory. In theory, this should allow some customisation of the Rcmdr interface and menu structure.
JGR
This is a Java based GUI. If you want to use it, make sure you answer the initial java support prompt by clicking on Yes. The y-axis of the main window is currently fixed too big for the OP screen. A future release will remedy this. The source code has already been modified, and I am slowly working on re-compiling it. However, although I have the JGR sources, it is necessary to rebuild the project tree – which isn’t publicly available as a complete project. So, I have to poke around to find out which additional classes are required. I don’t have a lot of time for OP stuff right now, so this will be a slowish project. Load the JGR GUI by using the command library(JGR) followed by JGR() at thr R command prompt. The JGR interface is actually quite well built and is very stable – if basic. Until I sort this issue, the JGR main window has to be moved around to gain access to the command area and the menu optoins simultaneously. Once I fix the y-axis window dimension, JGR will probably be the tool of choice for GUI interfaces until I build something more sophisticated. Again, JGR can be loaded by default via the standard .Rprofile file in the appdata directory.
Deducer
This can be run independetly from JGR, but works better with JGR.
Tk interface
The somewhat dated Tk interface (which shoudln’t be confused with far more capable RCmdr), is loaded by adding the following to the first line of R.start (which should be in you appdata directory):
–gui=Tk
Known Issues
You will get a locale warning when exiting the data.entry() spreadsheet. I to not think this is significant – its just R being verbose, and warning you that it is operating in C locale mode.
Future Releases
Well, fixing JGR once and for all. I would also like to go back and have another stab at RStudio – which should compile OK, but doesn’t. Sorry, but no, RKward is out, out, out (only slightly biased there). Any feature requests – shout and I will see what I can do.