- こんにちは
泡アハです。
昨日neovim 0.10.0がリリースされました。
リリースノートはこちら
https://neovim.io/doc/user/news-0.10.html
そのリリースの中にOSC52を用いたclipboard共有が含まれていたので、
これはDockerコンテナ上でnvimを開いたときのclipboard共有がかんたんになるのでは?と思い、さっそく試してみました
Dockerコンテナでためす
Dockerコンテナを起動
docker run -it alpine:linux sh
nevim0.10.0およびLazyvimのインストール
自分はLazyvimを使っているので、インストールしていますが、試すだけならneovimだけでもいいと思います。
# nvim のインストール
apk update
apk add build-base cmake coreutils curl unzip gettext-tiny-dev git
git clone https://github.com/neovim/neovim
cd neovim
git checkout stable
make CMAKE_BUILD_TYPE=Release
make install
nvim --version
# Lazyvimのインストール
apk add git lazygit ripgrep alpine-sdk --update
git clone https://github.com/LazyVim/starter ~/.config/nvim
cd ~/.config/nvim
nvim
options.luaに追記
このドキュメントを参考にclipboardを追記
https://neovim.io/doc/user/provider.html#clipboard-osc52
vim.g.clipboard = {
name = 'OSC 52',
copy = {
['+'] = require('vim.ui.clipboard.osc52').copy('+'),
['*'] = require('vim.ui.clipboard.osc52').copy('*'),
},
paste = {
['+'] = require('vim.ui.clipboard.osc52').paste('+'),
['*'] = require('vim.ui.clipboard.osc52').paste('*'),
},
}
nvimを開きなおして、checkhealthしてみたところ、OSC52となっていました。
==============================================================================
provider.clipboard: require("provider.clipboard.health").check()
Clipboard (optional) ~
- OK Clipboard tool found: OSC 52
==============================================================================
yyしてみる
できた!!!
しかも自分の環境は、
alactirry on ubuntu - ssh -> docker on wsl
で試してみたのですが、ちゃんとubuntu側でコピペができるようになりました!
まとめ
今までは、Docker上でコピペをするためにはtmuxと連携するなどの方法を取る必要がありました。
しかし、この方法だとdockerの外にtmuxがある場合、$TMUXやsockerファイルなどをDockerコンテナにマウントする必要がありました。
しかし、今回のアップデートによってnvimだけで完結するにようになったのは、とても嬉しいです。
neovimを初めてまだ3ヶ月ほどですが、neovimほどカスタマイズ性が高く、面白いエディタはそうそうないですね。
どんどんなれて快適な開発生活を送れるようになりたいところです。
それでは。
コメント