You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
1.9 KiB

return {
-- improved wild menu
{
'gelguy/wilder.nvim',
dependencies = {
{
"nvim-tree/nvim-web-devicons",
lazy = true
},
'roxma/nvim-yarp',
'roxma/vim-hug-neovim-rpc',
'romgrk/fzy-lua-native'
},
config = function()
local wilder = require('wilder')
wilder.setup({
modes = {':', '/', '?'},
accept_key = '<CR>',
reject_key = '<C-e>'
})
wilder.set_option('pipeline', {
wilder.branch(
wilder.python_file_finder_pipeline({
file_command = function(ctx, arg)
if string.find(arg, '.') ~= nil then
return {'fdfind', '-tf', '-H'}
else
return {'fdfind', '-tf'}
end
end,
dir_command = {'fd', '-td'},
filters = {'cpsm_filter'},
}),
wilder.substitute_pipeline({
pipeline = wilder.python_search_pipeline({
skip_cmdtype_check = 1,
pattern = wilder.python_fuzzy_pattern({
start_at_boundary = 0,
}),
}),
}),
wilder.cmdline_pipeline({
fuzzy = 2,
fuzzy_filter = wilder.lua_fzy_filter(),
}),
{
wilder.check(function(ctx, x) return x == '' end),
wilder.history(),
},
wilder.python_search_pipeline({
pattern = wilder.python_fuzzy_pattern({
start_at_boundary = 0,
}),
})
),
})
local highlighters = {
wilder.pcre2_highlighter(),
wilder.lua_fzy_highlighter(),
}
wilder.set_option('renderer', wilder.popupmenu_renderer({
highlighter = highlighters,
left = { ' ', wilder.popupmenu_devicons() },
right = { ' ', wilder.popupmenu_scrollbar() },
}))
end,
}
}