summaryrefslogtreecommitdiff
path: root/nvim/lua/config/plugins/fzf.lua
blob: 9280b5ca14f5f0b0f9d0d1e0266ad833e4de9748 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
local file_edit_or_argadd = function(selected, opts)
	if #selected > 1 then
		FzfLua.actions.arg_add(selected, opts)
		FzfLua.args()
	else
		return FzfLua.actions.file_edit(selected, opts)
	end
end

require("fzf-lua").setup({
	winopts = {
		height = 1,
		width = 0.7,
		border = { " ", " ", " ", " ", " ", " ", " ", " " },
		col = 1, -- right-aligned
		border = "none",
		preview = {
			wrap = true,
			border = "none",
			scrollbar = false,
		},
	},
	grep = {
		hidden = true, -- show hidden files by default
	},
	files = {
		actions = {
			["enter"] = file_edit_or_argadd,
		},
	},
})

local opts = { silent = true }

vim.keymap.set("n", "<leader>ff", ":FzfLua files<CR>", { silent = true, desc = "Fzf: Files" })
vim.keymap.set("n", "<leader>fr", ":FzfLua resume<CR>", { silent = true, desc = "Fzf: Resume (After Alt+Esc)" })
vim.keymap.set("n", "<leader>fg", ":FzfLua live_grep<CR>", { silent = true, desc = "Fzf: Live Grep" })
vim.keymap.set("n", "<leader>fG", ":FzfLua grep<CR>", { silent = true, desc = "Fzf: Grep" })
vim.keymap.set("n", "<leader>fs", ":FzfLua git_status<CR>", { silent = true, desc = "Fzf: git status" })
vim.keymap.set("n", "<leader>fls", ":FzfLua lsp_workspace_symbols<CR>", { silent = true, desc = "Fzf: LSP Symbols" })
vim.keymap.set("n", "<leader>flr", ":FzfLua lsp_references<CR>", { silent = true, desc = "Fzf: LSP - References" })
vim.keymap.set("n", "<leader>flf", ":FzfLua lsp_finder<CR>", { silent = true, desc = "Fzf: LSP - Finder" })
vim.keymap.set("n", "<leader>fb", ":FzfLua buffers<CR>", { silent = true, desc = "Fzf: Buffers" })
vim.keymap.set("n", "<leader>fk", ":FzfLua keymaps<CR>", { silent = true, desc = "Fzf: Keymaps" })
vim.keymap.set("n", "<leader>fa", ":FzfLua args<CR>", { silent = true, desc = "Fzf: Args" })
vim.keymap.set("n", "<leader>fq", ":FzfLua quickfix<CR>", { silent = true, desc = "Fzf: Quickfix list" })