Domanda

Io uso Emacs in remoto utilizzando X-Server in un client Windows e server Linux. Ho notato che posso fermare utilizzando Ctrl-Z e digitare fg 1 per farlo funzionare di nuovo. C'è qualche modo che io sono riuscito a farlo fermare sulla macchina che io sono, e quindi accedere in una macchina diversa e iniziare da dove avevo lasciato? Quando inizio una nuova sessione ssh, il lavoro emacs non è associato al mio terminale. Ci deve essere qualche modo per "rubare" esso.

Inoltre, forse c'è una funzione di Emacs che farà fondamentalmente la stessa cosa. Tuttavia, credo che la chiusura e la riapertura di tutti i miei file e buffer prenderei un bel po '.

È stato utile?

Soluzione

Ampliando l'idea di utilizzare emacsclient , si può guardare a ciò che ciò che qualcuno ha fatto per risolvere il problema di la modifica di un file da una macchina diversa da quella in cui (s) ha iniziato a correre Emacs .

A partire dal Emacs 23, è possibile eseguire emacsclient nelle finestre di terminale utilizzando l'opzione -nw.

Altre soluzioni si potrebbe desiderare di provare sono da usare:

  1. gnu schermo
  2. VNC

Per anni ho usato schermo per "collegare" e "staccare" da un terminale virtuale che suona come il vostro modello di utilizzo. Se avete la possibilità di utilizzare la grafica ... VNC è davvero grande, basta fare il vostro lavoro in una sessione VNC e connettersi ad esso qualsiasi macchina.

E la tua ultima idea è già implementata dal pacchetto desktop (che viene fornito in bundle con Emacs). Date un'occhiata alla pagina wiki di gestione delle sessioni, che comprende altre alternative al desktop, come pure come add-on per il tavolo per caricare pigramente file.

Altri suggerimenti

È possibile eseguire emacs come un server, e utilizzare emacsclient di connettersi ad esso. È possibile aprire più connessioni allo stesso server Emacs, tramite ttys o X11.

Nel fare questo, C-X C-C si chiude la connessione, e lasciare il server in esecuzione.

Un modo semplice per fare questo invocando emacs come segue. In questo modo la connessione al server, se uno è in esecuzione, o crearne uno.

emacsclient --alternate-editor="" -c

A volte sarò al lavoro e devono correre fuori dalla porta lasciando la mia sessione di Emacs come era. Più tardi, io aprirò un'istanza di Emacs per la stessa macchina (di solito usando SSH remoto) e scoprire che non ho i file aperti in Emacs. Ora la buona notizia. Emacs consente di "rubare" i file utilizzando M-x recover-this-file. Vi consiglio una delle soluzioni di Trey se è possibile pianificare in anticipo. In caso contrario, è possibile utilizzare questa tecnica recuperare file per mantenere il progresso in movimento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top