티스토리 뷰

 vim에서 dd또는 yy로 복사한 텍스트를 크롬, 메모장, 워드와 같은 다른 프로그램으로 복사하고 싶을 때, 또는 외부에서 복사한 텍스트를 vim으로 복사하고 싶을 때 일반적으로는 동작하지 않을 것이다. 왜냐하면 vim은 os의 클립보드를 사용하는 것이 아닌, x11이라는 별도의 클립보드를 사용하기 때문이다. 따라서 복사를 할 때 시스템 클립보드에 넣고 뺄 수 있어야 한다. 아래의 순서를 따라가면 vim에서도 시스템 클립보드를 잘 사용할 수 있을 것이다.

 

 이 글은 다음과 같은 순서로 작성된다.

 

1. 설치된 vim의 클립보드지원여부 확인

2. 클립보드를 지원하는 vim 설치

3. vim에서 클립보드로 복사하는 방법

4. system 클립보드를 기본값으로 사용하는 방법

 

 

 

1. 설치된 vim의 클립보드 지원여부 확인

 

 

 터미널를 켜고 다음 명령어를 입력해보자.

 

vim --version

 

 

 위 명령어를 입력하면 다음과 같은 결과를 출력할 것이다.

 

 

 

 

 동그라미 쳐진 clipboard라는 것에 주목해보자 이는 현재 vim이 시스템 클립보드와 연결될 수 있는지의 여부를 보여준다.

 

- clipboard -> 시스템 클립보드 지원하지 않음

+ clipboard -> 시스템 클립보드 지원함

 

 따라서 시스템 클립보드를 지원할 경우 바로 3번 과정으로 넘어가면 되고, 그렇지 않다면 2번 과정으로 가면 된다.

 

 

 

2. 클립보드를 지원하는 vim 설치

 

 

 vim을 이미 설치했다고 가정하고 설명하겠다. vim을 기본적으로 설치하면 아마도 시스템 클립보드를 지원하지 않을 것이다. 이는 기본적으로 apt로 설치하는 vim은 vim-tiny버전이기 때문이다. 따라서 시스템 클립보드를 지원하는 vim-huge 버전인  gvim 또는 vim-gtk, vim-gnome을 설치해야 시스템 클립보드를 사용할 수 있다. 따라서 다음과 같이 입력해보자.

 

sudo apt update && sudo apt install vim-gtk -y

 

 

 위와 같이 입력하면 우분투의 미러사이트에서 패키지 정보를 가져오게 되고 (이미지의 os는 debian으로 약간 차이가 있을 수 있다.) 성공하는 즉시 vim-gtk를 설치하게 된다. 만약에 vim-gtk를 지원하지 않는다면 vim-gnome이나 gvim를 설치해보는 것을 추천한다. 설치가 정상적으로 완료된 화면은 아래와 같다.

 

 

 

 

 위와 같은 화면을 볼 수 있을 것이며, 다시한번 클립보드 지원 여부를 확인해 보자. 아래는 vim --version을 입력해본 결과이다.

 

 

 

 

 다음과 같이 +clipboard로 변경된 것을 알 수 있다. 이제 비로소 vim에서 시스템 클립보드를 사용할 수 있게 되었다.

 

 

 

3. vim에서 클립보드로 복사하는 방법

 

 

 이제 vim으로 들어가서 복사를 해보도록 하자 원하는 위치에서 vim을 실행시킨다. 그리고 visual 모드인 v키를 누르고 복사하고 싶은 범위를 설정한다.

 

 

 

 

 

 이렇게 블록지정 된 상태에서 다음과 같이 입력한다.

 

"+y

 

 

 다음과 같이 입력하면 이제 블록지정된 부분이 시스템 클립보드에 저장된 것이다. 여기서 "+는 시스템 클립보드를 지정하며 y는 yank의 약자로 블록지정된 텍스트를 시스템 클립보드로 복사한다. 이제 다른 프로그램에서 손쉽게 Ctrl + V로 붙여넣기 할 수 있다.

 

 

 

 

 위와 같이 붙여넣기가 가능한 것을 볼 수 있다. 반대로 외부에서 Ctrl + C로 복사한 내용을 vim에서 붙여넣기 위해서는 다음과 같이 입력한다.

 

"+p

 

 

 

4. 시스템 클립보드를 기본값으로 사용하는 방법

 

 

 위와 같은 방법으로 시스템 클립보드를 사용할 수 있게 되었지만, 사용하기가 상당히 불편하다. 따라서 vim의 기본 클립보드를 시스템 클립보드로 설정하는 방법을 설명하도록 하겠다.

 

 다음 명령어를 입력해보자.

 

vim ~/.vimrc

 

 

 위 명령어를 입력하고 다음 설정값을 입력한 뒤 저장하고 종료한다.

 

set clipboard=unnamedplus

 

 

 다음과 같이 설정했다면 터미널을 종료하고 다시 시작하면 vim의 기본 클립보드가 시스템 클립보드로 설정되었기 때문에 vim에서 일반적인 y나 p명령어를 입력하여 복사/붙여넣기를 수행해도 어디서든 복사 붙여넣기가 가능하다.

 

 

 

참고

 

 

https://rampart81.github.io/post/vim-clipboard-share/

 

Vim & Tmux에서 Mac/리눅스 클립보드(clipboard)로 copy & paste 하기

Vim & Tmux에서 Mac/리눅스 클립보드(clipboard)로 copy & paste 하기

rampart81.github.io

http://egloos.zum.com/nemonein/v/5317622

 

Vim, 꾸러미 종류.

Vim 이란 게 역사가 오래되었기에.. 뭔가 단순한 편집기라기 보단, 하나의 시스템처럼 여겨진다.리눅스 생활 8년이 넘어서 이제 Vim 을 조금 만져보고 있는데, 정말, 머리가 쌩쌩 돌아가던 20대 때 건드렸었다면.. 하는 생각도 아주 조금은 든다.허나.. 그 땐 이만큼 뭔가를 쉽게 배울 수 있는 환경이 못되었으니..Vim 에서 문서 전체를 선택하고 복사하

egloos.zum.com

 

'Tools > Vim' 카테고리의 다른 글

[Vim]vim 설정하기  (2) 2019.10.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함