diff --git a/.config/nvim/.github/README.md b/.config/nvim/.github/README.md index ee2cd680..4dd74eae 100644 --- a/.config/nvim/.github/README.md +++ b/.config/nvim/.github/README.md @@ -297,6 +297,7 @@ 🔖 Marks - [ThePrimeagen/harpoon](https://dotfyle.com/plugins/ThePrimeagen/harpoon) +- [tomasky/bookmarks.nvim](https://dotfyle.com/plugins/tomasky/bookmarks.nvim) diff --git a/.config/nvim/lua/plugins/extras/editor/bookmarks.lua b/.config/nvim/lua/plugins/extras/editor/bookmarks.lua new file mode 100644 index 00000000..4c30445c --- /dev/null +++ b/.config/nvim/lua/plugins/extras/editor/bookmarks.lua @@ -0,0 +1,43 @@ +return { + "tomasky/bookmarks.nvim", + config = function() + require("bookmarks").setup({ + save_file = vim.fn.stdpath("state") .. "/bookmarks", + keywords = { + ["@t"] = "󰄵 ", + ["@w"] = " ", + ["@f"] = "󰁨 ", + ["@n"] = " ", + }, + }) + require("lazyvim.util").on_load("telescope.nvim", function() + require("telescope").setup({ + extensions = { + repo = { + list = { + fd_opts = { + "--no-ignore-vcs", + }, + search_dirs = { + "~/Repos/", + }, + }, + }, + }, + }) + require("telescope").load_extension("bookmarks") + end) + end, + -- stylua: ignore + keys = { + { "fB", "Telescope bookmarks list", desc = "Bookmarks" }, + { "mm", function() require("bookmarks").bookmark_toggle() end, desc = "Toggle Bookmark" }, + { "ml", function() require("bookmarks").bookmark_ann() end, desc = "Add/Edit Current Line" }, + { "mc", function() require("bookmarks").bookmark_clean() end, desc = "Clear All Bookmarks" }, + { "mn", function() require("bookmarks").bookmark_next() end, desc = "Next Bookmark" }, + { "mp", function() require("bookmarks").bookmark_prev() end, desc = "Previous Bookmark" }, + { "]k", function() require("bookmarks").bookmark_next() end, desc = "Next Bookmark" }, + { "[k", function() require("bookmarks").bookmark_prev() end, desc = "Previous Bookmark" }, + { "mL", function() require("bookmarks").bookmark_list() end, desc = "List Bookmarks" }, + }, +}