답변:
먼저 편집 모드에 있는지 확인하십시오 (을 누르십시오 i). 그런 다음 과 같은 터미널 에뮬레이터에 있다면 Ctrl+ Shift+로 붙여 넣을 수 있습니다 (또는 오른쪽 클릭 메뉴에서 "붙여 넣기"를 선택하십시오).Vgnome-terminal
:set paste붙여 넣기 전에 vim 을 입력 하여 자동 들여 쓰기 등을 비활성화 할 수도 있습니다 . 그런 다음 :set nopaste내용을 붙여 넣은 후.
자세한 내용은 stackoverflow.com 에서이 질문 을 확인 하십시오.
vim클립 보드 내용을 붙여 넣는 대신 선을 복사 / 붙여 넣기하려면 yank 명령 을 확인하십시오 . 여기 도움이 될만한 치트 시트 가 있습니다.
I대소 문자를 구분합니다. 소문자 i는 삽입 모드로 들어가는 일반적인 방법입니다. 대문자 I는 커서를 줄의 시작 부분으로 가져온 다음 삽입 모드로 들어갑니다.
Vi (및 Vim)는 Gedit와 같은 일반 텍스트 편집기와 매우 다르게 작동합니다. 또한 꽤 가파른 학습 곡선이 있습니다. 몇 가지 기본 명령을 배우려면 이 대화식 자습서로 시작 하십시오 .
그러나 질문에 대답합니다. 시스템 클립 보드의 내용은 플러스 레지스터를 통해 액세스 할 수 있습니다. 따라서 시스템 클립 보드에서 무언가를 붙여 넣으려면 일반 모드에서 다음을 누릅니다 "+p(동시가 아니라 차례로).
vi하지 않습니다vim
set :paste).
같은 파일 내에서 붙여 넣기 내용을 복사 하려면 yank및을 사용하십시오 paste.
터미널 전체에 붙여 넣기 내용을 복사 하려면 첫 번째 파일을 열고 원하는 텍스트를 가져간 다음 vim (예 :) 내에서 두 번째 파일을 열고을 :tabnew /path/to/second/file눌러 p붙여 넣습니다.
붙여 넣기 내용 을 vim에서 외부 프로그램으로 복사하려면 시스템 클립 보드에 액세스해야합니다. 우분투를 사용한다고 가정합니다. vim의 GUI 버전은 항상 클립 보드를 지원하지만 터미널에서 Vim을 사용하려면 X11 클립 보드 지원을 확인해야합니다.
콘솔에서 다음을 입력하십시오.
$ vim --version | grep xterm
-xterm_clipboard 를 찾으면 두 가지 옵션이 있습니다.
1) xterm_clipboard 플래그를 켜고 vim을 컴파일하십시오.
2) vim을 제거하고 대신 gvim (vim-gtk 또는 vim-gnome)을 설치하십시오. 이전과 같은 방법으로 터미널에서 vim을 호출하여 GUI가 아닌 vim을 고수 할 수 있습니다. 이번에는 + xterm_clipborad 를 확인해야합니다 .
이제 vim 편집기 내부의 + 레지스터에서 일부 텍스트를 잡아 당기면 (예 : "+ yy) 시스템 클립 보드에 복사되어 Ctrl+ 를 사용하여 gedit 편집기와 같은 외부 프로그램에서 검색 할 수 있습니다 V.
외부 프로그램에서 vim으로 붙여 넣기 내용을 복사하려면 먼저 Ctrl+ 를 통해 텍스트를 시스템 클립 보드에 복사 C한 다음 vim 편집기 삽입 모드 에서 마우스 가운데 버튼 (일반적으로 휠)을 클릭하거나 Ctrl+ Shift+ V를 눌러 붙여 넣으십시오.
vim과 관련된 4 가지 기본 복사 및 붙여 넣기 조건입니다. 이게 도움이 되길 바란다.
vim-gtk에서 xterm_clipboard지원하고 Fedora에서 지원 xvim합니다.
터미널에 텍스트를 붙여 넣으려면 항상 Shift+를 사용 Insert하고 모든 터미널 프로그램에서 작동합니다.
(또한 Insert보조 키를 누르지 않고는 누를 수없는 랩톱을 얻지 못하는 이유도 있습니다 )
Vi/ Vim! = 터미널;)
Ctrl+A, Ctrl+C도?
vi에 들어가면을 눌러 i삽입 모드로 들어가 터미널을 마우스 오른쪽 버튼으로 클릭하고 붙여 넣기를 클릭하십시오.
i. 대문자 I는 무엇을합니까?
i. 대문자 I는 삽입 모드로 들어가기 전에 커서를 줄의 시작 부분으로 이동합니다 (여기서는 필요하지 않음).
자세한 설명은 사용 VI에서 / 텍스트 붙여 넣기 라인을 복사 yank하고put
( vi 의 명령 모드 에서 다음을 사용하십시오 )
복사 (YANK)
vi에서 한 줄을 복사하려면 :
yy또는 유형Yvi에서 두 줄을 복사하려면 :
2yy또는 유형2Y(마찬가지로 여러 줄을 복사 할 수 있음)
현재 위치에서 파일 끝까지 모든 줄을 복사하려면
yG현재 위치에서 현재 단어의 끝까지 모든 텍스트를 복사하려면 :
yw현재 위치에서 줄 끝까지 모든 텍스트를 복사하려면 :
y$붙여 넣기 (PUT)
클립 보드에 텍스트를 붙여 넣으려면 - 후 커서의 위치 :
p커서 위치 전에 클립 보드에 텍스트를 붙여 넣으려면
PVim 설치가 클립 보드를 지원하지 않기 때문에 문제가있었습니다 .
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를 각각 사용하여 복사하고 붙여 넣을 수 있습니다.
Linux 또는 Mac에서 Vim 8+를 사용하면 OS의 기본 붙여 넣기 ( ctrl+shift+VLinux, cmd+VMac)를 간단히 사용할 수 있습니다 . i삽입 모드를 누르지 마십시오 .
자동 들여 쓰기를 추가하지 않고 공백과 탭을 유지하면서 OS 클립 보드의 내용을 붙여 넣습니다. 그것은 이전에 해당의 :set paste, i, ctrl+shift+V, esc, :set nopaste방법.
더 이상 설치 +clipboard또는 +xterm_clipboardvim 기능이 필요하지 않습니다 . 이 기능을 "브래킷 붙여 넣기"라고합니다. 자세한 내용은 https://stackoverflow.com/questions/2514445/turning-off-auto-indent-when-pasting-text-into-vim/56781763#56781763을 참조 하십시오.
Windows에서 Git Bash를 통해 Vim을 사용하면 p삽입 모드를 사용하지 않고 마우스를 사용 하거나 가운데 클릭 할 수 있습니다. PuTTY를 통해 Vim을 사용하면 마우스 오른쪽 버튼을 클릭하면됩니다. 그리고 강조 표시는 복사를 수행합니다.
나는 이것이 우분투의 SE라는 것을 보지 못했기 때문에 이것을 언급했습니다.
다른 유용한 명령들 :
당신은 사용할 수 있습니다 Ctrl+ Shift+ V터미널 버전 정력에 붙여, 그러나 GUI 버전 정력을 위해 같은 Neovim-Qt시스템 클립 보드에서 붙여 넣기 텍스트로 Ctrl+ Shift+는 V단순히 작동하지 않습니다. 클립 보드 "+또는 "*vim 편집기에서 액세스해야합니다 .
새로운 키 바인딩을 추가 .vimrc하면 단순히 복사 / 붙여 넣기 명령이됩니다 :
" paste from system clipboard, align indentation with surroundings
noremap <Leader>p "*]p:set nopaste<CR>
" copy a sentence into system clipboard
noremap <Leader>y "+y)
vimtutor하는 것입니다. 약 45 분 안에 사용할 수있는 곳으로 빠르게 이동할 수 있습니다.