emacs copyr et coller

Comment puis-je copyr à partir d'emacs et coller dans une autre instance d'emacs ou ailleurs?

Si je fais C-space , Mw , puis Cy , je ne peux coller que dans l'instance ouverte d'Emacs. Si je navigue vers une autre window Emacs ou en dehors d'Emacs, Crtl + v ne fait rien ou coller quelque chose que j'ai copié qui n'était pas dans Emacs.

Je cherche une solution pour mettre à jour le script init lisp ( ~/.emacs ). Je ne veux pas changer de programme. Pour l'instant, je l'ai dans mes .emacs mais cela ne semble pas faire l'affaire.

 ;; Copy and paste between Emac instances (setq x-select-enable-clipboard t) (setq interprogram-paste-function 'x-cut-buffer-or-selection-value) 

Si vous n'utilisez pas emacs en mode X, il n'a pas access au presse-papiers X, vous ne pouvez donc pas copyr / coller avec d'autres applications X. Vous devrez utiliser la fonction copyr / coller de votre xterm à la place.

Pour copyr / coller entre différentes sessions emacs, la méthode emacs consiste à ne pas exécuter plusieurs sessions. Au lieu de cela, vous pouvez ouvrir des frameworks sur différents terminaux qui sont tous liés à la même session, de sorte qu'ils partagent le même anneau de destruction. Pour ce faire, utilisez Mx server-start dans l'instance principale, puis utilisez emacsclient -t pour ouvrir une nouvelle image dans un autre terminal.

Vous pouvez utiliser l'onglet Edit pour utiliser la souris (au less dans XEmacs, vous n'avez pas utilisé GNU Emaccs depuis un bon moment).

Je ne suis pas un user d'emacs, mais si vous travaillez en dehors d'un environnement graphique, vous pouvez utiliser le démon de souris ( gpm ) à usage général sur linux et je devinerais d'autres * nixes. La plupart des dissortingbutions sont disponibles sous forme de package, il vous suffit donc de l'installer et de démarrer le service.

Vous pouvez couper et coller dans un VC de cette façon avec une souris (je pense que le button 1 est sélectionné, le button 2 est collé – il n'y a pas de menu contextuel, cela prend un peu de time pour s'y habituer). Vous pouvez, en fait, copyr et coller sur les VC. Il fonctionne avec des applications ncurses complexes comme emacs comme vim.

Pour avoir access à l'anneau de destruction d'Emacs, je ne sais pas , mais si vous le savez , dites-le nous, et je serais très reconnaissant. Mais il y a d'autres choses que je sais qui pourraient vous aider.

Il n'est pas vrai que vous ne pouvez pas accéder au presse-papiers X dans le Linux VT / tty / console.

Découvrez ces alias, comme ils sont affichés lorsque j'utilise where dans zsh:

 xi: aliased to xclip -d ":0" -selection clipboard xo: aliased to xclip -d ":0" -selection clipboard -o 

J'ai aussi mis la partie xo dans un script (appelé pst ), afin de coller de X à Emacs.

 #!/bin/zsh CLIP=`xclip -d ":0" -o -selection clipboard` CLIP_LEN=`echo -n $CLIP | wc -c` echo "(set-variable '*clip-len* $CLIP_LEN)" > ~/.clip_len echo -n $CLIP 

Ensuite, dans Emacs:

 ;; clipboard (setq *clip-len* 0) (defun pst () "Inserts the X clipboard (xclip -d ':0' -o -selection clipboard) at point. `M-1' (the '(1)) to insert in the current buffer." (interactive) (shell-command "/home/user_name/scripts/pst" '(1)) (load-file "/home/user_name/.clip_len") (forward-char *clip-len*) ) 

Maintenant, pour get la communication Emacs-Emacs (et je conviens que plusieurs instances ne sont pas optimales), s'ils partagent l'access à un file, comment l'utiliser en configurant des fonctions comme:

 (defun write-to-file-clipboard () "Write the region to `~/.fclipboard.txt'" (interactive) (write-region (region-beginning) (region-end) "~/.fclipboard.txt") ) 

Ensuite, procédez de la même manière pour append-to-file , insert-file , etc., puis configurez les raccourcis et / ou les alias (Emacs) pour un access rapide.

Ce n'est évidemment pas l'anneau de tuer d'Emacs mais au less je les ai trouvés très utiles comme une "prochaine meilleure chose".

Cette question a été répondue ici . La réponse liée comprend une discussion (ci-dessus) et quelques extraits de code pour permettre l'interopérabilité entre le presse-papiers d'emacs et l'interface graphique, presse-papiers X, même en exécutant emacs-nox ou emacs -nw .