init
This commit is contained in:
commit
b3dba4542f
44 changed files with 1596 additions and 0 deletions
63
home/.config/nvim/lua/keymaps.lua
Normal file
63
home/.config/nvim/lua/keymaps.lua
Normal file
|
@ -0,0 +1,63 @@
|
|||
local map = vim.keymap.set
|
||||
|
||||
map('n', '<leader>ff', require('telescope.builtin').find_files, { desc = "Find files" })
|
||||
map('n', '<leader>fg', require('telescope.builtin').live_grep, { desc = "Live grep" })
|
||||
map('n', '<leader>fb', require('telescope.builtin').buffers, { desc = "Buffers" })
|
||||
map('n', '<leader>fh', require('telescope.builtin').help_tags, { desc = "Help tags" })
|
||||
|
||||
-- Project-specific ignored dirs for Telescope
|
||||
local function load_local_ignore()
|
||||
local cwd = vim.fn.getcwd()
|
||||
local config_path = cwd .. "/.nvim.lua"
|
||||
if vim.fn.filereadable(config_path) == 1 then
|
||||
local ok, config = pcall(dofile, config_path)
|
||||
if ok and config.fzf_ignore_dirs then
|
||||
return config.fzf_ignore_dirs
|
||||
end
|
||||
end
|
||||
return {}
|
||||
end
|
||||
|
||||
local ignored = load_local_ignore()
|
||||
local ignore_patterns = vim.tbl_map(function(d) return "**/" .. d .. "/*" end, ignored)
|
||||
|
||||
require('telescope').setup {
|
||||
defaults = {
|
||||
file_ignore_patterns = ignore_patterns,
|
||||
}
|
||||
}
|
||||
|
||||
-- za: Telescope open in current tab
|
||||
vim.keymap.set('n', 'za', function()
|
||||
require("telescope.builtin").find_files()
|
||||
end, { desc = "Telescope: open file in current tab" })
|
||||
|
||||
-- zt: Telescope open in new tab
|
||||
vim.keymap.set('n', 'zt', function()
|
||||
require("telescope.builtin").find_files({
|
||||
attach_mappings = function(_, map)
|
||||
map("i", "<CR>", function(prompt_bufnr)
|
||||
local actions = require("telescope.actions")
|
||||
local action_state = require("telescope.actions.state")
|
||||
local entry = action_state.get_selected_entry()
|
||||
actions.close(prompt_bufnr)
|
||||
vim.cmd("tabedit " .. entry.value)
|
||||
end)
|
||||
return true
|
||||
end,
|
||||
})
|
||||
end, { desc = "Telescope: open file in new tab" })
|
||||
|
||||
-- FZF
|
||||
|
||||
vim.keymap.set('n', 'zs', ':FZF<CR>', { noremap = true, silent = true })
|
||||
vim.api.nvim_create_user_command('FZFInTab', function()
|
||||
vim.fn['fzf#run'](vim.fn['fzf#wrap']({
|
||||
sink = function(selected)
|
||||
vim.cmd('tabedit ' .. selected)
|
||||
end
|
||||
}))
|
||||
end, {})
|
||||
|
||||
vim.keymap.set('n', 'zy', ':FZFInTab<CR>', { noremap = true, silent = true })
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue