2021-07-17 12:14:52 +01:00
|
|
|
local present, telescope = pcall(require, "telescope")
|
2021-11-17 05:30:57 +00:00
|
|
|
|
2021-07-17 12:14:52 +01:00
|
|
|
if not present then
|
2021-08-16 08:49:09 +01:00
|
|
|
return
|
2021-07-15 16:43:17 +01:00
|
|
|
end
|
2021-06-26 03:41:39 +01:00
|
|
|
|
2022-01-21 00:26:05 +00:00
|
|
|
local M = {}
|
|
|
|
|
|
|
|
local chad_defaults = {
|
2021-08-16 08:49:09 +01:00
|
|
|
defaults = {
|
|
|
|
vimgrep_arguments = {
|
|
|
|
"rg",
|
|
|
|
"--color=never",
|
|
|
|
"--no-heading",
|
|
|
|
"--with-filename",
|
|
|
|
"--line-number",
|
|
|
|
"--column",
|
|
|
|
"--smart-case",
|
|
|
|
},
|
|
|
|
prompt_prefix = " ",
|
|
|
|
selection_caret = " ",
|
|
|
|
entry_prefix = " ",
|
|
|
|
initial_mode = "insert",
|
|
|
|
selection_strategy = "reset",
|
2021-08-23 12:45:29 +01:00
|
|
|
sorting_strategy = "ascending",
|
2021-08-16 08:49:09 +01:00
|
|
|
layout_strategy = "horizontal",
|
|
|
|
layout_config = {
|
|
|
|
horizontal = {
|
|
|
|
prompt_position = "top",
|
|
|
|
preview_width = 0.55,
|
|
|
|
results_width = 0.8,
|
|
|
|
},
|
|
|
|
vertical = {
|
|
|
|
mirror = false,
|
|
|
|
},
|
|
|
|
width = 0.87,
|
|
|
|
height = 0.80,
|
|
|
|
preview_cutoff = 120,
|
|
|
|
},
|
|
|
|
file_sorter = require("telescope.sorters").get_fuzzy_file,
|
2021-09-19 15:36:13 +01:00
|
|
|
file_ignore_patterns = { "node_modules" },
|
2021-08-16 08:49:09 +01:00
|
|
|
generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter,
|
2021-12-04 16:08:30 +00:00
|
|
|
path_display = { "truncate" },
|
2021-08-16 08:49:09 +01:00
|
|
|
winblend = 0,
|
|
|
|
border = {},
|
|
|
|
borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" },
|
|
|
|
color_devicons = true,
|
|
|
|
use_less = true,
|
|
|
|
set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil,
|
|
|
|
file_previewer = require("telescope.previewers").vim_buffer_cat.new,
|
|
|
|
grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new,
|
|
|
|
qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new,
|
|
|
|
-- Developer configurations: Not meant for general override
|
|
|
|
buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker,
|
|
|
|
},
|
|
|
|
}
|
2021-03-12 07:04:15 +00:00
|
|
|
|
2022-01-21 00:26:05 +00:00
|
|
|
function M.setup(override_flag)
|
|
|
|
if override_flag then
|
|
|
|
chad_defaults = require("core.utils").tbl_override_req("telescope", chad_defaults)
|
2021-08-22 11:35:50 +01:00
|
|
|
end
|
2022-01-21 00:26:05 +00:00
|
|
|
|
|
|
|
telescope.setup(chad_defaults)
|
|
|
|
|
|
|
|
local extensions = { "themes", "terms" }
|
|
|
|
|
|
|
|
pcall(function()
|
|
|
|
for _, ext in ipairs(extensions) do
|
|
|
|
telescope.load_extension(ext)
|
|
|
|
end
|
|
|
|
end)
|
|
|
|
end
|
|
|
|
|
|
|
|
return M
|