feat: add new Telescope extensions including frecency, undo tree, and recent files
This commit is contained in:
@@ -169,8 +169,8 @@ end
|
||||
--- Define user commands
|
||||
---@return nil
|
||||
function M.define_commands()
|
||||
-- Define Q abbreviation
|
||||
vim.cmd.cnoreabbrev("Q", "qall")
|
||||
-- Define Q as a usercmd
|
||||
vim.api.nvim_create_user_command("Q", "qall", { desc = "Quit all buffers" })
|
||||
|
||||
-- Define yank line command
|
||||
vim.api.nvim_create_user_command("YankLine", function()
|
||||
|
||||
+2
-2
@@ -32,7 +32,7 @@ M.alpha = {
|
||||
-- stylua: ignore start
|
||||
dashboard.section.buttons.val = {
|
||||
---@diagnostic disable: param-type-mismatch
|
||||
dashboard.button("f", " " .. " Find file", [[<cmd>lua require("data.func").frecency_picker() <cr>]]),
|
||||
dashboard.button("f", " " .. " Find file", LazyVim.pick("find_files")),
|
||||
dashboard.button("n", " " .. " New file", [[<cmd> ene <BAR> startinsert <cr>]]),
|
||||
dashboard.button("r", " " .. " Recent files", LazyVim.pick("oldfiles")),
|
||||
dashboard.button("g", " " .. " Grep text", LazyVim.pick("live_grep")),
|
||||
@@ -64,7 +64,7 @@ M.alpha = {
|
||||
M.dashboard_nvim = {
|
||||
choices = {
|
||||
{ -- Find File
|
||||
action = 'lua require("data.func".frecency_picker()()',
|
||||
action = 'lua LazyVim.pick("find_files")()',
|
||||
desc = " Find File",
|
||||
icon = " ",
|
||||
key = "f",
|
||||
|
||||
@@ -515,19 +515,6 @@ function M.dump_buffer_to_table(register)
|
||||
vim.fn.setreg(register, output)
|
||||
end
|
||||
|
||||
---@function Function to open the frecency picker
|
||||
---@return nil
|
||||
function M.frecency_picker()
|
||||
-- Trigger the picker
|
||||
require("telescope").extensions.frecency.frecency({ workspace = "CWD" })
|
||||
-- Remove `A` character that is added by the picker
|
||||
vim.api.nvim_feedkeys(
|
||||
vim.api.nvim_replace_termcodes("<BS>", true, true, true),
|
||||
"n",
|
||||
false
|
||||
)
|
||||
end
|
||||
|
||||
---@function Function to reload the user's Neovim configuration
|
||||
---@return nil
|
||||
function M.reload_config()
|
||||
|
||||
+56
-27
@@ -258,11 +258,6 @@ M.gist = {
|
||||
}
|
||||
|
||||
M.groups = {
|
||||
{ -- Icon picker menu
|
||||
lhs = "<leader>I",
|
||||
group = "IconPicker",
|
||||
icon = { icon = "", color = "orange" },
|
||||
},
|
||||
{ -- Gists menu
|
||||
lhs = "<leader>gn",
|
||||
group = "Gists",
|
||||
@@ -299,25 +294,6 @@ M.gx = {
|
||||
},
|
||||
}
|
||||
|
||||
M.iconpicker = {
|
||||
{ -- Pick Icon
|
||||
"<leader>Ii",
|
||||
"<cmd>IconPickerNormal<cr>",
|
||||
desc = "Pick Icon",
|
||||
},
|
||||
{ -- Yank Icon
|
||||
"<leader>Iy",
|
||||
"<cmd>IconPickerYank<cr>",
|
||||
desc = "Yank Icon",
|
||||
},
|
||||
{ -- Insert Icon in insert mode
|
||||
"<C-.>",
|
||||
"<cmd>IconPickerInsert<cr>",
|
||||
desc = "Insert Icon",
|
||||
mode = "i",
|
||||
},
|
||||
}
|
||||
|
||||
M.indentor = {
|
||||
{ -- Indentor
|
||||
"<C-i>",
|
||||
@@ -413,12 +389,12 @@ M.misc = {
|
||||
rhs = "<cmd>Neotree reveal toggle<cr>",
|
||||
desc = "Neotree toggle",
|
||||
},
|
||||
{ -- Telescope Frecency
|
||||
{ -- Telescope Find Files
|
||||
lhs = "<leader><leader>",
|
||||
rhs = function()
|
||||
require("data.func").frecency_picker()
|
||||
LazyVim.pick("find_files")()
|
||||
end,
|
||||
desc = "Telescope frecency",
|
||||
desc = "Find Files",
|
||||
},
|
||||
{ -- Exit Neovim
|
||||
lhs = "<leader>Q",
|
||||
@@ -713,6 +689,59 @@ M.overrides = {
|
||||
},
|
||||
}
|
||||
|
||||
M.telescope = {
|
||||
cmdline = {
|
||||
{
|
||||
":",
|
||||
function()
|
||||
require("telescope").extensions.cmdline.cmdline()
|
||||
end,
|
||||
desc = "Cmdline",
|
||||
},
|
||||
},
|
||||
lazy = {
|
||||
{
|
||||
"<leader>fz",
|
||||
function()
|
||||
require("telescope").extensions.lazy.lazy()
|
||||
end,
|
||||
desc = "Lazy Picker",
|
||||
},
|
||||
},
|
||||
symbols = {
|
||||
{ -- Telescope Symbols
|
||||
"<leader>f.",
|
||||
function()
|
||||
require("telescope.builtin").symbols({
|
||||
sources = { "emoji", "kaomoji", "gitmoji", "nerd", "math" },
|
||||
})
|
||||
end,
|
||||
desc = "Pick Icons",
|
||||
},
|
||||
{ -- Pick Icon in insert mode
|
||||
"<C-.>",
|
||||
function()
|
||||
require("telescope.builtin").symbols({
|
||||
sources = { "emoji", "kaomoji", "gitmoji", "nerd", "math" },
|
||||
})
|
||||
end,
|
||||
"i",
|
||||
|
||||
desc = "Pick Icon",
|
||||
},
|
||||
},
|
||||
toggleterm = {
|
||||
{ -- Pick ToggleTerms
|
||||
"<leader>ft",
|
||||
function()
|
||||
require("toggleterm-manager").open({})
|
||||
end,
|
||||
desc = "Pick Terminals",
|
||||
mode = "n",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
M.toggleterm = {
|
||||
{ -- Toggle Terminal
|
||||
"<c-/>",
|
||||
|
||||
@@ -455,6 +455,40 @@ M.gitblame = {
|
||||
},
|
||||
}
|
||||
|
||||
--- Telescope configuration options
|
||||
M.telescope = {
|
||||
cmdline = {
|
||||
extensions = {
|
||||
cmdline = {
|
||||
icons = {
|
||||
history = " ",
|
||||
command = " ",
|
||||
number = " ",
|
||||
system = "",
|
||||
unknown = "",
|
||||
},
|
||||
picker = {
|
||||
layout_config = {
|
||||
width = vim.fn.floor(vim.o.columns * 0.25),
|
||||
height = vim.fn.floor(vim.o.lines * 0.25),
|
||||
},
|
||||
},
|
||||
completions = {
|
||||
"command",
|
||||
},
|
||||
mappings = {
|
||||
complete = "<Tab>",
|
||||
run_selection = "<C-CR>",
|
||||
run_input = "<CR>",
|
||||
},
|
||||
overseer = {
|
||||
enabled = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
--- Neocodeium configuration options
|
||||
M.neocodeium = {
|
||||
opts = {
|
||||
|
||||
@@ -134,12 +134,6 @@ return {
|
||||
lazy = false,
|
||||
config = data.types.barsNlines.config,
|
||||
},
|
||||
{ -- Frecency Telescope extension
|
||||
"nvim-telescope/telescope-frecency.nvim",
|
||||
config = function()
|
||||
require("telescope").load_extension("frecency")
|
||||
end,
|
||||
},
|
||||
{ -- UndoTree Telescope extension
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = {
|
||||
@@ -169,4 +163,11 @@ return {
|
||||
{ -- NumberToggle
|
||||
"sitiom/nvim-numbertoggle",
|
||||
},
|
||||
{
|
||||
"folke/noice.nvim",
|
||||
optional = true,
|
||||
opts = {
|
||||
presets = { inc_rename = true },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
+49
-14
@@ -50,12 +50,6 @@ return {
|
||||
vim.g.unception_block_while_host_edits = true
|
||||
end,
|
||||
},
|
||||
{ -- 🍎 Icon Picker
|
||||
"ziontee113/icon-picker.nvim",
|
||||
lazy = true,
|
||||
opts = { disable_legacy_commands = true },
|
||||
keys = data.keys.iconpicker,
|
||||
},
|
||||
{ -- Codesnap
|
||||
"mistricky/codesnap.nvim",
|
||||
enabled = data.func.check_global_var("codesnap", true, true),
|
||||
@@ -123,14 +117,6 @@ return {
|
||||
ft = "help",
|
||||
dependencies = data.deps.needs_treesitter,
|
||||
},
|
||||
-- { -- Docker-compose logs
|
||||
-- "adelowo/dockercomposelogs.nvim",
|
||||
-- config = function()
|
||||
-- require("dockercomposelogs").setup({})
|
||||
-- end,
|
||||
-- event = "VeryLazy",
|
||||
-- dependencies = data.deps.needs_telescope,
|
||||
-- },
|
||||
{ -- Suda
|
||||
"lambdalisue/vim-suda",
|
||||
cmd = data.cmd.suda,
|
||||
@@ -158,4 +144,53 @@ return {
|
||||
enable_line_number = true,
|
||||
},
|
||||
},
|
||||
{ -- Telescope Cmdline
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"jonarrien/telescope-cmdline.nvim",
|
||||
},
|
||||
keys = data.keys.telescope.cmdline,
|
||||
opts = data.types.telescope.cmdline,
|
||||
config = function(_, opts)
|
||||
require("telescope").setup(opts)
|
||||
require("telescope").load_extension("cmdline")
|
||||
end,
|
||||
},
|
||||
{
|
||||
"prochri/telescope-all-recent.nvim",
|
||||
dependencies = {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"kkharji/sqlite.lua",
|
||||
-- optional, if using telescope for vim.ui.select
|
||||
"stevearc/dressing.nvim",
|
||||
},
|
||||
opts = {
|
||||
default = {
|
||||
disable = true, -- disable any unkown pickers (recommended)
|
||||
use_cwd = true, -- differentiate scoring for each picker based on cwd
|
||||
sorting = "frecency", -- sorting: options: 'recent' and 'frecency'
|
||||
},
|
||||
},
|
||||
},
|
||||
{ -- Telescope symbols
|
||||
"nvim-telescope/telescope-symbols.nvim",
|
||||
config = function() end,
|
||||
keys = data.keys.telescope.symbols,
|
||||
},
|
||||
{ -- Telescope Toggleterm
|
||||
"ryanmsnyder/toggleterm-manager.nvim",
|
||||
dependencies = {
|
||||
"akinsho/nvim-toggleterm.lua",
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"nvim-lua/plenary.nvim", -- only needed because it's a dependency of telescope
|
||||
},
|
||||
config = true,
|
||||
keys = data.keys.telescope.toggleterm,
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = "tsakirist/telescope-lazy.nvim",
|
||||
keys = data.keys.telescope.lazy,
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user