2011-01-04 6 views
8

Ich fragte vorher how to switch R sessions in ESS, und die Verwendung von C-x C-s hat meinen Workflow erheblich beschleunigt.Wie kann ich R-Sitzungen in ESS umbenennen?

Allerdings, wenn ich mehrere R-Sitzungen (auch nur 3) haben, kann es schwierig sein, auf dem sich zu erinnern ist R, die R:2 ist, und welches ist R:3. Gibt es eine Möglichkeit, ESS, Emacs oder Tramps dazu zu bringen, die verschiedenen r-Sessions basierend auf dem Server/Verzeichnis, in dem R läuft, automatisch zu benennen?

+0

wurde Ihre vorherige Antwort zu erwähnen uniquify revidiert - Sie, dass versucht haben? –

+1

@Nicholas ja, ich habe versucht, uniquify, aber die Sitzungen sind noch 'R' genannt,' R: 2' usw. nicht sicher, warum, auch nach der Lektüre http://www.gnu.org/software/emacs/manual/ html_node/emacs/Uniquify.html –

+1

@David Es sieht so aus, als gäbe es eine wichtige Unterscheidung zwischen Puffernamen und Prozessnamen. AFAIK, uniquify hilft, Puffernamen zu bereinigen. Wenn Sie 'esss-switch-process' ausführen, wählen Sie aus einer Liste von Prozessen, nicht aus Puffern. Basierend auf [dieser Antwort] (http://stackoverflow.com/questions/6474803/emacs-can-i-change-the-name-of-a-started-process) sieht es so aus, als könnten Sie den Namen nicht ändern ein Prozess, so dass du feststeckst. Ich würde aber gerne genau das machen können, was du verlangst! –

Antwort

6

[update]

Neue Versionen von ESS (> 12,09) arbeiten auf Puffer-Namen anstelle der internen Prozessnamen. Jetzt können Sie Ihren minderwertigen Puffer mit M-x rename-buffer umbenennen und das wird das Richtige tun. Sie können auch ess-gen-proc-buffer-name-function konfigurieren, um das automatische benutzerdefinierte Umbenennen von Prozesspuffern beim Start einzurichten.

[/ Update]

R, R: 2 ETK sind die Prozessnamen in ESS. Ich habe diese Frage vor etwa einem Jahr auf der Mailingliste von Ess gestellt. Es scheint, als ob es keine direkte Möglichkeit gibt, dieses Verhalten zu ändern. Es ist ein Emacs-Feature, nicht ESS. Sie können die mit dem Prozess verknüpften Puffernamen ändern, die Prozessnamen bleiben jedoch unverändert.

uniquify ändert Puffer-Namen so weit ich sehen konnte. Und in jedem Fall werden in neueren Versionen von emacs Puffer mit demselben Dateinamen mit Teilpfaden versehen, um sie eindeutig zu machen. Es sieht also so aus, als wäre uniquify in Basis-Emacs für Dateien übernommen worden, aber nicht für andere Sachen wie Proc-Namen.

2

Nicht sicher automatisch umbenennen (und man kann, dass auf der ESS-Mailingliste fragen), aber ich manchmal M-x rename-buffer verwenden, das tut, was es tun soll.

+0

was genau macht das unifying? –

+0

Bitte beachten Sie z.B. dies: http://www.emacswiki.org/emacs/uniquify –

+0

Ich sah das, aber ich habe keinen Effekt der Verwendung von Unify in der Praxis beobachtet. Von dem, was ich verstehe, sollte unififi die Antwort auf meine Frage sein –