Vim : 선택 사항을 OS X 클립 보드로 복사
vim에서 영역을 선택했다고 가정 해보십시오. OS X 클립 보드에 어떻게 복사 할 수 있습니까?
(힌트 : OS X 클립 보드는에 파이프를 통해 쓸 수 있음 /usr/bin/pbcopy
)
사용중인 vim 버전에 따라 + 레지스터를 사용하여 클립 보드에 액세스 할 수 있습니다.
http://vim.wikia.com/wiki/Mac_OS_X_clipboard_sharing에 유용한 아이디어가있을 수 있습니다.
들어 MacVim 및 Windows GVIM, 단순히 당신에 다음을 추가 ~/.vimrc
:
set clipboard=unnamed
등 이제 모든 작업 yy
, D
그리고 P
클립 보드와 함께 작동합니다. 필요가 그들을 접두사 없습니다 "*
나 "+
.
클립 보드가 활성화되어 있으면 선택한 영역을 클립 보드에 복사하여 "*y
활성화되어 있는지 확인하려면 oa vim --version을 찾 +clipboard
거나 또는를 찾으십시오 -clipboard
. 예를 들어 10.5.6 상자에서 기본적으로 활성화되어 있지 않습니다.
어느 % vim / usr / bin / vim % vim-버전 VIM-Vi 개선 7.2 (2008 년 8 월 9 일, 2008 년 11 월 11 일 17:20:43 컴파일) 포함 된 패치 : 1-22 _www@b77.apple.com에 의해 편집 됨 GUI가없는 일반 버전. 포함 된 기능 (+) 또는 포함되지 않음 (-) : ... -clientserver -clipboard + cmdline_compl + cmdline_hist + cmdline_info + comments ...
로 컴파일 된 경우 레지스터를 사용하여 시스템 클립 보드에 액세스 +clipboard
할 수 있습니다 "*
.
7.2 소스를 다운로드하여 컴파일하면 (쉽게 tar xjf vim-7.2.tar.bz && cd vim72 && ./configure && make && sudo make install
) 클립 보드가 활성화되었습니다.
어느 % vim / usr / local / bin / vim % vim-버전 VIM-Vi 개선 7.2 (2008 년 8 월 9 일, 2009 년 3 월 24 일 컴파일 17:31:52) rampion@Myrrhy.local에 의해 컴파일 됨 GTK2 GUI가있는 일반 버전. 포함 된 기능 (+) 또는 포함되지 않음 (-) : ... + clientserver + clipboard + cmdline_compl + cmdline_hist + cmdline_info + comments ...
그러나 컴파일 후에도 Terminal.app에서 vim을 실행할 때 X11.app에서만 클립 보드에 복사 할 수 없었습니다.
텍스트와 유형을 시각적으로 선택할 수 있습니다 :w !pbcopy<CR>
또는 ~/.vimrc
파일 에 아래 키 매핑을 포함시킬 수 있습니다 . 시각적 모드에서 운영 체제의 클립 보드로 텍스트를 잘라내거나 복사합니다.
vmap <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
출처 : http://drydevelopment.com/blog/vim-pbcopy-on-os-x
"*yank 명령 앞에 큰 따옴표 별표 ( )가 있으면 복사 버퍼에 결과가 표시됩니다. 그것은 Windows와 Linux에서도 작동합니다.
맥 OS 10.8에서 정력은 컴파일 -clipboard
사용하는 그래서 "*y
당신이 다시 컴파일해야합니다. 운 좋게도 brew install vim
당신을 위해 쉽게 새로운 버전을 컴파일 할 것입니다 +clipboard
.
텍스트를 시각적으로 선택하고 입력하십시오.
ggVG
!tee >(pbcopy)
내가보다 더 좋은 것을 발견 :
ggVG
:w !pbcopy
프롬프트가 표시되지 않으므로 "ENTER (입력)를 누르거나 계속하려면 command를 입력하십시오"
MacPorts를 사용하는 경우 다음을 통해 클립 보드 지원을 포함하도록 VIM을 업그레이드 할 수 있습니다.
포트 설치 vim + x + x11
이제 "+ 레지스터를 사용하여 텍스트를 Mac 클립 보드로 직접 가져옵니다. 참처럼 작동합니다.
내 경우에는 방금 수행해야했습니다.
:set mouse=v
MacOS X를 사용하는 경우 :
$ brew install vim
$ vim --version
VIM - Vi IMproved 7.4 [...]
그런 다음 .vimrc에 추가하십시오.
set clipboard=unnamed
이제 당신은 단지에있을 필요가 정력 과 할 :%y
모든 내용을 클립 보드에 복사하도록.
Homebrew의 vim을 사용하십시오 :brew install vim
(10.10.3 요세미티 기준) 맥 않는 시스템 정력에 사전 설치되어 있지 이 clipboard
플래그가 활성화.
vim을 직접 컴파일하고 해당 플래그를 활성화하거나, 올바르게 설정된 Homebrew의 vim을 사용할 수 있습니다.
이것을 직접 보려면 재고 시스템 vim을 확인하십시오. /usr/bin/vim --version
다음과 같은 내용이 표시됩니다.
$ /usr/bin/vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Nov 5 2014 21:00:28)
Compiled by root@apple.com
Normal version without GUI. Features included (+) or not (-):
... -clientserver -clipboard +cmdline_compl ...
참고 -clipboard
homebrew의 vim을 사용하면 대신
$ /usr/local/bin/vim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled May 10 2015 14:04:42)
MacOS X (unix) version
Included patches: 1-712
Compiled by Homebrew
Huge version without GUI. Features included (+) or not (-):
... +clipboard ...
참고 +clipboard
vim이 클립 보드로 컴파일되지 않은 경우 전체 줄 대신 선택된 텍스트를 복사하려면 macvim 또는 기타 GUI를 설치하지 않으려면 가장 간단한 해결책은이 줄을 .vimrc에 추가하는 것입니다.
map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>
사용하려면 복사 할 텍스트를 시각적으로 선택한 다음 Control-C를 선택하십시오. 이 줄에 대한 자세한 설명을 보려면 여기를 읽으십시오
방금 시도한
map <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
정말 잘 작동했습니다.
커맨드 -C? 이것은 적어도 Terminal.app 내에서 시작된 vim이 마우스로 선택된 텍스트에 대해 작동합니다.
당신이 사용할 수있는 MacVim을 쉽게 표준 OS 키를 사용하여 클립 보드에 액세스 할 수 맥에있을 때.
또한 일반 Vim과 완벽하게 역 호환되므로 별도의을 가질 필요조차 없습니다 .vimrc
.
Fakeclip 은 기본적으로 지원되지 않는 + 및 * 버퍼를 구현합니다.
내 주요 문제는 기본 osx 버전의 VIM이었습니다. +clipboard
빌드에 추가 된 homebrew를 통해 설치하십시오 .
확인하다
vim --version
그것이 말한다면 -clipboard
또는+clipboard
VIM 설치에 + clipboard 옵션이 있고 (: version으로 확인할 수 있음) 시각 모드 인 경우 "+ y를 수행 할 수 있습니다. 그러면 +1 이 클립 보드 인 버퍼 +로 선택을 취소합니다 .
vimrc에 다음 맵을 추가했으며 정상적으로 작동합니다.
vmap y "+ y 이것으로 리더 키 다음에 y 를 사용하여 비주얼 모드에서 클립 보드에 복사 할 수 있습니다
nmap은 P "+ P 내가 할 수있는이와 리더 키 에 의해 후속 p는 일반 모드에서 클립 보드에서 붙여 넣습니다.
PD : 우분투에서 + clipboard 옵션을 얻으려면 vim-gtk를 설치해야했습니다.
Mac에서 다른 것이 작동하는 것처럼 보일 때-마우스로 선택하고 마우스 오른쪽 버튼을 클릭하여 복사를 선택하십시오. uff
나는 현재 OS X 10.9를 사용하고 있으며 + xterm_clipboard 로 vim을 컴파일하려는 노력으로 아무것도 얻지 못했습니다. 그래서 현재 해결책은 터미널 모드에서 MacVim을set clipboard=unnamed
~ / .vimrc 파일의 옵션과 함께 사용하는 것입니다 . 나를 위해 완벽하게 작동합니다.
내에서 나를 위해 일한 것 .vimrc
set clipboard=unnamed
if has("unnamedplus") " X11 support
set clipboard+=unnamedplus
endif
Mac의 경우 텍스트를 선택하는 동안 option
키를 누른 ctrl V
채로 트릭을 수행했습니다.
Shift cmd c – 복사 모드 설정 마우스를 드래그하고 텍스트를 선택하고 cmd c를 사용하여 선택한 텍스트를 복사합니다 Cmd v 붙여 넣기
우분투 사용자의 경우 클립 보드를 사용하여 검색하려는 패키지가 가득 찼습니다. 다른 패키지 (vim-tiny, vim)에는 클립 보드 기능이 포함되어 있지 않습니다.
레지스터 '+'또는 '*'를 사용하여 클립 보드에 복사가 작동하지 않습니까?
이유 : vim의 특정 버전은 클립 보드 지원없이 컴파일되었습니다. 콘솔에 vim --verion을 입력하면 -xterm_clipboard 가 표시 됩니다 . GUI 패키지와 함께 vim을 설치하면이 문제가 해결됩니다. 우분투에서는 쉘에 다음과 같이 입력하면됩니다 :
sudo apt-get 설치 vim-gui-common
이제 콘솔에서 vim --version을 다시 수행하십시오. 아마도, 당신은 지금 + xterm_clipboard를 보게 될 것입니다 !
이제 레지스터 +를 사용하여 클립 보드에 무엇이든 복사 할 수 있습니다 (예 : "+ yy와 같이 현재 행을 클립 보드에 복사)
설치가 macvim
여전히 작동하지 않으면 같은 문제가 발생하여 마침내 해결 방법을 찾았습니다.
모든 vim을 먼저 제거하고
brew uninstall macvim
brew uninstall --force vim
macvim을 다시 설치하십시오
brew install macvim --with-override-system-vim
그럼 당신은 사용할 수 있습니다 "*y
또는 "+y
필요 없어,set clipboard=unnamed
Command-c는 MacVim과 터미널 모두에서 작동합니다.
참고 URL : https://stackoverflow.com/questions/677986/vim-copy-selection-to-os-x-clipboard
'Programing' 카테고리의 다른 글
신속한 구속 조건 애니메이션 (0) | 2020.04.24 |
---|---|
변경 전 선택 (드롭 다운) 값 얻기 (0) | 2020.04.23 |
우분투에 Java 7 설치 (0) | 2020.04.23 |
파일이있는 디렉토리를 삭제 하시겠습니까? (0) | 2020.04.23 |
Xcode를 시작하지 않고 iPhone 에뮬레이터를 실행하는 방법은 무엇입니까? (0) | 2020.04.23 |