Kiedy wycinam (zabijam) tekst w Emacsie 22.1.1 (w jego własnym oknie na X, w KDE, na Kubuntu), nie mogę go wkleić (szarpnąć) w żadnej innej aplikacji.
emacs
copy-paste
memius
źródło
źródło
Odpowiedzi:
Uważajmy na nasze definicje tutaj
kill-ring-save
(zwykle związanyM-w ).yank
(zwykle związany C-y).W moim przypadku (w GNOME):
Aby kopiowanie systemowe działało z wklejaniem Emacsa, a kopiowanie Emacsa z wklejaniem systemowym, musisz dodać
(setq x-select-enable-clipboard t)
plik.emacs
. Albo spróbujMyślę, że jest to całkiem standardowe zachowanie współczesnego Uniksa.
Ważne jest również, aby zauważyć (chociaż mówisz, że używasz Emacsa w osobnym oknie), że kiedy Emacs działa w konsoli, jest on całkowicie oddzielony od systemu i X-clipboardów: wycinanie i wklejanie w tym przypadku jest pośredniczone przez terminal . Na przykład „Edycja-> Wklej” w oknie terminala powinno działać dokładnie tak, jakbyś wpisał tekst ze schowka do bufora Emacsa.
źródło
META-X set-variable RET select-enable-clipboard RET t
lub(setq select-enable-clipboard t)
Wstaw do swojego
.emacs
pliku:źródło
emacs -nw
, używam własnych skrótów terminala; Shift-Ctrl-X, aby wyciąć (zabić) tekst i Shift-Ctrl-C, aby skopiować.emacs -nw
do poziomo podzielonych okien tmux.Wklejam to w moim .emacs:
Następnie w zasadzie nie mam problemów z wycinaniem i wklejaniem czegokolwiek w Emacsie do jakiejkolwiek innej aplikacji X11 lub Gnome.
Bonus: aby te rzeczy działy się w Emacs bez konieczności przeładowywania całego pliku .emacs, wykonaj Cx Ce kursorem tuż po zamknięciu każdego z tych wyrażeń w buforze .emacs.
Powodzenia!
źródło
Symbol’s function definition is void: x-cut-buffer-or-selection-value
Trudność z kopiowaniem i wklejaniem w Emacsie polega na tym, że chcesz, aby działał niezależnie od wewnętrznego zabijania / szarpania i chcesz, aby działał zarówno w terminalu, jak i w interfejsie użytkownika. Istnieją solidne rozwiązania dla terminala lub interfejsu GUI, ale nie obu. Po zainstalowaniu xsel (np.
sudo apt-get install xsel
), Oto co robię, aby skopiować i wkleić, aby je połączyć:źródło
Zakładam, że przez emacs masz na myśli Emacsa pod X (tj. Nie w oknie terminala).
Istnieją dwa sposoby:
Dostępne operacje na schowku:
źródło
Jest artykuł EmacsWiki, który wyjaśnia niektóre problemy z kopiowaniem i wklejaniem pod X oraz jak go skonfigurować do pracy.
źródło
Działa to
M-w
w systemie Mac OSX. Po prostu dodaj do swojego pliku .emacs .Źródło https://gist.github.com/the-kenny/267162
źródło
Poniższy kod, zainspirowany @ odpowiedź RussellStewart jest powyżej, dodaje wsparcie dla X-primary i X-średnie, zastępuje
region-active-p
zuse-region-p
pokryć przypadku pustego obszaru, nie powróci cicho jeśli Xsel nie został zainstalowany (zwraca komunikat o błędzie), i zawiera funkcję "wytnij" (emacs Cy, windows Cx).źródło
Używam następujących, na podstawie innych odpowiedzi tutaj, do tworzenia
C-x C-w
iC-x C-y
kopiowania i wklejania zarówno na Macu, jak i na Linuksie (jeśli ktoś zna wersję dla Windowsa, możesz ją dodać). Zwróć uwagę, że w systemie Linux będziesz musiał zainstalować xsel i xclip z menedżerem pakietów.źródło
xclip
do wklejania zawartości schowka, używającxclip -o
. Może to być przydatne dla osób, które już mająxclip
i nie chcą instalować innego programu do kopiowania i wklejania.Hmm, jakiej platformy i jakiej wersji emacsa używasz? Z GNU Emacs 22.1.1 w systemie Windows Vista działa dobrze.
Jeśli, przez przypadek, robisz to z Windows do Linuksa przez przeglądarkę RealVNC, upewnij się, że używasz najpierw "vncconfig -iconic" na Linuksie .....
źródło
Zawsze używam szybkiego wklejania - przeciągnij zaznaczenie w emacsie, naciśnij środkowy przycisk myszy w oknie docelowym.
(Odnośnie do Kate, rozumiem, że jesteś na Linuksie lub podobnym i prawdopodobnie używasz emacsa w X w taki czy inny sposób).
źródło
Możesz chcieć określić, jakiej platformy używasz. Czy działa na Linuksie, Uniksie, Macosxie, Windowsie, MS-DOS?
Uważam, że w przypadku okien powinno działać. W przypadku MacOSX zostanie dodany do schowka x-windows, co nie jest tym samym, co schowek macosx. W przypadku Linuksa zależy to od twojego stylu menedżera okien, ale uważam, że x-windows radzi sobie z tym w przyjemny sposób na większości z nich.
Więc proszę sprecyzować.
źródło
Używam dobrego narzędzia terminalowego (PuTTY w systemie Windows, Konsole lub Terminal w systemie Linux), które ma wbudowane funkcje kopiowania.
W PuTTY zaznaczasz wybrany tekst myszą, a następnie wklejasz go w innym miejscu. Kliknięcie prawym przyciskiem myszy w oknie programu PuTTY powoduje wklejenie zawartości buforu kopiuj / wklej systemu Windows.
W Konsoli lub Terminalu w systemie Linux podświetlasz to, co chcesz, a następnie naciśnij Shift + Ctrl + C, aby skopiować i Shift + Ctrl + V, aby wkleić.
W kompilacji emacsa win32, yankowanie tekstu umieszcza go w buforze kopiuj / wklej .. przez większość czasu.
W systemie Mac OS X czortony z klawiszem Apple działają dobrze, ponieważ Terminal je przechwytuje.
Nie ma bezpośredniego sposobu, aby to zrobić w linii poleceń, ponieważ powłoka nie utrzymuje buforu kopiuj / wklej dla każdej aplikacji. bash robi zachować kopię / wklej bufor dla siebie, a domyślnie emacs ^ K / ^ y skróty pracy.
źródło