Двойная подсказка и искаженная справка R с удаленным R на WinXP emacs

Я установил модифицированную версию Emacs для Windows XP от Винсента Гуле и Я хочу запускать и редактировать сценарии R, содержащиеся на удаленном сервере Unix, с помощью ess-remote. После долгих поисков я могу подключиться к удаленному сеансу R следующим образом:

  1. Откройте приглашение оболочки с помощью M-x shell
  2. введите следующую команду: plink -X -C username@server
  3. После ввода пароля я запускаю R в оболочке с помощью простой команды R
  4. Назначьте это как удаленный процесс с помощью команды M-x ess-remote

Хотя я могу успешно взаимодействовать с R, я всегда получаю двойное приглашение и, что еще хуже, если открыть файл справки для функции, я получаю искаженный текст в том же буфере процесса R вместо открытия нового буфера с разборчивой справкой R текст. Как я могу заставить любой буфер справки открываться в отдельном окне, подобно обычному взаимодействию emacs и R, и как я могу избавиться от двойных подсказок при выполнении оболочки?

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] каждый конец 'x' перед вычислением среднего. Значения обрезки [24;1H[K: [24;1H[24;1H[K] за пределами этого диапазона принимаются в качестве ближайшей конечной точки.

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) 

Вот содержание включения бродяг site-start.el для справки:

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

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

person sheed03    schedule 24.07.2010    source источник
comment
Возможно, вам придется обратиться за помощью к списку ESS.   -  person Dirk Eddelbuettel    schedule 24.07.2010
comment
похоже, что некоторые цветовые коды оболочки где-то не интерпретируются   -  person SiggyF    schedule 24.07.2010
comment
Дублированный вывод — это не только проблема Windows. Я запускаю Arch с Emacs 23.something (я не дома, поэтому не могу предоставить точную версию)... тем не менее, я не могу воспроизвести ошибку, но она возникает только после запуска C-u M-x R --vanilla   -  person aL3xa    schedule 26.07.2010


Ответы (1)


Для проблемы с цветовым кодом вам необходимо включить поддержку цвета в режиме оболочки:

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

Я не вижу двойной подсказки в ваших примерах, но вы можете создать собственный файл autoexec оболочки, чтобы установить пользовательскую подсказку:

(редактировать: Ах, вы имели в виду двойное приглашение > в R. Я не знаю об этом, извините. Я оставлю комментарии ниже, если это кому-то будет полезно...)

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

например init_bash.sh может содержать export PS1="\n\u@\h \w $ " для простой неокрашенной подсказки.

См. C-h f shell RET для получения дополнительной информации.

person phils    schedule 25.07.2010
comment
К сожалению, даже с рекомендованным вами дополнением к режиму оболочки я все еще получаю искаженный текст всякий раз, когда обращаюсь к справке в удаленном процессе R. - person sheed03; 26.07.2010
comment
Я предполагаю, что это все-таки не цветовые коды ansi :/ Извиняюсь за неправильное направление. Единственное другое предложение, которое я могу сделать, это посмотреть, можете ли вы попросить R не окрашивать его вывод? (ищите справочную страницу для «цвета») - person phils; 26.07.2010