🐕
Neovim on WSL2で、win32yankを導入してクリップボードの共有と遅延問題を解決
問題
遅延に関してほかの記事でも語られていたので、win32yankを導入して遅延を解消した備忘録としてここに書き記す。
win32yankのダウンロードと設定
Ubuntuのホームディレクトリ(私の環境だと/home/shoseisan)mkdir bin
でbinディレクトリを作り、そこにダウンロードしたwin32yank.exeを移動する。
この際、以下のコマンドでカレントディレクトリでexplorerを開くことが出来る。
$ explorer.exe .
その後、デフォルトだと実行権限が無いので以下のコマンドを打ち込んで実行権限を付与する。
$ cd ~/bin
~/bin$ chmod +x win32yank.exe
PATHの設定
次に、homeディレクトリにbinというディレクトリを作ったのでこのをPATHを通す。
自分の環境に合わせて以下を書き加える。
fish
~/.config/fish/config.fish
(略)
set -x PATH $HOME/bin /usr/local/bin $PATH
bash
~/.bashrc
export PATH=$HOME/bin:/usr/local/bin:$PATH
これでホームディレクトリ直下のbinディレクトリのPATHが通った。
設定を反映させるためにターミナルを再起動しよう。
動作テスト
$ echo "Hello" | win32yank.exe -i
上記のコマンドを打ち込んでwindows側のメモ帳等に"Hello"と貼り付けが出来れば成功である。
init.vimの設定
現段階ではneovim側でwin32yankの機能を使えないので、init.vimに以下を書き加えて使えるようにする。
~/.config/nvim/init.vim
set clipboard=unnamed
let g:clipboard = {
\ 'name': 'myClipboard',
\ 'copy': {
\ '+': 'win32yank.exe -i',
\ '*': 'win32yank.exe -i',
\ },
\ 'paste': {
\ '+': 'win32yank.exe -o',
\ '*': 'win32yank.exe -o',
\ },
\ 'cache_enabled': 1,
\ }
これでvim上で:%yなどでヤンクしたテキストをwindows上のメモ帳にペーストしたり、逆の操作もできるようになるはず。
また、問題で上げたxキーによる削除時の遅延問題も大分解決された。
参考文献
Discussion