Windows 하위 시스템 Linux - VIM이 클립보드를 사용하게 하시겠습니까?

Windows 하위 시스템 Linux - VIM이 클립보드를 사용하게 하시겠습니까?

지금 이 문제를 해결하고 혼란을 피하려면... 이것은 WSL이라고도 알려진 Windows 10(ubunutu)에서 실행되는 Linux용입니다. cygwin 및 Windows 또는 독립형 Linux와 동일하지 않습니다. 그것은 그 자체의 짐승이다.

따라서 제가 이미 읽은 모든 기사를 참조하거나 이전에 요청된 내용에 대해 의견을 제시하기 전에 위의 사항을 염두에 두시기 바랍니다.

Windows 클립보드 또는 WSL Ubuntu Linux 에뮬레이션에서 복사 및 붙여넣기를 수행하는 방법을 아는 사람이 있습니까? 나는 set 을 사용하고 있습니다 clipboard=unnamedplus. , 등 어떤 조합을 사용해도 작동하지 않습니다 yy."+yy

네, 지원 vim-gtk됩니다 +xterm_clipboard.

답변1

(편집: 2024년 4월) 최신 버전 WSL version: 2.1.5.0의 Ubuntu를 Win11사용 하면 적어도 최신 Microsoft Store 버전에서는 set clipboard+=unnamedplus충분해 보입니다 .neovim

(편집: 2020년 10월) 의 양방향 클립보드에 대해 neovim저는win32yank몇 달 동안 아무 문제 없이. win32yank.exeLinux의 경로 중 아무 곳에나(어디든지 괜찮음) 입력 하고 init.vim.

set clipboard+=unnamedplus
let g:clipboard = {
          \   'name': 'win32yank-wsl',
          \   'copy': {
          \      '+': 'win32yank.exe -i --crlf',
          \      '*': 'win32yank.exe -i --crlf',
          \    },
          \   'paste': {
          \      '+': 'win32yank.exe -o --lf',
          \      '*': 'win32yank.exe -o --lf',
          \   },
          \   'cache_enabled': 0,
          \ }

(원래 답변) WSL2 및 Ubuntu 20.04의 경우 VIM에서 Windows로 이동하려는 경우이 답변Reddit에서는 표준 VIM 및 표준 WSL2 Ubuntu에서 완벽하게 작동했습니다.

.vimrc예를 들어 하단에 다음을 입력하세요 .

" WSL yank support
let s:clip = '/mnt/c/Windows/System32/clip.exe'  " change this path according to your mount point
if executable(s:clip)
    augroup WSLYank
        autocmd!
        autocmd TextYankPost * if v:event.operator ==# 'y' | call system(s:clip, @0) | endif
    augroup END
endif

답변2

이 솔루션github 사용자 덕분에 나를 위해 일했습니다.로비에프.

완성을 위해 이것은 그의 대답에서 나온 것입니다.

  1. 설치하다VcXsrv (설치 후 시작되면 중지하세요).
  2. 새로 설치된 프로그램을 사용하여 시작하십시오.XLaunch(시작 메뉴에서 검색).
  3. 모든 기본 옵션을 사용하고 다음을 확인하세요.클립보드 옵션확인됩니다.

  4. 마지막에 구성을 파일에 저장합니다 config.xlaunch(그걸로 지금부터 시작해).

  5. Windows용 bash DISPLAY=localhost:0.0에 내보내기를 넣고 열려 있는 터미널에서 실행하세요..bashrcsource ~/.bashrc

  6. 클립보드 지원을 사용하여 vim이 설치되었는지 확인하세요. , 아니 vim --version | grep clipboard라고 말해야 합니다 . 또한 vim에서 ex 명령을 실행했는데 클립보드 지원이 컴파일되어 있지 않다고 표시되는 경우도 있습니다.+clipboard-clipboard:echo has('clipboard')0

  7. 클립보드 지원이 없다면 클립보드 지원으로 컴파일된 vim 패키지를 설치하세요(예: apt-get install vim-gtk.

  8. "*p이제 및 를 통해 Windows 시스템 클립보드에 액세스하거나 파일을 넣어 "*y기본값으로 설정할 수 있습니다 .set clipboard=unnamed.vimrc

처럼로비에프이제 SSH X 전달을 사용하여 원격 시스템에서 Windows 클립보드를 사용할 수도 있다고 언급했습니다.

답변3

터미널을 마우스 오른쪽 버튼으로 클릭한 다음 옵션 상자에서 CTRL + SHIFT + C/V를 선택하여 터미널을 통한 복사 붙여넣기 작업을 수행할 수 있습니다.

WSL 우분투 터미널

답변4

vim(또는 neovim)을 사용하고 있다면 ANSI OSC52이것이 "복사/붙여넣기" 문제(특정한 경우, 예를 들어 SSH 터미널에서)를 해결하기 위한 표준이라는 것을 알아야 할 것입니다.

그럼 여기 유용한 플러그인이 있습니다vim-oscyank이는 이 표준을 구현하며 여러분이 해야 할 일은 이 플러그인을 설치하고 이에 대한 키 매핑을 설정하는 것뿐입니다. 꼭 한번 시도해 보세요.

관련 정보