diff --git a/lua/lazyvim/config/autocmds.lua b/lua/lazyvim/config/autocmds.lua index cd263948..b326c79c 100644 --- a/lua/lazyvim/config/autocmds.lua +++ b/lua/lazyvim/config/autocmds.lua @@ -113,3 +113,26 @@ vim.api.nvim_create_autocmd({ "BufWritePre" }, { vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p") end, }) + +-- Copy/Paste when using ssh on a remote server +-- Only works on Neovim >= 0.10.0 +if vim.clipboard and vim.clipboard.osc52 then + vim.api.nvim_create_autocmd("VimEnter", { + group = augroup("ssh_clipboard"), + callback = function() + if vim.env.SSH_CONNECTION and vim.clipboard.osc52 then + vim.g.clipboard = { + name = "OSC 52", + copy = { + ["+"] = require("vim.clipboard.osc52").copy, + ["*"] = require("vim.clipboard.osc52").copy, + }, + paste = { + ["+"] = require("vim.clipboard.osc52").paste, + ["*"] = require("vim.clipboard.osc52").paste, + }, + } + end + end, + }) +end