는 방법에서 텍스트를 복사 Emacs 다른 응용 프로그램에서 리눅스

StackOverflow https://stackoverflow.com/questions/64360

  •  09-06-2019
  •  | 
  •  

문제

When I cut(죽)텍스트에서 이맥스 22.1.1(에서 자신의 창 X,KDE,에학),를 붙여 넣을 수 없습니다(꺼낼)에는 다른 응용 프로그램.

도움이 되었습니까?

해결책 2

삽입으로 다음의 .emacs 파일:

(setq x-select-enable-clipboard t)

다른 팁

자심으로 우리가 여기에

  • 이맥스 복사 명령 kill-ring-save (일반적으로 바 M-w).
  • A 스 복사 은 당신이 일반적으로 눌러서 C-c (또는 편집"을 선택->"복사에서 응용 프로그램 window).
  • X 복사 은"육체적으로"강조하는 텍스트로는 마우스 커서입니다.
  • Emacs 붙여넣기 명령 yank (일반적으로 바 C-y).
  • A 시스템 붙여넣기 은 당신이 일반적으로 눌러서 C-v (또는 편집"을 선택 붙여 넣기"응용 프로그램에서 window).
  • X 붙여넣기 가 누르면"center 마우스 단추를"(시뮬레이션을 누르면 왼쪽과 오른쪽 마우스 버튼을 함께).

내 경우에는(그놈):

  • 모두 Emacs 및 시스템 복사본을 일반적으로 작동 X 붙여 넣습니다.
  • ×사본을 일반적으로 작동 Emacs 붙여 넣습니다.
  • 시스템 사본을 작품으로 Emacs 붙여넣기 및 이맥스 복사본을 작품으로 시스템을 붙여야 합 추가 (setq x-select-enable-clipboard t) 귀하의 .emacs.도

    META-X set-variable RET x-select-enable-clipboard RET t
    

내 생각에 이것은 매우 표준은 현대적인 유닉스는 동작입니다.

그것은 또한 중요한 참고(그러나 당신은 당신을 사용하여 이맥스는 별도의 창에서)는 경우 이맥스에서 실행하는 콘솔,그것은 완전히 이혼 시스템에서 X 클립보드:잘라내어 붙여 넣는 경우가 중재에 의하여 터미널도 있습니다.예를 들어,"Edit->붙여 넣기"터미널 창에 행동해야 하는 것처럼 정확하게 입력한 텍스트를 클립보드에서으로 Emacs 버퍼입니다.

과 함께 어려움에서 복사 및 붙여넣기를 이맥스는 작업을 원하는 독립적으로 내부에서 죽일/확,그리고 당신이 원하는 작동하려면 모두에서 터미널과 gui.기존 있는 강력한 솔루션에 대한 공항이나 또는 gui,만이 발생하지 않도록 주의하십시오.설치 후 xsel(예: sudo apt-get install xsel다)여기에서 내가 무엇을 복사 및 붙여넣기에 대 한 그들을 결합하기:

(defun copy-to-clipboard ()
  (interactive)
  (if (display-graphic-p)
      (progn
        (message "Yanked region to x-clipboard!")
        (call-interactively 'clipboard-kill-ring-save)
        )
    (if (region-active-p)
        (progn
          (shell-command-on-region (region-beginning) (region-end) "xsel -i -b")
          (message "Yanked region to clipboard!")
          (deactivate-mark))
      (message "No region active; can't yank to clipboard!")))
  )

(defun paste-from-clipboard ()
  (interactive)
  (if (display-graphic-p)
      (progn
        (clipboard-yank)
        (message "graphics active")
        )
    (insert (shell-command-to-string "xsel -o -b"))
    )
  )

(global-set-key [f8] 'copy-to-clipboard)
(global-set-key [f9] 'paste-from-clipboard)

나는 이에.emacs:

(setq x-select-enable-clipboard t)
(setq interprogram-paste-function 'x-cut-buffer-or-selection-value)

난 이후에는 기본적으로 문제 없이 붙여넣기에서 앞뒤로에서 아무것도 Emacs 다른 X11 또는 그놈 응용 프로그램.

보너스:이러한 것들에서 일어나는 이맥스하지 않고 다시 로드의 전체입니다.emacs,하 C-x C e 으로 커서를 그냥 가까운 후 괄의 각 사람의 식니다.emacs 버퍼입니다.

행운을 빕니다!

나는 가정으로 이맥스는 의미를 이맥스에서 X(ie 안에 있지 않 터미널 창에서).

는 두 가지 방법이 있습니다.

  1. (에 적용됩 unix OS 만) 하이라이트를 원하는 텍스트와 함께 귀하의 마우스(이에 복사하는 X 클립보드)다음 중간 클릭하 붙여 넣습니다.
  2. 하이라이트를 원하는 텍스트 그리고"M-x 클립보드를 죽일-링-save" (참고 바인딩할 수 있습니다 이것을 더 쉽 key).그냥 편집"->"붙여 넣기에 좋아하는 응용 프로그램입니다.

클립보드에 사용할 수 있는 작업:

  • 클립보드를 죽이-반지를 저장--복사 에서 선택 이맥스 클립보드
  • 클립보드를 죽이 지역--cut 에서 선택 이맥스 클립보드
  • 클립보드를 꺼낼--에서 붙여넣기 클립보드를 Emacs

는 EmacsWiki 문서 에 대해 설명하는 몇 가지 문제를 복사&붙여넣기서 X 을 구성하는 방법입니다 그래서.

이와 함께 작동 M-w Mac OSX.다만 추가 .emacs 파일입니다.

(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)

https://gist.github.com/the-kenny/267162

아래 코드에 의해 영감을@RussellStewart 의 대답은 위의 추가 지원을 위한 x-기본 및 x-조,대체 region-active-puse-region-p 을 커버의 경우 빈 지역,반환하지 않는 경우 자동으로 xsel 가 설치되지 않았는지(오류 메시지가 반환),을 포함한"cut"기능(emacs C-y,windows C-x)

(defun my-copy-to-xclipboard(arg)
  (interactive "P")
  (cond
    ((not (use-region-p))
      (message "Nothing to yank to X-clipboard"))
    ((and (not (display-graphic-p))
         (/= 0 (shell-command-on-region
                 (region-beginning) (region-end) "xsel -i -b")))
      (error "Is program `xsel' installed?"))
    (t
      (when (display-graphic-p)
        (call-interactively 'clipboard-kill-ring-save))
      (message "Yanked region to X-clipboard")
      (when arg
        (kill-region  (region-beginning) (region-end)))
      (deactivate-mark))))

(defun my-cut-to-xclipboard()
  (interactive)
  (my-copy-to-xclipboard t))

(defun my-paste-from-xclipboard()
  "Uses shell command `xsel -o' to paste from x-clipboard. With
one prefix arg, pastes from X-PRIMARY, and with two prefix args,
pastes from X-SECONDARY."
  (interactive)
  (if (display-graphic-p)
    (clipboard-yank)
   (let*
     ((opt (prefix-numeric-value current-prefix-arg))
      (opt (cond
       ((=  1 opt) "b")
       ((=  4 opt) "p")
       ((= 16 opt) "s"))))
    (insert (shell-command-to-string (concat "xsel -o -" opt))))))

(global-set-key (kbd "C-c C-w") 'my-cut-to-xclipboard)
(global-set-key (kbd "C-c M-w") 'my-copy-to-xclipboard)
(global-set-key (kbd "C-c C-y") 'my-paste-from-xclipboard)

Hmm,어떤 플랫폼에서 어떤 버전의 emacs 을 사용하고 있습니까?GNU Emacs22.1.1Windows Vista 에서 작동합니다.

는 경우,어떤 기회에 의해,당신은 이렇게 윈도우에서 리눅스를 통해 RealVNC 뷰어를 실행하고 있는지 확인"vncconfig-상징에서"리눅스.....

난 항상 사용하여 빠른 붙여넣기--드래그에서 선택 emacs,hit 마우스 가운데 버튼을에서 대상을 창입니다.

(에서 참조트,나는 그것을 당신은 리눅스에서 또는 이와 유사한 아마도를 사용하여 이맥스에서 X 방법 중 하나 또는 다른합니다.)

을 지정할 수 있습니다 어떤 플랫폼을 사용하고 있습니다.그것은 linux,unix,macosx,windows,ms-dos?

내가 믿고 windows 작동합니다.을 위해서라도 그것에 추가할 것입니다 x-windows 클립보드,지 않는 동일한 것으로서라도 클립보드에 있습니다.리눅스에 따라 달라집니다,당신의 맛의 창문 관리자,하지만 믿는 x 윈도우를 처리하는 좋은 방법을 사용합니다.

그래서 지정하십시오.

내가 무엇을 사용하는 것이 좋은 터미널 도구(퍼티는 윈도우에서,여러분의 책임입니다 또는 터미널에서 리눅스)는 복사 시설 내장되어 있습니다.

퍼티에,당신은 당신이 원하는 텍스트 마우스로 붙여넣습니다.에서 마우스 오른쪽 버튼을 클릭 퍼티 창 페이스트의 콘텐츠 윈도우 복사/붙여넣기 버퍼입니다.

에서 여러분의 책임입니다 또는 터미널 리눅스에서,당신은 무엇을 강조하려 다음 Shift+Ctrl+C 에 대한 복사 및 Shift+Ctrl+V 붙여 넣습니다.

Win32 컴파일하의 emacs,잡아당기는 텍스트가에 넣어 복사/붙여넣기 버퍼..대부분의 시간입니다.

Mac OS X,Apple-key chortcuts 잘 작동하기 때문에,터미널 트랩니다.

직접 방식으로 그 일의에서 명령행하기 때문에 포탄을 유지하지 않은 복사/붙여 넣기를 버퍼에 대한 각각의 응용 프로그램.bash 을 유지하는 복사/붙여 넣기를 버퍼에 대한 자체,며,기본적으로,emacs^k/^y 바로 가기를 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top