From 3e3d5baea31713a0c7a8d1b00fb3a27612d1dead Mon Sep 17 00:00:00 2001 From: gelocraft Date: Thu, 30 Jan 2025 06:55:22 +0000 Subject: [PATCH] nvim(plugin/persistence): add support for tmux-resurrect --- nvim/lua/plugins/persistence.lua | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/nvim/lua/plugins/persistence.lua b/nvim/lua/plugins/persistence.lua index 8edfe08..64692df 100644 --- a/nvim/lua/plugins/persistence.lua +++ b/nvim/lua/plugins/persistence.lua @@ -1,6 +1,25 @@ return { 'folke/persistence.nvim', - opts = {}, + init = function() + local nvim_sessions = vim.fn.stdpath 'state' .. '/sessions/' + local tmux_sessions = vim.fn.expand '~/.local/share/tmux/resurrect/' + + local tmux_sessions_exists = vim.fn.empty( + vim.fn.globpath(tmux_sessions, '*') + ) == 0 + + local nvim_sessions_exists = vim.fn.empty( + vim.fn.globpath(nvim_sessions, '*') + ) == 0 + + local is_inside_tmux = vim.env.TMUX ~= nil + + if nvim_sessions_exists and tmux_sessions_exists and is_inside_tmux then + -- Restore neovim sessions + vim.schedule(function() require('persistence').load() end) + end + end, + config = true, keys = { { 'Rs',