Vim에서 클립 보드에 복사하는 방법?


752

Vim에서 직접 클립 보드로 복사 할 수 있습니까? yyVim의 내부 버퍼에만 내용을 복사합니다. OS의 클립 보드에 복사하고 싶습니다. Vim에 그러한 명령이 있습니까 아니면 Vim 내에서만 물건을 yan 수 있습니까?


140
중요한 사실을 설명하는 투표 가 적은 답변을 참조하십시오. 먼저 아래 제안 중 하나를 수행하려면 + 클립 보드 기능으로 vim을 컴파일해야합니다! 대부분의 시스템에서는 이것이 기본값이 아닙니다.
Neil Traft

7
@ NeilTraft, 일부 답변은 vim에서 외부 프로그램으로의 파이프 연결을 제안하므로 모든 답변에 + 클립 보드 플래그가 필요하다는 주장은 잘못되었습니다. 미래 독자들을 혼란에서 구하기 위해 지적했습니다.
Hnatt

2
시스템 클립 보드에서 vim paste를 만들고 복사하는 방법에 대한 가능한 복제본 ? (참고 : 다른 질문은 더
새롭지

5
sudo apt-get install vim-gnome 아래 명령을 적용하기 전에 수행했는지 확인하십시오. 그렇지 않으면 잘못된 레지스터 오류가 발생합니다!
Harnirvair Singh

7
여기에 독자의 많은 세트 @Harnirvair은, vim-gnome내가 생각하는 반면, 아마도 과잉하거나 사용할 수없는 자신의 OS / 배포판에 vim-gtk바람직 vim-gtk3여전히 클립 보드에 통합을 (제공하면서, 존재하고 적은 종속성을 당길 가능성이 X11에 여전히 사람들을 위해 적어도; 이 모든 것이 Wayland와 어떻게 상호 작용하는지 잘 모르겠습니다).
underscore_d

답변:


496

*레지스터는이 작업을 수행 할 것입니다. Windows에서 +*동일합니다. 유닉스 간의 미묘한 차이가 존재 +하며 *:

Windows에서 * 및 + 레지스터는 동일합니다. 그러나 X11 시스템의 경우에는 다릅니다. X11 시스템의 경우 *가 선택이고 +는 클립 보드와 같은 컷 버퍼입니다. http://vim.wikia.com/wiki/Accessing_the_system_clipboard

*아마도 당신이 원하는 대부분의 시간 일 *것입니다.

Linux 배포판에서 클립 보드 기능 을 사용하려면 먼저 vim-gtk(일명 gvim) 설치해야 합니다. 비 gtk vim은 일반적으로 X11 지원없이 컴파일되기 때문입니다. 이는 콘솔 전용 시스템 (종종 서버)에서만 실행될 수 있도록하기위한 것입니다.

그리고 king거나 넣을 때 레지스터를 사용하는 방법에 대해 혼란스러워하는 사람들 "은 레지스터 이름을 쓰면 됩니다. 따라서 클립 보드 레지스터에 무언가를 복사하려면 입력 "*y한 다음 입력하십시오 "*p(신용 : Kyle Mathews)


31
Mac OSX Lion에서는 작동하지 않습니다. "다음 *을 누른 후에는 무언가를 할 수 없을 때 Mac에서 소음이 들립니다. Mac에서는 어떻게합니까?
Eddy

62
또한 vim이 클립 보드를 지원하도록 컴파일되었는지 확인해야합니다. 우분투의 기본 vim은 아닙니다. 시도 vim --version|grep .xterm_clipboard -o하고 그렇다면 -지원이 없습니다. ubuntuforums.org/showthread.php?t=1686955에
Sparhawk

66
Linux를 사용하는 경우 +등록 해야합니다 . 예를 들어, 시스템의 클립 보드에 세 줄을 복사하려면 같은 명령을 사용 v3j"+y하여 다른 응용 프로그램에 더 많은 VIM을 붙여 넣을 수 있습니다. *Linux에서 register를 사용하면 다른 VIM 응용 프로그램간에 만 복사하여 붙여 넣을 수 있습니다.
diabloneo

6
Linux에서 * 레지스터는 외부에서 복사하여 붙여 넣을 수 없습니다.
weberc2

11
weberc2 및 diabloneo의 * 레지스터, 선택 클립 보드에 대한 중간 클릭에서 접근이 아닌 메뉴 붙여 넣거나 ^ V
짐 Keener 씨

354

Mac OSX에서

  • 선택한 부분 복사 : 텍스트를 시각적으로 선택하고 (유형 v또는 V일반 모드) 유형:w !pbcopy

  • 전체 파일을 복사 :%w !pbcopy

  • 클립 보드에서 붙여 넣기 :r !pbpaste

대부분의 리눅스 배포판, 당신은 대체 할 수 있습니다 :

  • pbcopy위의 xclip -i -sel c또는xsel -i -b
  • pbpastexclip -o -sel -c또는 xsel -o -b
    - 사용 : 참고 : 이 도구 ( xselxclip) 중 어느 것도 배포판에 사전 설치되어 있지 않은 경우 repos에서 해당 도구를 찾을 수 있습니다.

1
+1 라이온과 함께 일하지만 vim --version-clipboard
roplacebo

26
mavericks osx와 함께 제공되는 vim과 호환됩니다. vimrc에 추가이 vnoremap <C-c> :w !pbcopy<CR><CR> noremap <C-v> :r !pbpaste<CR><CR>매핑을 사용하려면 복사하려는 경우 시각 모드에서 텍스트를 강조 표시하고 Ctrl-c를 눌러 복사하십시오. 시스템 클립 보드에서 붙여 넣으려면 Ctrl-v를 누르십시오.
davidtingsu

7
리눅스에서 이것은 : w! xclip -sel c 또는 : w! xsel -b
trve.fa7ad

4
Linux Ctrl + C 복사의 경우 : ~ / .vimrc에 다음을 추가하십시오.vnoremap <C-C> :w !xclip -i -sel c<CR><CR>
andy

3
허용되는 것보다 훨씬 유용한 답변입니다. 감사합니다!
브라이스 존슨

165

vimrc 파일에서 복사 및 붙여 넣기에 시스템 클립 보드를 자동으로 사용하도록 지정할 수 있습니다.

Windows 세트에서 :

set clipboard=unnamed

Linux 세트 (vim 7.3.74+)에서 :

set clipboard=unnamedplus

참고 : 최신 버전의 Vim을 사용해야 할 수 있습니다.

http://vim.wikia.com/wiki/Accessing_the_system_clipboard


39
참고 사항에 대한 부록으로이 기능을 사용하려면 추가 패키지를 설치해야 할 수도 있습니다. vim에 +xterm_clipboard기능 이없는 경우 (를 실행할 때 표시됨 vim --version). 이것은 나를위한 경우였습니다 (Kubuntu 12.10 실행). vim-gui-common올바른 기능 을 사용하려면 패키지 를 설치해야했습니다 .
Jacob Dalton

4
set clipboard=unnamedvim 7.4의 Mac OS 10.11.6 (El Capitan)에서 작동
Purplejacket

8.0.1800 ~ /의 .vimrc 파일에 다음 명령을 지정하여 2. 마우스를 선택 드래그 1. 복사, 시에라 10.12.6와 VIM-버전 맥에서 작동 set mouse=v하고set clipboard=unnamed
DKB

set clipboard=unnamedMacOS Catalina
Diego Somar에서

답변을 업데이트하고 싶을 수도 있습니다. vim 8.0이 설치된 Ubuntu 18.04에서는 작동하지 않습니다.
Luís de Sousa

124

레지스터 "+를 사용하여 시스템 클립 보드에 복사하십시오 (예 : "+y대신 y).

마찬가지로 "+시스템 클립 보드에서 텍스트를 가져 오기 위해 붙여 넣을 수 있습니다 (예 : "+p대신 p).


"*를 사용하지만 X에는 차이가있는 것 같습니다.
dash-tom-bang

3
@ dash-tom-bang : +/ *차이점은 복사 버퍼 SELECTIONPRIMARY(어떤 atm인지 기억할 수 없음)
Daenyth

2
예, 별표가 선택이고 클립 보드도 선택됩니다.
dash-tom-bang

6
큰 따옴표 문자는 vi 및 vim에서 레지스터 선택기로 사용됩니다.
Amardeep AC9MF

1
기억해야 할 두 가지 단축키 : "+yy(라인을 클립 보드로 복사) 및 "+yy(라인을 선택하여 복사); "+p(클립 보드에서 붙여 넣기) 및 "*p(선택하여 붙여 넣기). "기본적으로 정력의 자신의 내부 레지스터 (방법 레지스터 선택하는 것입니다 yyp참조하지 않고 일하는 것이 어떤 레지스터의 종류). 추신 : Vim의 내부 레지스터에 대한 문자 가 기본적 "&yy으로 켜져 있는지 궁금합니다 yy.

72

@Jacob Dalton은 이것을 주석으로 언급했지만 아무도 vim이 여기에 언급 된 제안을 위해 클립 보드 지원으로 컴파일되어야한다는 대답에서 언급 한 것으로 보이지 않습니다. Mac OS X에서 기본적으로 그렇게 구성되지 않았으며 vim을 다시 빌드해야했습니다. 이 명령을 사용하여 명령 유무를 확인하십시오 vim --version | grep 'clipboard'. +clipboard당신이 좋다는 것을 의미하고 여기에 제안이 당신을 위해 작동하는 반면, -clipboard당신은 vim을 다시 컴파일하고 다시 빌드해야 함 을 의미합니다.


15
또는 직접 컴파일하는 대신 클립 보드 지원으로 이미 빌드 된 vim 패키지를 설치할 수 있습니다. OS X에서 Homebrew의 기능은 다음과 같습니다 brew install vim. 우분투에서는을 사용할 수 있습니다 sudo apt-get install vim-gnome. 기타 (비 GNOME) 리눅스 배포판에서 당신은 오히려 설치할 수 있습니다 vim-gtk또는 vim-athena.
Neil Traft

3
아치 리눅스 I 감사는 제거해야 vim하고 설치 gvim wiki.archlinux.org/index.php/Vim#Installation을
michalzuber

귀하의 답변은 yank가 클립 보드에서 작동하지 않는 이유를 설명하고 있습니다. 귀하의 정보만으로 더 나은 Google 검색을 수행하고 쉽게 사용할 수 있습니다. 그리고 지금 작동합니다. 사람들이 Google 검색을 수행 할 필요가 없도록 @NeilTraft 의견을 답변에 포함시키는 것이 좋습니다.
Yana Agun Siswanto

Mac에서 .vimrc에 brew install vim추가 한 직후 set clipboard=unnamed. source ~/.vimrc명령 행에서 실행하십시오 . .bash_profile에서 추가 alias vim="/usr/local/bin/vim"하고 실행하십시오 source ~/.bash_profile. vim에서 그냥 사용 y하고 p복사 / 붙여 넣기
Dmitry

59

요약하고 초보자를 위해 더 쉽게,

현재 행을 복사하려면 명령 모드에서 다음을 입력하십시오.

"*yy

전체 파일 / 버퍼를 복사하려면 명령 모드에서 먼저를 통해 시작으로 이동 gg한 다음

"*yG

언급 한 바와 같이,이 필요하지 않습니다 +clipboard밖으로 vim --version, 클립 보드 지원의 가용성을 표시하는 -clipboard어떤 것을 의미한다.


1
"*5yy말한다 5 lines yanked클립 보드하지만 아무것도? os / x.
javadba

2
네, + clipboard를 확인했습니다
javadba

nnoremap <leader>c "* in .vimrc은 일종의 "복사"와 잘 작동하며 OS 클립 보드에 복사 할 텍스트 개체를 가져 오는 동작이 뒤 따릅니다.
cpk

고마워, 당신은 내가 그것을 필요로하는 방식으로 정확하게 설명했다.
Symen Timmermans

3
작동하는 것보다 로 설치 vim-gtk하기 위해 설치 했습니다. -clipboard+clipboard"+yy
Lai32290

30

MAC OSX에서 vim을 사용하는 경우 불행히도 이전 버전과 함께 제공되며 클립 보드 옵션을 준수하지 않습니다. 운 좋게도, homebrew는이 문제를 쉽게 해결할 수 있습니다.

vim을 설치하십시오 :

brew install vim

vim의 GUI 버전을 설치하십시오.

brew install macvim

터미널을 다시 시작하여 적용하십시오.


~ / .vimrc에 다음 줄을 추가하십시오
set clipboard=unnamed

이제 vim으로 줄을 복사하여 yy시스템 전체에 붙여 넣을 수 있습니다.



업데이트 된 방법 :

몇 년 동안 설정된 클립 보드 방법에 만족하지 못했습니다. 가장 큰 단점은 x삭제에 사용할 때도 클립 보드 기록을 엉망으로 만드는 것 입니다. 더 좋고 더 우아한 해결책이 있습니다.

  1. vim의 텍스트 [범위]를 시스템 클립 보드에 복사하십시오. (힌트 : 사용 v또는 V제 범위를 선택하고 입력하는 결장 :전 명령을 활성화하기를)
    :[line-range]yank +

    :5,10y * (복사 / 십중팔구 라인 시스템 클립 보드 5-10 *레지스터)

  2. 시스템 클립 보드의 내용을 새 줄에 vim에 붙여 넣습니다.
    :put +

노트 :

  1. 단어 범위를 선택하면 위의 기능이 작동하지 않습니다. 이 시각적 블록을 클립 보드에 저장 하려면 "* y 또는 "+ y 를 사용하십시오. 그러나 이것은 입력하기가 어렵습니다. 나는 여전히 대안을 생각하고 있습니다.
  2. 자세한 내용 : help "* 또는 : help * +
  3. brew info vimvim 설치를위한 다른 옵션을 볼 수 있습니다. 현재로서는 다른 옵션이 없습니다.

--with-override-system-vim해야--with-override-system-vi
maffo

최소한의 시스템에 많은 Xorg 항목을 설치하지 않기 위해 이것을 시도하고 싶지만 뭔가 빠졌습니다. v 모드에서 선택한 다음 ":"를 누르면 "편집기 명령이 아닙니다 [range] yank +"가 표시됩니다.
jeremyjjbrown

29

우분투-2018 년 7 월

레지스터 "+ 를 사용하여 시스템 클립 보드에 복사하십시오 (예 : y 대신 "+ y ).

마찬가지로 "+ 에서 붙여 넣기 하여 시스템 클립 보드에서 텍스트를 가져올 수 있습니다 (예 : p 대신 "+ p ).

또한 vim이 클립 보드를 지원하도록 컴파일되었는지 확인해야합니다. 시험:

vim --version | grep .xterm_clipboard -o 

그리고 -xterm_clipboard (빼기 접두사) 인 경우 지원 하지 않습니다 .

다음은 클립 보드를 지원하는 vim의 작업 버전으로 교체하기위한 지침입니다.

  • $ sudo apt-get purge vim
  • $ sudo apt-get autoremove (시스템에서 불필요한 vim 의존성 패키지를 제거합니다)
  • $ sudo apt-get 설치 vim-gnome

로 다시 vim --version | grep .xterm_clipboard -o확인하면 클립 보드가 사용 가능한지 확인할 수 있습니다 (예 : + xterm_clipboard )

행운을 빕니다.


3
당신은 내 하루 또는 내 달을 만들었습니다. 우분투에서 클립 보드가없는 vim으로 수년간 노력한 후에 놀라운 느낌입니다. arcseldon, 감사합니다 !!
evanrmurphy

위에서 설명한 것 외에, 나는 k 크가 작동하도록 set clipboard=unnamedplus.vimrc파일 을 넣어야 했습니다 . 우분투 18.04를 사용하고 있습니다.
엘리야

23

~ / .vimrc 파일에 클립 보드 시스템이있어 클립 보드 시스템에 복사 할 수 없었습니다.

 if has('mouse')
   set mouse=a
 endif

그러나 다음에이 줄을 추가하면 Ctrl+c 를 선택하여 클립 보드에 선택한 항목을 가져올 수 있습니다.

vmap <C-c> "+y

원래 토론 및 자세한 내용 : set mouse = a enabled로 vim에서 텍스트 복사


3
내 .vimrc에 줄을 추가하지 않았지만 제공 한 링크가 매우 유용했습니다. vim에서 텍스트를 선택하는 동안 Shift 키를 누르고 있으면 시각적 모드로 들어 가지 않고 텍스트를 복사 할 수 있습니다. 감사합니다. +1
Stefan van den Akker

시프트 트릭은 내가 필요한 것입니다. 프롬프트에서 Ctrl + Shift + c를 사용하여 복사하는 터미네이터와 같은 편집기에서도 작동합니다. 처음에 시도한 것입니다. vim과 함께 -xterm_clipboard를 설치했습니다.
앤더스 엘름 그렌

18

나를위한 해결책은 클립 보드 옵션이 포함 된 추가 vim을 설치하는 것이 었습니다. 

sudo apt-get install vim-gnome

3
이것이 우분투 16.04에서해야 할 일입니다. 나는 다른 제안을 성공하지 않고 시도했다. 이것은 가장 쉬운이었고, 나는 + y를 "로 무엇을 기대했다.
스티븐 Eckhoff을

그것은 vimrc 변경없이 매력처럼 작동합니다! 우분투 16.04에서도 유효
makerj

"+y제안은 함께 일 vim-gnome. 리눅스 민트 사용하기 18.2.
Samaursa

14

GVim을 사용하는 경우 다음을 수행 할 수도 있습니다 set guioptions+=a. 이렇게하면 비주얼 모드에서 강조 표시되는 텍스트 클립 보드로 자동 복사가 시작됩니다.
단점 :이 경우 고급 클립 보드 관리자 (이력 포함)는 모든 선택 내역을 얻습니다.


13

여기에 대한 답변 찾을 수 있습니다 아치 위키

Linux의 경우 : 우선을 설치하여 vim 버전에서 클립 보드를 활성화해야합니다 gvim.


다음으로이 줄을 .vimrc파일 에 넣어야 합니다.

set clipboard=unnamedplus


+1, 이제이 단계가 필요하다는 것에 놀랐습니다. 이전의 모든 아치 설치에서 나는 그것을 할 필요가 없었습니다.
Konstantinos

우분투 18.04에서도 작동했으며 tmux에서 실행 중입니다. 감사!
James Klein

10

vim +xterm_clipboard이 데비안에서 기본적으로 옵션과 같이 옵션 없이 컴파일 되고 우분투를 추측하면 선택 또는 전체 버퍼를 데스크탑 클립 보드를 처리하는 외부 프로그램으로 파이프 할 수 있습니다. 위해 xclip(이전에 설치해야 할 수 있음), 명령이 될 것입니다:w !xclip -sel clip


1
이것에 감사드립니다-그것은 우분투에서 나에게 효과가 없었으므로 (우분투 추측이 올바른지 확인하십시오) 나는 그 이유를 몰랐습니다. 이제 나는 -xterm_clipboard때 표시되는 플래그를 볼 수 있습니다 vim --version.
jamesc

이를 통해 훌륭한 클립 보드 지원 소스를 찾을 수 있었습니다
jamesc

9

우분투 터미널에서만 vim에서,

를 눌러 shift + drag mousevim에서 텍스트를 선택한 다음 ctrl + shift + c터미널에서

그런 다음 ctrl + v다른 편집기에서


3
이것은 vim에서 시각적 인 것을 선택하는 것입니다. 전체 파일을 선택하려면 어떻게해야합니까?
Gerep

@Gerep이 방법은 전체 파일 선택에 작동하지 않습니다. vim 터미널에서만 텍스트 섹션을 선택하고 터미널 화면에서 텍스트가 표시되는 위치를 선택하는 것이 좋습니다.
Supawat Pusavanno

1
이것은 텍스트 / 코드 대신 줄 번호, 분할의 버퍼 경계 및 보이는 모든 것을 복사합니다.
Zelphir Kaltstahl

9

xclip을 사용하는 경우 텍스트를 클립 보드에 복사하는 쉬운 방법은 다음과 같습니다.

  1. 복사하려는 양크 텍스트. ( y바닐라 Vim의 명령)
  2. 입력 :call system("xclip -selection clipboard", @")

:call system()터미널 명령을 실행합니다. 첫 번째 명령, 두 번째 인수는 해당 명령으로 파이프하는 것입니다. 예를 들어 :echom system("head -1", "Hello\nWorld")Hello (일부 패딩 포함) 를 반환합니다. echom은 명령의 출력을 반환하지만 호출하지 않습니다.

xclip -selection clipboard 기본 X 클립 보드 (중간 moue 버튼으로 액세스)와 달리 텍스트를 시스템 클립 보드에 복사하기 만하면됩니다.

@"마지막으로 구부러진 텍스트를 반환합니다. "는 기본 레지스터이지만 모든 레지스터를 사용할 수 있습니다. 모든 레지스터의 내용을 보려면을 입력하십시오 :registers.


2
이것은 더 강력하며 vim이 클립 보드 및 모든 OS에서 지원되지 않는 경우에도 작동합니다. 예를 들어, Mac에서는을 실행하십시오 :call system("pbcopy",@"). 이 명령을 키에 바인딩 할 수 있습니다.
ilija139

잘 작동하지만 vimrc에 넣을 수 있습니까? 그것은 나를 위해 작동하지 않습니다.
thenakulchawla

4

누군가가 유용하다고 생각할 수도 있습니다. 나는 X 클립 보드와 독립적으로 유지하고 싶었지만 두 개의 실행중인 바이러스 사이에 텍스트를 복사하여 붙여 넣을 수있었습니다. 이 작은 코드는 복사를 위해 선택된 텍스트를 temp.txt 파일에 저장합니다. 아래 코드를 .vimrc에 넣으십시오. CTRL-c CTRL-v를 사용하여 작업을 수행하십시오.

vnoremap : w! cp / dev / null ~ / temp.txt && cat> ~ / temp.txt

noremap : r! cat ~ / temp.txt


4
  1. 에 넣으 set clipboard=unnamed십시오 vimrc.
  2. Visual모드 에서 복사 할 대상을 선택하십시오 (v를 눌러 입력).
  3. 위로 Normal모드 (보도 탈출 [ESC), y를 눌러 복사합니다.
  4. OS의 클립 보드에서 무언가를 붙여 넣으려면 Vim Normal모드 에서 p / P를 누르십시오 .

4

나는 Vim을 처음 사용하지만 일반 텍스트 모드에서 모든 텍스트를 시스템 클립 보드에 복사합니다 (예 : 워드 프로세서 또는 gedit, 마우스 패드 등과 같은 다른 텍스트 편집기에 붙여 넣으려는 경우).

ggVGy

또는 더 간단하게 :

:%와이

제안한대로 vim-gtk를 설치 하고

클립 보드 설정 = 이름없는 플러스

내 .vimrc에서

모든 것이 잘 작동합니다

텍스트의 일부만 복사하려면 시각 모드 (v) 를 사용하고 복사 할 텍스트를 선택한 다음 y를 누르십시오 .

마지막으로 Clipman (내가 가장 좋아하는), Clipit, Parcellite 또는 유사한 클립 보드 프로그램을 제안합니다.

(데비안 스트레치 Xfce에서 vim 8.0을 사용하고 있습니다)

나의 영어를 위해 나를 용서해주세요! :-)


4

이 답변은 MAC 사용자에게만 해당됩니다.

MAC에서 사용 가능한 기본 VIM에는 클립 보드 옵션이 활성화되어 있지 않습니다. 시스템 클립 보드에 액세스하려면 해당 옵션이 필요합니다.

vim에 해당 옵션이 활성화되어 있는지 확인하려면 아래 명령을 사용하십시오.

vim --version

결과적으로가 있어야 +clipboard합니다. 이 경우 -clipboardVIM에 시스템 클립 보드에 액세스 할 수있는 옵션이 없습니다.

필요한 옵션을 사용하여 VIM을 만들어 설치해야합니다. 다음은 명령입니다.

# Create the directories you need
$ sudo mkdir -p /opt/local/bin
# Download, compile, and install the latest Vim
$ cd ~
$ git clone https://github.com/vim/vim.git
$ cd vim
$ ./configure --prefix=/opt/local
$ make
$ sudo make install
# Add the binary to your path, ahead of /usr/bin
$ echo 'PATH=/opt/local/bin:$PATH' >> ~/.bash_profile
# Reload bash_profile so the changes take effect in this window
$ source ~/.bash_profile"

위의 옵션을 +clipboard사용 하면 최신 VIM이 설치됩니다 .

이제 시스템 클립 보드를 설정해야합니다. 다음 줄을 추가하십시오~/.vimrc

set clipboard=unnamed

이제 텍스트를 시스템 클립 보드에 붙일 수 있습니다. 아래 단계는 잡아 당기는 방법을 설명합니다.

  1. vim 명령 모드 press v에서는 VISUAL 모드로 전환됩니다.
  2. 커서를 움직여 복사해야 할 텍스트를 선택하십시오.
  3. Press y선택한 텍스트를 클립 보드에 복사합니다.
  4. 외부 응용 프로그램으로 이동하여 CMD + v붙여 넣습니다.

macOS Mojave와 함께 MACBook Pro를 사용하며 위의 기능이 작동합니다.


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


3

키보드 단축키를 사용하여 MacOsX에서 지금까지 몇 달 동안이 문제로 어려움을 겪었습니다. 키보드 반바지 사용에 관한 질문이 아니라는 것을 알고 있습니다. 그러나 이것은 같은 관심사를 가진 사람에게 도움이 될 수 있습니다.

선택을 취소하면 다음을 발견했습니다.

보기-> 마우스보고 허용

터미널 메뉴에서 다음을 사용하여 클립 보드에 복사 할 수 있습니다

command + c

다시.


2

.vimrc에 간단한 줄을 작성하여 복사 작업을 수행했습니다. 이것이 누군가를 돕기를 바랍니다. 내 vim은 불행히도 Clipboard 지원과 함께 설치되지 않았으므로 이러한 제안 중 어느 것도 나를 위해 일하지 않았습니다. 기본적 으로이 줄을 .vimrc에 붙여 넣으십시오.

map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>

이 작업에 대한 세부 정보를 읽으려면 내 블로그 에서 이에 대해 읽을 수 있습니다


1
구매자는 조심하십시오. Mac에서는 이상한 효과가 있습니다.
azatar

지시 된대로 사용하면 (Linux 우분투 16.04에서 클립 보드 지원 없음) 클립 보드에 아무것도 복사하지 않는 것 같습니다 .vim 세션에서 여러 파일을 열면 작업이 수행 된 탭이 닫힙니다 (시각 선택 및 Cc ).
calocedrus 2018 년

2

일부 국제 키보드의 경우 "+ Space를 눌러을 얻을 수 있습니다 ".

당신이 인쇄 할 것이다 그 경우에 그래서 "Space+y"Space*y


2

vim에 그래픽 인터페이스를 사용하고 싶지 않고 터미널 에뮬레이터를 사용하는 것을 선호하는 경우이 문제에 대한 훨씬 간단한 접근 방식이있을 수 있습니다. yank 또는 이와 유사한 것을 사용하는 대신 먼저 사용하는 터미널의 설명서를 살펴보십시오. 나는 같은 문제 (+ 클립 보드 및 xclip 등을 사용하려고 시도 중)로 어려움을 겪었고 결국 터미널 에뮬레이터에서 Shift 키를 누르고 복사 할 텍스트를 선택하는 것으로 충분하다는 것이 밝혀졌습니다. 그게 다야. 매우 간단하고 구성을 망칠 필요가 없습니다. (저는 urxvt를 사용합니다).


1

OSX의 경우 위의 10342 답변과 같이 vim이 클립 보드 기능을 지원하는지 확인해야하며 OSX와 함께 제공되는 기능은 클립 보드를 지원하지 않으며 실행 brew install vim하면 작동합니다.

vi를 실행하면 brew에서 설치 한 버전이 아니라 미리 제공된 OSX 버전을 계속 실행할 수 있습니다.

이를 극복하기 위해 OSX 기본 명령이 아닌 brew 버전에 vim 명령의 별칭을 지정했습니다.

alias vim="/usr/local/Cellar/vim/8.0.1100_1/bin/vim"

그리고 지금 나는 황금이야


1

내 솔루션은 다음 줄을 .vimrc에 넣었습니다.

map <C-y> :w !xclip -sel c <CR><CR>

스크립트는 Ctrl + y를 사용하여 선택한 줄 (통과 비주얼 모드) 또는 파일 내용 (선택되지 않은 경우)을 클립 보드에 복사합니다. 중요한 경우 Manjaro Linux를 사용하고 있습니다.


1

나는 맥 OSX (10.15.3)에 있으며 vim을 처음 사용합니다. 나는 이것이 너무 실망스럽고 여기의 모든 대답이 너무 복잡하고 내 상황에 적용되지 않는다는 것을 알았습니다. 나는이 작업을 두 가지 방법으로 끝내 었습니다.

  1. pbcopy를 사용하는 키 매핑 : mac과 함께 제공되는 이전 버전의 vim에서 작동합니다.

    vmap '' :w !pbcopy<CR><CR>~ / .vimrc에 추가
    이제 시각적으로 선택하고 ''두 개의 아포스트로피를 눌러 클립 보드에 복사 할 수 있습니다

  2. 다른 답변에서 가장 권장되는 솔루션에 액세스 할 수 있도록 최신 버전의 vim을 설치하십시오.

    brew install vim
    alias vim=/usr/local/bin/vim(~ / .bashrc 또는 이와 동등한 항목에 추가해야 함)
    이제 시각적으로 선택하고 "+yy클립 보드에 복사 할 수 있습니다.


아주 좋은 해결책!
ABD

0

selecting의 도움 mouseright-click copy내 경우했다.

:set nonumber전에 줄 번호를 포함하고 싶지 않았습니다 copying.


nerdTree
ji-ruh

그것은 vim과 관련이 없으며 독점적으로 (X) 클립 보드에 대한 터미널 기반 사본입니다.
Carlo Wood

잘 모르겠어요 @ ji-ruh
Akash

0

위의 아무것도 내 Windows 노트북에서 효과가 없었습니다.

Ctrl+ C는 복사하기에 좋았지 만 붙여 넣기에는 Shift+ Insert가 필요했습니다 !

( Insert보조 키를 누르지 않고도 항상 액세스 할 수있는 랩탑을 항상 확보해야하는 좋은 이유 )


0

Shift Linux의 그래픽 모드에 있지만 먼저 복사 할 항목을 선택해야하는 경우 + Ctrl+C

여기에 이미지 설명을 입력하십시오

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