[vim] 삽입 모드로 붙여 넣기

Vim에서 삽입 모드로 붙여 넣을 수 있습니까?



답변

인서트 모드에서 CTRL-R {register}

예 :

  • CTRL-R * 클립 보드의 내용에 삽입합니다
  • CTRL-R " (이름이없는 레지스터)는 마지막 삭제 또는 yank를 삽입합니다.

vim의 help type에서 이것을 찾으려면 :h i_ctrl-r


답변

Vim이 붙여 넣은 텍스트에서 서식을 엉망으로 만들지 않으려면 다음을 사용하는 것이 좋습니다 :set paste. 이렇게하면 Vim이 코드를 다시 탭하지 못하게됩니다. 붙여 넣기를 마치면 :set nopaste정상적인 동작으로 돌아갑니다.

set pastetoggle=<F2>.vimrc 와 같은 것을 추가하여 단일 키로 모드를 전환 할 수도 있습니다 . 자동 들여 쓰기 토글에 대한 자세한 내용은 여기를 참조하십시오 .


답변

직접하지 않습니다. 당신이 할 수있는 일은 단일 일반 모드 작업을 위해 삽입 모드를 신속하게 종료 Ctrl-O한 다음 거기에서 붙여 넣기를하면 삽입 모드로 돌아갑니다.

키 콤보 : Ctrl-O p

편집 : 흥미로운. 다른 사람들이 열거 한 방법이있는 것 같습니다.


답변

삽입 모드 Ctrl-R {register}에서 레지스터를 사용할 수있는을 사용할 수 있습니다.

  • + 클립 보드를 위해
  • * X 클립 보드 (X에서 마지막으로 선택한 텍스트)의 경우
  • " 이름이없는 레지스터 (Vim에서 마지막 삭제 또는 yank)의 경우
  • 또는 다른 여러 사람 (참조 :h registers).

Ctrl-R {register} 입력 한 것처럼 텍스트를 삽입합니다.

Ctrl-R Ctrl-O {register} 원래 들여 쓰기로 텍스트를 삽입합니다.

Ctrl-R Ctrl-P {register} 텍스트를 삽입하고 자동 들여 쓰기합니다.

Ctrl-O삽입 모드로 돌아 가기 전에 일반 모드 명령을 실행하는 데 사용할 수 있으므로
Ctrl-O "+p예를 들어 사용할 수도 있습니다.

자세한 내용은 다음 설명서를 참조하십시오. :h i_ctrl-r


답변

이것을 사용하여 다음을 사용하여 클립 보드에서 붙여 넣을 수 있습니다 Ctrlv.

set pastetoggle=<F10>
inoremap <C-v> <F10><C-r>+<F10>

그리고 이것은 다음을 사용하여 시각적 선택을 클립 보드로 가져옵니다 Ctrlc.

vnoremap <C-c> "+y

일반 모드에서 클래식 vim yanking / pasting ( y/ p)에 대해 기본적으로 클립 보드를 사용하려면 다음을 수행하는 구성 옵션이 있습니다.

set clipboard=unnamedplus

이 설정을 사용하면 예를 들어 일반 모드에서 먼저 yank 한 다음 Ctrlv삽입 모드 로 붙여 넣을 수 있습니다. 또한 다른 vim 인스턴스와 다른 응용 프로그램에서 텍스트를 붙여 넣을 수 있습니다.

다른 옵션은 다음과 같습니다.

set clipboard=unnamed

그런 다음 X 환경에서 마우스를 끌어서 무언가를 선택하고 나중에 vim에 붙여 넣을 수 있습니다. 그러나 (어떤 이유로 든) yVim에서 무언가 ( ) 를 잡아 당기지 못하고 shiftinsert나중에 다른 곳 에서 볼 수는 없습니다 . 아마도 상당히 제한적입니다.

이에 대한 Vim 문서 : http://vim.wikia.com/wiki/Accessing_the_system_clipboard

사용자 정의 레지스터에서 붙여 넣으려면 다른 답변을 따를 수 있습니다 :). 이 답변은 주로 Vim을 시스템 클립 보드에 통합하는 것에 관한 것입니다.


참고 것을 set clipboard=unnamedplusset clipboard=unnamed사업에, 당신이 사용 gvim을 또는 vimx (필요 vim-X11) : 사람들은 컴파일된다 +xterm_clipboard. 당신은 선택적으로이 점을 넣을 수 있습니다 .bashrc별명 vim을 가진 vimx:

if [ -e /usr/bin/vimx ]; then
    alias vim='/usr/bin/vimx'; # vim with +xterm_clipboard
fi

vim이 +xterm_clipboard제공 한 정보에서 vim의 유무를 확인할 수 있습니다 vim --version.


답변

시스템 클립 보드 ( :set clipboard=unnamed) 를 사용하도록 Vim을 설정하면 Vim에서 복사 한 모든 텍스트를 Shift+를 사용하여 붙여 넣을 수 있습니다 Insert. Shift+ Insert는 단순히 OS 전체의 붙여 넣기 키 조합입니다 ( Ctrl+ Insert는 해당 ‘복사’입니다).


답변

마우스 가운데 버튼을 사용하여 삽입 모드로 붙여 넣을 수도 있습니다 (Linux 만 해당).