2011-01-04 5 views
8

Ho chiesto in precedenza how to switch R sessions in ESS e l'utilizzo di C-x C-s ha velocizzato notevolmente il mio flusso di lavoro.Come rinominare le sessioni R in ESS?

Tuttavia, se ho più sessioni R (anche da un minimo di 3), può essere difficile da ricordare, che il è R, che è R:2, e che è R:3. Esiste un modo per ottenere ESS, Emacs o tramp per denominare automaticamente le diverse sessioni in base al server/directory in cui R sta girando?

+0

La tua risposta precedente è stata modificata per menzionare l'unicità - ci hai provato? –

+1

@Nicholas yes Ho provato uniquify, ma le sessioni sono ancora denominate 'R',' R: 2', ecc. Non so perché, anche dopo aver letto http://www.gnu.org/software/emacs/manual/ html_node/emacs/Uniquify.html –

+1

@David sembra che ci sia un'importante distinzione tra nomi di buffer e nomi di processi. AFAIK, uniquify aiuta a ripulire i nomi dei buffer. Quando si esegue 'ess-switch-process', si sceglie da un elenco di processi, non di buffer. Basato su [questa risposta] (http://stackoverflow.com/questions/6474803/emacs-can-i-change-the-name-of-a-started-process) sembra che tu non possa cambiare il nome di un processo, quindi sei bloccato. Mi piacerebbe essere in grado di fare esattamente quello che stai chiedendo, però! –

risposta

6

[update]

Le nuove versioni di ESS (> 12.09) operano sui nomi tampone al posto dei nomi dei processi interni. Ora puoi rinominare il buffer inferiore con M-x rename-buffer e ciò farà la cosa giusta. È inoltre possibile configurare ess-gen-proc-buffer-name-function per impostare la ridenominazione personalizzata automatica dei buffer di processo all'avvio.

[/ aggiornamento]

R, R: 2 etk sono i nomi di processo in ESS. Ho fatto questa domanda sulla mailing list di un anno fa circa. Sembra che non ci sia un modo semplice per cambiare questo comportamento. È una funzione di emacs non ESS. È possibile modificare i nomi dei buffer associati al processo, ma i nomi dei processi saranno invariati.

Univoca i nomi dei buffer di modifiche come ho potuto vedere. E in ogni caso nelle recenti versioni di buffer di emacs con lo stesso nome di file sono designati con percorsi parziali per renderli unici. Quindi sembra che uniquify sia stato adottato in emac di base per i file, ma non per altre cose come i nomi di proc.

2

Non sicuro su automaticamente rinominato (e si potrebbe chiedere che sulla mailing list ESS) ma a volte uso M-x rename-buffer che fa proprio quello che dovrebbe fare.

+0

cosa fa esattamente uniquify? –

+0

Vedere ad es. questo: http://www.emacswiki.org/emacs/uniquify –

+0

L'ho visto, ma in pratica non ho osservato alcun effetto dell'uso dell'uniforme. Da quello che capisco, univoco dovrebbe essere la risposta alla mia domanda –