From 3ccfefab9722990583eabbf5d9404654f68fbd7b Mon Sep 17 00:00:00 2001 From: Scott McKendry <39483124+scottmckendry@users.noreply.github.com> Date: Sun, 23 Jun 2024 12:04:33 +1200 Subject: [PATCH] docs: add install/setup instructions --- README.md | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 73fe6f2..ab6e060 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,83 @@ -# telescope-resession.nvim +# 🔭 telescope-resession.nvim A telescope extension that adds a session picker to the wonderful [resession.nvim](https://github.com/stevearc/resession.nvim) plugin. + +## 📦 Extension Installation + +```lua +{ + "nvim-telescope/telescope.nvim", + dependencies = { "scottmckendry/telescope-resession.nvim" }, + config = function() + telescope.setup({ + -- Other telescope config... + extensions = { + resession = { + prompt_title = "Find Sessions", -- telescope prompt title + dir = "session", -- directory where resession stores sessions + }, + }, + }, + }) + end, +} +``` + +## ⏪ Recommended Resession Configuration + +```lua +return { + "stevearc/resession.nvim", + config = function() + local resession = require("resession") + resession.setup({}) + + -- Automatically save sessions on by working directory on exit + vim.api.nvim_create_autocmd("VimLeavePre", { + callback = function() + resession.save(vim.fn.getcwd(), { notify = true }) + end, + }) + + -- Automatically load sessions on startup by working directory + vim.api.nvim_create_autocmd("VimEnter", { + callback = function() + -- Only load the session if nvim was started with no args + if vim.fn.argc(-1) == 0 then + resession.load(vim.fn.getcwd(), { silence_errors = true }) + end + end, + nested = true, + }) + end, +} +``` + +## 🚀 Usage + +Vim command: + +```vim +:Telescope resession +``` + +Lua: + +```lua +require("telescope").extensions.resession.resession() +``` + +## 🎨 Customization + +```lua +extensions = { + resession = { + prompt_title = "Your custom prompt title", + + -- Apply custom path substitutions to the session paths + path_substitutions = { + { find = "/home/username", replace = "🏠" }, + }, + }, +}, +```