summaryrefslogtreecommitdiffstatshomepage
path: root/nvim
diff options
context:
space:
mode:
authorToby Vincent <tobyv13@gmail.com>2023-05-04 17:06:39 -0500
committerToby Vincent <tobyv13@gmail.com>2023-05-04 17:06:39 -0500
commit4f60847e876cd693c8a2dc84be1b804fc4bcab40 (patch)
tree924023eb9f17a43b9a47c493832ef5deb8ccedc0 /nvim
parent3766f20a5d10b4e859548083dc7eabab84788efd (diff)
perf(nvim): remove unused telescope extensions ...
and improve lazy loading
Diffstat (limited to 'nvim')
-rw-r--r--nvim/.config/nvim/lazy-lock.json2
-rw-r--r--nvim/.config/nvim/lua/tobyvin/plugins/telescope.lua121
2 files changed, 28 insertions, 95 deletions
diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json
index a20cf02..853829e 100644
--- a/nvim/.config/nvim/lazy-lock.json
+++ b/nvim/.config/nvim/lazy-lock.json
@@ -56,8 +56,6 @@
"refactoring.nvim": { "branch": "master", "commit": "47a1716a9020c0093a1c8af36c3f9434dae62bbd" },
"ripgrep": { "branch": "master", "commit": "041544853c86dde91c49983e5ddd0aa799bd2831" },
"rust-tools.nvim": { "branch": "master", "commit": "71d2cf67b5ed120a0e31b2c8adb210dd2834242f" },
- "sqlite.lua": { "branch": "master", "commit": "b7e28c8463254c46a8e61c52d27d6a2040492fc3" },
- "telescope-all-recent.nvim": { "branch": "main", "commit": "cade0258e1ca4dbafe64843fbd13433f8cd63990" },
"telescope-dap.nvim": { "branch": "master", "commit": "313d2ea12ae59a1ca51b62bf01fc941a983d9c9c" },
"telescope-file-browser.nvim": { "branch": "master", "commit": "e0fcb12702ad0d2873544a31730f9aaef04fd032" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "580b6c48651cabb63455e97d7e131ed557b8c7e2" },
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/telescope.lua b/nvim/.config/nvim/lua/tobyvin/plugins/telescope.lua
index 8710b35..caa4814 100644
--- a/nvim/.config/nvim/lua/tobyvin/plugins/telescope.lua
+++ b/nvim/.config/nvim/lua/tobyvin/plugins/telescope.lua
@@ -9,16 +9,6 @@ local M = {
build = "make",
},
{
- "prochri/telescope-all-recent.nvim",
- dependencies = "kkharji/sqlite.lua",
- opts = {
- pickers = {
- find_files = { disable = true },
- },
- },
- config = true,
- },
- {
"AckslD/nvim-neoclip.lua",
config = true,
},
@@ -50,6 +40,8 @@ local M = {
i = {
["<Esc>"] = "close",
["<C-h>"] = "which_key",
+ ["<C-Down>"] = "cycle_history_next",
+ ["<C-Up>"] = "cycle_history_prev",
},
},
},
@@ -62,11 +54,6 @@ local M = {
"--hidden",
"--strip-cwd-prefix",
},
- mappings = {
- i = {
- ["<C-r>"] = "move_file",
- },
- },
},
oldfiles = {
only_cwd = true,
@@ -90,16 +77,30 @@ local M = {
},
},
},
+ keys = {
+ "<leader>f",
+ "<leader>g",
+ },
}
-function M.init()
- local builtin = setmetatable({}, {
- __index = function(_, k)
- return function()
- require("telescope.builtin")[k]()
- end
- end,
- })
+function M:config(opts)
+ opts.extensions.undo = {
+ mappings = {
+ i = {
+ ["<cr>"] = require("telescope-undo.actions").restore,
+ ["<C-cr>"] = require("telescope-undo.actions").yank_additions,
+ ["<S-cr>"] = require("telescope-undo.actions").yank_deletions,
+ },
+ },
+ }
+
+ require("telescope").setup(opts)
+ require("telescope").load_extension("fzf")
+ require("telescope").load_extension("undo")
+ require("telescope").load_extension("neoclip")
+
+ local builtin = require("telescope.builtin")
+ local extensions = require("telescope").extensions
vim.keymap.set("n", "<leader>fa", builtin.autocommands, { desc = "autocommands" })
vim.keymap.set("n", "<leader>fb", builtin.buffers, { desc = "buffers" })
@@ -131,80 +132,14 @@ function M.init()
vim.keymap.set("n", "<leader>gf", builtin.git_files, { desc = "files" })
vim.keymap.set("n", "<leader>gt", builtin.git_status, { desc = "status" })
vim.keymap.set("n", "<leader>gT", builtin.git_stash, { desc = "stash" })
-
- vim.keymap.set("n", "<leader>fd", function()
- require("telescope").extensions.file_browser.file_browser()
- end, { desc = "file browser" })
-
- vim.keymap.set("n", "<leader>fg", function()
- require("telescope").extensions.live_grep_args.live_grep_args()
- end, { desc = "live grep" })
+ vim.keymap.set("n", "<leader>fd", extensions.file_browser.file_browser, { desc = "file browser" })
+ vim.keymap.set("n", "<leader>fg", extensions.live_grep_args.live_grep_args, { desc = "live grep" })
+ vim.keymap.set("n", "<leader>fu", extensions.undo.undo, { desc = "undo" })
+ vim.keymap.set("n", "<leader>fp", extensions.neoclip.default, { desc = "clipboard" })
vim.keymap.set("v", "<leader>fg", function()
require("telescope-live-grep-args.shortcuts").grep_visual_selection()
end, { desc = "live grep selection" })
-
- vim.keymap.set("n", "<leader>fu", function()
- require("telescope").extensions.undo.undo()
- end, { desc = "undo" })
-
- vim.keymap.set("n", "<leader>fp", function()
- require("telescope").extensions.neoclip.default()
- end, { desc = "clipboard" })
-end
-
-function M.config(_, opts)
- local actions = require("telescope.actions")
-
- --- Rename files for |telescope.picker.find_files|.<br>
- ---@param prompt_bufnr number: The prompt bufnr
- actions.move_file = function(prompt_bufnr)
- local Path = require("plenary.path")
-
- local finders = require("telescope.finders")
- local action_state = require("telescope.actions.state")
- local picker = action_state.get_current_picker(prompt_bufnr)
- local entry = action_state.get_selected_entry()
-
- if not entry then
- return
- end
-
- local old_path = Path:new(entry[1])
- vim.ui.input(
- { prompt = "Insert a new name: ", default = old_path:make_relative(), completion = "file" },
- function(file)
- vim.cmd([[ redraw ]]) -- redraw to clear out vim.ui.prompt to avoid hit-enter prompt
-
- local new_path = Path:new(file)
- if new_path.filename == "" or old_path.filename == new_path.filename then
- return
- end
-
- new_path:parent():mkdir({ parents = true })
- old_path:rename({ new_name = new_path.filename })
-
- -- TODO: figure out how to properly refresh picker
- picker:refresh(finders.new_oneshot_job(opts.pickers.find_files.find_command, {}))
- end
- )
- end
-
- opts.extensions.undo = {
- mappings = {
- i = {
- ["<cr>"] = require("telescope-undo.actions").restore,
- ["<C-cr>"] = require("telescope-undo.actions").yank_additions,
- ["<S-cr>"] = require("telescope-undo.actions").yank_deletions,
- },
- },
- }
-
- require("telescope").setup(opts)
- require("telescope").load_extension("fzf")
- require("telescope").load_extension("undo")
- require("telescope").load_extension("neoclip")
- require("telescope-all-recent")
end
return M