it-swarm-ko.tech

vim에서 외부 프로그램으로 텍스트를 복사하는 방법은 무엇입니까?

Vim에서 일부 텍스트를 복사하여 붙여 넣으려고합니다. 시각 모드로 들어가기 위해 v를하고, 일단 내 블록을 선택하면 y를하고 있습니다.

P가 텍스트를 붙여 넣기 때문에 텍스트를 vim의 클립 보드에 복사하는 것으로 보입니다. 그러나 다른 프로그램 (예 : Chrome)에서는 마우스 오른쪽 버튼을 클릭하여 붙여 넣기가 올바른 텍스트를 붙여 넣지 않습니다. 올바른 클립 보드에 텍스트를 어떻게 복사합니까?

91
ripper234

다음은 vim --version은 (는) +xterm_clipboard 기능. 그렇지 않으면 추가 패키지를 설치하거나 해당 기능이 추가 된 vim을 다시 컴파일해야합니다.


실제로 두 가지 옵션이 있습니다.

"+y

"일반적인"클립 보드 버퍼에 복사 (Ctrl + V를 사용하여 붙여 넣기, 마우스 오른쪽 단추를 클릭 한 후 "붙여 넣기"등을 선택할 수 있음)

"*y

x11 선택에 복사-중간 클릭을 사용하여이 버퍼에서 붙여 넣을 수 있습니다.

"*"+ 두 가지 방법으로 작업하십시오. 다른 응용 프로그램에서 일부 텍스트를 선택한 경우 "*p 그리고 일부 텍스트를 복사 한 경우 (예 : Ctrl-C 사용) "+p.

70
Hamish Downer

Vim> = 7.3.74를 사용하는 경우 실제로 이것을 vimrc에 넣을 수 있습니다.

set clipboard=unnamedplus

자동으로 + 기본적으로 버퍼 (시스템 클립 보드). 그런 다음 yank (복사)하려면 일반 y 명령 등을 사용하십시오.

d과 같은 명령이 작동하는 텍스트를 기본 버퍼에 넣으면이 동작이 상당히 성가신 것으로 나타났습니다. 즉, 빠른 dd을 수행하고 인터넷에서 줄을 붙여 넣을 수 없었습니다.

35
Reid

shift를 누른 상태에서 키를 누르고 마우스 커서로 텍스트를 선택하십시오.
텍스트가 클립 보드에 복사됩니다.

이것은 클립 보드에 from 을 vim에 붙여 넣을 때도 작동합니다.

분명히 이것은 vim와 같은 터미널에서 xterm에서 작동합니다.

31
Andrew Stacey

표준 "+gP"+y 명령을 사용하기가 매우 어렵다는 것을 알았습니다. 그래서 클립 보드에 king 거리기 위해 Ctrl-Y와 클립 보드에서 붙여 넣기 위해 Ctrl-P를 다시 그렸습니다. 이것을 .vimrc에 추가하십시오

nnoremap <C-y> "+y
vnoremap <C-y> "+y
nnoremap <C-p> "+gP
vnoremap <C-p> "+gP
11
Bernhard Heijstek

신경 쓰지 마라. 나는 대답을 찾았다-그것은 vim의 메뉴에 쓰여있다.

"+y

매우 직관적입니다.

6
ripper234

비 독특한 답변을 추가하는 방법 : Ctrl+Shift+C를 사용하여 Ubuntu의 시스템 클립 보드에 복사 할 수 있습니다 (터미널 에뮬레이터에서 기능이 제공되는 경우 그놈 터미널에서 제공). Ctrl+Shift+V는 다른 터미널 창에 붙여넣고 일반 Ctrl+V는 GUI 앱에 붙여 넣습니다.

또한 터미널에서 텍스트를 선택한 다음 마우스 가운데 버튼을 클릭하면 X11 클립 보드에서 붙여 넣습니다.

4
crazy2be

Shift 키를 누른 채로 복사 할 텍스트를 마우스로 선택하십시오.

그런 다음 CTRL + v.

내 우분투 16.04의 터미널에서 작동합니다. gvim 및 다른 시스템에 대해 확실하지 않습니다.

enter image description here

4
Andrzej Rehmann

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를 각각 사용하여 복사하고 붙여 넣을 수 있습니다.

3

기본적으로 vim의 라이트 버전을 설치하면 +xterm_clipboard 기능 사용 (vim --version | grep xterm), *+는 vim 외부에 등록합니다.

이를 활성화하려면 vim을 직접 컴파일하거나 사전 활성화 된 vim 버전을 설치해야합니다. vim-gnome을 사용했습니다 : Sudo apt-get install vim-gnome. vim --version | grep xterm, 이제 +xterm_clipboard.

이제 +* 그리고 작동합니다.

2
laughing_man

추가하기 만해도 작동하는 경우 vim을 감싸는 터미널을 전환하십시오 (터미널에서 vim을 사용하는 경우). 예를 들어, gnome-terminal에서 액세스 할 수 있지만 guake를 통해 클립 보드에 액세스 할 수 없습니다.

0
gc5