[Emacs] 터미널 Emacs에서 Mac OS X 클립보드 이용하기
Mac OS X 의 Terminal.app에서
그런데 마우스를 이용하면 매우 많은 라인의 내용을 복사할 수가 없다. 스크롤이 안되니까.
해법을 찾아봤다. 여러가지 방법에 대한 이야기가 있지만 Mac OS X에서는 잘 안되는 것 같다.
그러다 pbcopy와 pbpaste를 이용해 확장하는 방법을 찾게 되었다.
외부 유틸리티를 이용하기 때문에 느린 시스템에선 약간의 느린 현상이 있겠지만 크게 우려할 만한 정도는 아닌 것 같다.
참고원문: http://www.lingotrek.com/2010/12/integrate-emacs-with-mac-os-x-clipboard.html
emacs -nw
옵션으로 바로 터미널에서 이용 중일 때 복사/잘라내기/붙이기에 좀 문제가 있는 편이다. 외부에서 복사한 내용을 Emacs에 붙여 넣을 때는 CMD-V 로 붙여넣으면 되지만, Emacs의 내용을 복사해서 외부 창에 붙여 넣으려면 마우스로 드래그 해서 CMD-C 로 복사해 내는 방법이 기본적이다.그런데 마우스를 이용하면 매우 많은 라인의 내용을 복사할 수가 없다. 스크롤이 안되니까.
해법을 찾아봤다. 여러가지 방법에 대한 이야기가 있지만 Mac OS X에서는 잘 안되는 것 같다.
그러다 pbcopy와 pbpaste를 이용해 확장하는 방법을 찾게 되었다.
(defun mac-copy () (shell-command-to-string "pbpaste")) (defun mac-paste (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 'mac-paste) (setq interprogram-paste-function 'mac-copy)이 코드를 .emacs에 적용하면 이 후 부터 Emacs의 C-w / M-w / C-y 가 OS X의 클립보드와 연동되게 된다. (정확히 말해서 kill-ring을 이용하는 모든 함수에 적용된다.)
외부 유틸리티를 이용하기 때문에 느린 시스템에선 약간의 느린 현상이 있겠지만 크게 우려할 만한 정도는 아닌 것 같다.
참고원문: http://www.lingotrek.com/2010/12/integrate-emacs-with-mac-os-x-clipboard.html
댓글