जवाबों:
वर्तमान क्षेत्र को OS X क्लिपबोर्ड पर कॉपी करने के लिए, आप उपयोग कर सकते हैं
(shell-command-on-region (region-beginning) (region-end) "pbcopy")
उलटा, ओएस एक्स पेस्ट बफर को इमैक किल रिंग में कॉपी करते हुए अनुशंसित नहीं है। किल रिंग और क्लिपबोर्ड बहुत अलग संरचनाएं हैं और क्या, क्या वास्तव में, एक क्लिपबोर्ड को मारने की अंगूठी में धकेलना चाहिए इसका कोई अच्छा जवाब नहीं है। फिर भी, आप pbpaste
वर्तमान क्लिपबोर्ड सामग्री प्राप्त करने के लिए मैन्युअल रूप से चला सकते हैं।
इसे इसमें जोड़ें ~/.emacs
:
(defun pbcopy ()
(interactive)
(call-process-region (point) (mark) "pbcopy")
(setq deactivate-mark t))
(defun pbpaste ()
(interactive)
(call-process-region (point) (if mark-active (mark) (point)) "pbpaste" t t))
(defun pbcut ()
(interactive)
(pbcopy)
(delete-region (region-beginning) (region-end)))
(global-set-key (kbd "C-c c") 'pbcopy)
(global-set-key (kbd "C-c v") 'pbpaste)
(global-set-key (kbd "C-c x") 'pbcut)
यदि आप iTerm 2 में Emacs का उपयोग करते हैं, तो आप वरीयताओं में प्रमुख संयोजनों को भी हटा सकते हैं:
फिर कुछ इस तरह से जोड़ें ~/.emacs
:
(global-set-key (kbd "<f13> c") 'pbcopy)
(global-set-key (kbd "<f13> v") 'pbpaste)
(global-set-key (kbd "<f13> x") 'pbcut)
यहाँ डैनियल नेल्सन द्वारा OS X क्लिपबोर्ड को Emacs की किल-रिंग को एकीकृत करने का एक समाधान है: https://github.com/wesen/emacs/blob/master/pbcopy.el
लेखक की टिप्पणियाँ:
मैक OSX टर्मिनल से Emacs चलाते समय क्लिपबोर्ड के साथ इंटरैक्ट करने के लिए किल-रिंग को सक्षम करता है (पूर्ण किल-रिंग कार्यक्षमता को खोए बिना)। सभी मैंने किया था संशोधित था
xclip.el
के साथ काम करने के लिएpbcopy
औरpbpaste
। असली धन्यवाद xclip.el के लेखक लियो शिदाई लियू पर जाएं।
निम्नलिखित सिर्फ काम करता है, इसे यहाँ से मिला :)
(defun copy-from-osx ()
(shell-command-to-string "pbpaste"))
(defun paste-to-osx (text &optional push)
(let ((process-connection-type nil))
(let ((proc (start-process "pbcopy" "*Messages*" "pbcopy")))
(process-send-string proc text)
(process-send-eof proc))))
(setq interprogram-cut-function 'paste-to-osx)
(setq interprogram-paste-function 'copy-from-osx))
OS X के साथ शामिल Emacs का संस्करण इस कार्यक्षमता को प्रदान करने के लिए बहुत पुराना है।
सौभाग्य से आप emacs को एक ऐसे संस्करण में अपडेट कर सकते हैं जो आपके क्लिपबोर्ड के साथ एकीकृत है: http://emacsformacosx.com
मेरा मानना है कि आप अपडेट के बाद emacs में पेस्ट करने के लिए Ctrl+ Yका उपयोग करते हैं।
pbcopy
और pbpaste
दोनों टर्मिनल अनुप्रयोग हैं; कोई भी अन्य टर्मिनल ऐप वे क्या कर सकता है, या सीधे उन्हें कॉल कर सकता है।
pbcopy
Emacs कट और कॉपी के लिए कांटे की शकल है। क्या यह संभव है?
मुझे यह पोस्ट वास्तव में उपयोगी लगी (2 कार्यों को परिभाषित करना और आपकी ~ / .emacs फ़ाइल में उन्हें शॉर्टकट असाइन करना)।
अपनी .emacs फ़ाइल में उन पंक्तियों को जोड़ने के बाद, जब तक आप एक नया शेल सत्र (टैब / विंडो) नहीं खोलते, आपके पास उन शॉर्टकट तक पहुँच नहीं होगी। परिवर्तन लागू होने दें।
आप टेक्स्ट टर्मिनल में Emacs xclip-mode
को xclip
पैकेज द्वारा उपलब्ध कराकर सक्षम करते हुए क्लिपबोर्ड के साथ इस तरह की बातचीत को पारदर्शी रूप से प्राप्त कर सकते हैं जिसे आप GNU ELPA (यानी के माध्यम से M-x package-list-packages RET
) से इंस्टॉल कर सकते हैं ।
इसी तरह के सवाल और जवाब के लिए /emacs/10900/ भी देखें ।
/usr/bin/emacs
निष्पादन योग्य का उल्लेख कर रहे हैं जो Apple द्वारा OSX के साथ बंडल किया गया है और जो मनमाने ढंग से पाठ टर्मिनल तक सीमित है?