local puk = require 'std.puk' local icon = require 'std.icon' local map = require 'std.map' puk.defer 'mini.pick' (function(pick) local extra = puk 'mini.extra' pick.setup { options = { -- Whether to show content from bottom to top content_from_bottom = true, -- Whether to cache matches (more speed and memory on repeated prompts) use_cache = true, }, window = { -- String to use as caret in prompt prompt_caret = icon.prompt_caret .. ' ', -- String to use as prefix in prompt prompt_prefix = icon.prompt_prefix .. ' ', }, } map.normal { description = 'find files', command = pick.builtin.files, keys = 'ff', category = 'fuzzy' } --TODO: improve these picker by being able to pipe their results to quicklist or loclist --TODO: add picker for other stuff: highlights, help, registers,... map.normal { description = 'live grep', command = pick.builtin.grep_live, keys = 'fg', category = 'fuzzy' } map.normal { description = 'find symbols', command = function() extra.pickers.lsp { scope = 'document_symbol' } end, keys = 'fs', category = 'fuzzy' } map.normal { description = 'find highlight groups', command = extra.pickers.hl_groups, keys = 'fl', category = 'fuzzy' } map.normal { description = 'find spellsuggests', command = extra.pickers.spellsuggest, keys = 'fz', category = 'fuzzy' } map.normal { description = 'find keymaps', command = extra.pickers.keymaps, keys = 'fk', category = 'fuzzy' } map.normal { description = 'find marks', command = extra.pickers.marks, keys = 'fm', category = 'fuzzy' } end)