tags:

views:

80

answers:

1

I have installed a modified Emacs version for Windows XP from Vincent Goulet and I want to run and edit R scripts contained on a remote Unix server using ess-remote. After a lot of searching I am able to connect to a remote R session in the following way:

  1. Open a shell prompt with M-x shell
  2. enter the following command: plink -X -C username@server
  3. After entering password, I start up R in the shell with a simple command R
  4. Assign this as a remote process with command M-x ess-remote

While I am able to interact with R successfully, I always get a double prompt and worse yet, if open a help file for a function, I get garbled text in the same R process buffer, instead of a new buffer opening with legible R help text. How can I get any help buffer to open in a separate window like the usual emacs and R interaction, and how can I get rid of the double-prompts when I execute the shell?

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

c:\Documents and Settings\username>plink -X -C username@remoteserver
plink -X -C username@remoteserver
username@remoteserver's password: 

[username@remoteserver ~]$ R
R

R version 2.11.0 (2010-04-22)
Copyright (C) 2010 The R Foundation for Statistical Computing
ISBN 3-900051-07-0

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.


Welcome at Sat Jul 24 11:50:45 2010 
> 
> options(STERM='iESS')
options(STERM='iESS')
> 
> x <- c(1,2,3)
> 
> x
[1] 1 2 3
> 
> ?mean(x)
  [?1049h[?1h=[24;1H[Kmean                   package:base                    R        Documentation

Arithmetic Mean

Description:

 Generic function for the (trimmed) arithmetic mean.

Usage:

 mean(x, ...)

 ## Default S3 method:
 mean(x, trim = 0, na.rm = FALSE, ...)

Arguments:

   x: An R object.  Currently there are methods for numeric/logical
      vectors and date, date-time and time interval objects, and
      for data frames all of whose columns have a method.  Complex
      vectors are allowed for 'trim = 0', only.

trim: the fraction (0 to 0.5) of observations to be trimmed from

[24;1H[K:[24;1H[24;1H[K each end of 'x' before the mean is computed. Values of trim [24;1H[K: [24;1H[24;1H[K outside that range are taken as the nearest endpoint.

na.rm: a logical value indicating whether 'NA' values should be
      stripped before the computation proceeds.

 ...: further arguments passed to or from other methods.

Value:

 For a data frame, a named vector with the appropriate method being
 applied column by column.

 If 'trim' is zero (the default), the arithmetic mean of the values
 in 'x' is computed, as a numeric or complex vector of length one.
 If 'x' is not logical (coerced to numeric), numeric (including
 integer) or complex, 'NA_real_' is returned, with a warning.

 If 'trim' is non-zero, a symmetrically trimmed mean is computed
 with a fraction of 'trim' observations deleted from each end
 before the mean is computed.

References:

[24;1H[K:[24;1H[24;1H[K     Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) _The New S
[24;1H[K:[24;1H[24;1H[K     Language_.  Wadsworth & Brooks/Cole.
[24;1H[K:
[24;1H[24;1H[K
[24;1H[K:[24;1H[24;1H[KSee Also:
[24;1H[K:
[24;1H[24;1H[K
[24;1H[K:[24;1H[24;1H[K     'weighted.mean', 'mean.POSIXct', 'colMeans' for row and     column
[24;1H[K:
[24;1H[24;1H[K     means.
[24;1H[K:[24;1H[24;1H[K
[24;1H[K:
[24;1H[24;1H[KExamples:
[24;1H[K:[24;1H[24;1H[K
[24;1H[K:
[24;1H[24;1H[K     x <- c(0:10, 50)
[24;1H[K:[24;1H[24;1H[K     xm <- mean(x)
[24;1H[K:
[24;1H[24;1H[K     c(xm, mean(x, trim = 0.10))
[24;1H[K:[24;1H[24;1H[K     
[24;1H[K:
[24;1H[24;1H[K     mean(USArrests, trim = 0.2)
[24;1H[K:[24;1H[24;1H[K     
[24;1H[K:
[24;1H[24;1H[K
[24;1H[K:[24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 
[24;1H[24;1H[K[24;1H[K(END) [24;1H[24;1H[K[24;1H[K(END) 

Here are the contents of site-start.el tramp inclusion for reference:

(require 'tramp)
;(setq tramp-chunksize "500")
(setq tramp-default-method "plink")

(setq exec-path
      (cons
   (expand-file-name "C:/putty_shortcut/")
        exec-path)) 
A: 

For the colour code issue, you need to enable ansi-color support in shell mode:

;; Shell mode
(add-hook
 'shell-mode-hook
 (function (lambda ()
             (ansi-color-for-comint-mode-on))))

I'm not seeing the double-prompt in your examples, but you can create a custom shell autoexec file to set a custom prompt:

(edit: Ah, you meant a double > prompt within R. I don't know about that, sorry. I'll leave the comments below in case it's useful to someone...)

Program used comes from variable `explicit-shell-file-name', or (if that is nil) from the ESHELL environment variable, or (if that is nil) from `shell-file-name'. If a file `~/.emacs_SHELLNAME' exists, or `~/.emacs.d/init_SHELLNAME.sh', it is given as initial input

e.g. init_bash.sh might contain export PS1="\n\u@\h \w $ " for a simple uncoloured prompt.

See C-h f shell RET for more information.

phils
Unfortunately even with your recommended addition to shell mode, I am still getting the garbled text whenever I access help in the remote R process.
sheed03
I guess those aren't ansi colour codes after all :/ Apologies for the mis-direction. The only other suggestion I can make is looking to see if you can ask R not to colour its output? (search the man page for 'color')
phils