return { { "ggandor/leap.nvim", enabled = false }, { "ggandor/flit.nvim", enabled = false }, { "folke/flash.nvim", event = "VeryLazy", ---@type Flash.Config opts = {}, keys = { { "s", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash", }, { "S", mode = { "n", "o", "x" }, function() require("flash").treesitter() end, desc = "Flash Treesitter", }, { "r", mode = "o", function() require("flash").remote() end, desc = "Remote Flash", }, }, }, { "nvim-telescope/telescope.nvim", optional = true, opts = function(_, opts) local function flash(prompt_bufnr) require("flash").jump({ pattern = "^", highlight = { label = { after = { 0, 0 } } }, search = { mode = "search", exclude = { function(win) return vim.bo[vim.api.nvim_win_get_buf(win)].filetype ~= "TelescopeResults" end, }, }, action = function(match) local picker = require("telescope.actions.state").get_current_picker(prompt_bufnr) picker:set_selection(match.pos[1] - 1) end, }) end opts.defaults = vim.tbl_deep_extend("force", opts.defaults, { mappings = { n = { s = flash }, i = { [""] = flash }, }, }) end, }, }