vim 및 시스템 클립 보드


9

파일을 분류하고 중간 버튼 또는 Shift- 삽입으로 텍스트를 복사하여 붙여 넣을 수 있습니다.

vim에서 텍스트를 복사하여 시스템 클립 보드에서 붙여 넣는 방법은 무엇입니까?


때로는 sed -n5,10p5-10 행을 인쇄하여 vim이 마우스에 반응하지 않고 더 쉽게 복사하여 붙여 넣을 수 있습니다.
grantbow

실제로 vim 내부에서 명령은 다음과 같습니다:!sed -n 5,10p %
grantbow

모든 의견과 답변에 감사드립니다. xclip은 때때로 유용합니다. @ sergiy-kolodyazhnyy. 다른 컴퓨터에서 작업 할 때 때로는 어떤 vim이 설치되어 있는지 제어 할 수 없지만 @muru의 답변을 확인하는 지침을 갖는 것이 @ ashutosh-tripathy 덕분에 도움이됩니다. 필요할 때 기억하기 위해 vim register 명령을 더 자주 사용해야합니다. 위의 질문에서 언급했듯이, 빨리하고 싶고 파일이 작 으면 vim 내부의 명령은 다음과 같습니다:!cat %
grantbow

답변:


12

당신은 함께 빔이 필요 clipboard하고 xtermclipboard. 우분투에서 컴파일 기능, 이들은 정력 GUI 패키지 (에서만 사용할 수 있습니다 vim-gnome, vim-gtk, vim-athena, 등).

이 중 하나를 설치하면 클립 보드 레지스터 ( *+)에 복사하여 붙여 넣을 수 있습니다 . Vi와 Vim 에 대한 매우 유익한 게시물에서 :

들어 X11 시스템 (. 즉, 기반 리눅스 와 대부분의 다른 UNIX -like 시스템) 서로 독립적이 클립 보드는, 거기를 :

  • 기본-선택시 복사되며 마우스 가운데 버튼으로 붙여 넣을 수 있습니다.
  • CLIPBOARD-(보통)로 복사하고 ( MS Windows와 유사)로 ^C붙여 넣습니다 ^V.

Vim에는 다음 클립 보드에 해당하는 2 개의 특수 레지스터가 있습니다.

  • *PRIMARY를 사용합니다. 니모닉 : S 타르입니다 (복사 - 온에 대한 선출 당선자)
  • +CLIPBOARD를 사용합니다. 니모닉 : CTRL + C (공통 키 바인드의 경우)

레지스터로 복사하려면 복사 명령 ( y)과 "레지스터 이름 ( *예 :)을 선행합니다 . "*y다음 붙여 마우스 가운데 버튼을 클릭하거나, "+yShiftInsert붙여 넣기 할 수 있습니다.


3

질문 에서 매우 흥미로운 해결책이 나온다 . xclip을 설치 한 다음 명령의 출력을 xclip ( cat file | xclip -selection clipboard예 :)으로 파이프 한 다음 아무 곳에 나 붙여 넣습니다 (터미널 사용의 경우 Ctrl ShiftV ). 이제 실제로 해당 명령을으로 단축 할 수 있다는 것이 밝혀졌습니다 xclip -sel clip. 이는 매뉴얼 페이지 또는 예제를 읽으면 명확하지 않습니다.


2
또 다른 방법은 이 플러그인 과 함께 screen 또는 tmux를 사용하는 것입니다 . 어쨌든 무언가를 설치해야합니다.
muru

x 서버에서 사용되는 실제 클립 보드는 무엇입니까? 에서 아무 것도 찾지 /dev못했지만 텍스트는 여전히 어딘가에 있습니다.
Sergiy Kolodyazhnyy

나는 항상 그것이 메모리에 있다고 가정했습니다. 그래도 유닉스와 리눅스 에게는 좋은 질문 인 것 같습니다 .
muru

3

내 vim이 클립 보드를 지원하지 않기 때문에 문제가 발생했습니다 .

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard

vim-gnome (클립 보드를 지원하는)을 설치 한 후 다시 확인했습니다.

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard

이제 "+ y 및"+ p를 각각 사용하여 복사하고 붙여 넣을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.