2010-07-01 8 views
23

In Emacs, come faccio a copiare una regione di testo (per incollarla in un altro buffer) senza ucciderla (ad esempio: il file da cui voglio copiare viene aperto in lettura- solo modalità, quindi ucciderlo non è un'opzione).Emacs: copia del testo (senza ucciderlo)

+0

Non è una domanda per Super User? (http://superuser.com/) – Chetan

+0

Probabilmente, ma controlla la pletora dei tag emacs http://stackoverflow.com/questions/tagged/emacs in SO vs SU http://superuser.com/questions/tagged/emacs –

+0

Le domande di Emacs sono complicate, vedi http://meta.stackexchange.com/questions/36017/what-site-should-host-questions-about-emacs-keybinding per alcune discussioni in un contesto leggermente diverso. – dmckee

risposta

47

indicarla (C-spazio ad un'estremità della gamma, e spostare verso l'altra estremità) e utilizzare Mw (kill-ring-save):

(kill-ring-salvare BEG END)

Salvare la regione come se fosse stata uccisa, ma non ucciderla.

8

altri due modi:

  • È anche possibile selezionare con il mouse (mouse button-1), che copierà la regione al kill ring.

  • Quando il buffer è di sola lettura, è possibile utilizzare i kill-* routine (C-w e C-k) per copiare la regione/linea al kill ring. Emacs emette un segnale acustico a voi, ma è una caratteristica documentata:

Se il buffer è di sola lettura, Emacs segnale acustico e astenersi dal sopprimere il testo , ma mettere il testo sul ring uccidere Comunque. Ciò significa che è possibile utilizzare i comandi di uccisione per copiare il testo da un buffer di sola lettura.

+0

Il comportamento di selezione negli appunti funziona in X11, ma credo che sia dovuto al fatto che si tratta di un comportamento X11. Oppure funziona anche in altri contesti? – dmckee

+0

@dmckee L'interazione con X è indipendente dal kill-ring. Puoi copiare su X w/out the kill-ring, e puoi mettere le cose sul kill-ring senza X. Ma, generalmente, sono agganciate insieme. Stavo solo descrivendo il comportamento di Emacs, che funziona indipendentemente dal fatto che tu sia in X o meno. –

0

Io uso il comando

M-x append-to-file 

il problema di questo è che se il file che si desidera copiarlo è aperto, è necessario aggiornare la schermata in qualche modo che il nuovo materiale vi appare . Inoltre, le cose che hai copiato andranno alla fine del file che scegli come target.

Si potrebbe anche trovare i comandi

M-x write-region 

e

C-x i (insert-file) 

utile.

Problemi correlati