Comment faire utiliser le presse-papiers par Vim dans le sous-système Windows pour Linux ?

Comment faire utiliser le presse-papiers par Vim dans le sous-système Windows pour Linux ?

(Edit : Avril 2024) Avec la dernière version WSL version: 2.1.5.0 sous Win11, le simple fait d’avoir set clipboard+=unnamedplus semble désormais suffisant pour neovim, du moins avec les dernières versions Microsoft Store d’Ubuntu.

(Edit : Oct. 2020) Pour un presse-papiers bidirectionnel sur neovim, j’utilise win32yank depuis plusieurs mois sans aucun problème. Placez win32yank.exe quelque part dans votre PATH sous Linux (n’importe où devrait convenir), et ajoutez ce qui suit à votre 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,
          \ }

(Réponse originale) Si vous souhaitez simplement copier depuis VIM vers Windows, pour WSL2 et Ubuntu 20.04, cette réponse sur Reddit a parfaitement fonctionné pour moi avec le VIM standard et le WSL2 Ubuntu standard.

Mettez ce qui suit dans votre .vimrc (en bas, par exemple) :

" 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