fix: Fixes some keymap collisions in nvim

This commit is contained in:
2024-11-23 08:26:26 -05:00
parent 8ac60b4196
commit 0a9e065b4d
6 changed files with 115 additions and 113 deletions

View File

@@ -3,19 +3,12 @@ vim.g.maplocalleader = " "
local keymap = vim.keymap.set local keymap = vim.keymap.set
local default_options = { noremap = true, silent = true } local default_options = { noremap = true, silent = true }
local telescope = require("telescope.builtin")
local wk = require("which-key") local wk = require("which-key")
local wk_add = function(mode, keymaps) local wk_add = function(mode, keymaps)
wk.add(keymaps, { mode = mode, silent = true }) wk.add(keymaps, { mode = mode, silent = true })
end end
local find_files = function(dir)
return function()
telescope.find_files({ cwd = dir, hidden = true, no_ignore = true })
end
end
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- Insert Mode -- Insert Mode
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@@ -41,20 +34,6 @@ wk_add("n", {
{ "J", ":move .+1<CR>==", desc = "Move line down" }, { "J", ":move .+1<CR>==", desc = "Move line down" },
{ "K", ":move .-2<CR>==", desc = "Move line up" }, { "K", ":move .-2<CR>==", desc = "Move line up" },
-- Git
{ "<leader>gg", ":LazyGit<CR>", desc = "Open [G]it" },
{ "<leader>gf", ":Telescope git_files<CR>", desc = "Find [G]it [F]ile" },
--{ "<leader>t", ":ToggleTerm<CR>", desc = "Open [T]erminal" },
-- Telescope keymaps
{ "<leader>ff", telescope.find_files, desc = "[F]ind [F]iles" },
{ "<leader>fg", telescope.live_grep, desc = "[F]ind [G]rep" },
{ "<leader>fb", telescope.buffers, desc = "[F]ind [B]uffers" },
{ "<leader>fh", telescope.help_tags, desc = "[F]ind [H]elp" },
{ "<leader>fd", find_files("$DOTFILES"), desc = "[F]ind [D]otfiles" },
{ "<leader>fn", find_files("$DOTFILES/nvim/m-housh"), desc = "[F]ind [N]vim file" },
{ "<leader>fs", find_files("$DOTFILES/scripts/scripts"), desc = "[F]ind [S]cript" },
{ "<leader>fz", find_files("$DOTFILES/zsh/config"), desc = "[F]ind [Z]sh config file" },
{ "<leader>z", "<CMD>:ZenMode<CR>", desc = "[Z]en Mode" }, { "<leader>z", "<CMD>:ZenMode<CR>", desc = "[Z]en Mode" },
}) })

View File

@@ -1,10 +1,11 @@
return { return {}
"kdheepak/lazygit.nvim", -- return {
dependencies = { -- "kdheepak/lazygit.nvim",
"nvim-telescope/telescope.nvim", -- dependencies = {
"nvim-lua/plenary.nvim" -- "nvim-telescope/telescope.nvim",
}, -- "nvim-lua/plenary.nvim"
config = function() -- },
require("telescope").load_extension("lazygit") -- config = function()
end, -- require("telescope").load_extension("lazygit")
} -- end,
-- }

View File

@@ -77,6 +77,26 @@ return {
}, },
}) })
local map = function(keys, action, desc)
local opts = { silent = true, noremap = true, desc = desc }
vim.keymap.set("n", keys, action, opts)
end
local find_files = function(dir)
return function()
builtin.find_files({ cwd = dir, hidden = true, no_ignore = true })
end
end
vim.keymap.set("n", "<C-A-j>", builtin.jumplist, { silent = true, noremap = true, desc = "Open [J]ump List." }) vim.keymap.set("n", "<C-A-j>", builtin.jumplist, { silent = true, noremap = true, desc = "Open [J]ump List." })
map("<leader>ff", builtin.find_files, "[F]ind [F]iles")
map("<leader>fg", builtin.live_grep, "[F]ind [G]rep")
map("<leader>fb", builtin.buffers, "[F]ind [B]uffers")
map("<leader>fh", builtin.help_tags, "[F]ind [H]elp")
map("<leader>fd", find_files("$DOTFILES"), "[F]ind [D]otfiles")
map("<leader>fn", find_files("$DOTFILES/nvim/m-housh"), "[F]ind [N]vim file")
map("<leader>fs", find_files("$DOTFILES/scripts/scripts"), "[F]ind [S]cript")
map("<leader>fz", find_files("$DOTFILES/zsh/config"), "[F]ind [Z]sh config file")
map("<leader>gf", builtin.git_files, "Find [G]it [F]iles")
end, end,
} }

View File

@@ -1,13 +1,16 @@
return { return {
"folke/todo-comments.nvim", "folke/todo-comments.nvim",
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = {
"nvim-lua/plenary.nvim",
"folke/trouble.nvim",
},
opts = {}, opts = {},
config = function() config = function()
local todos = require("todo-comments") local todos = require("todo-comments")
todos.setup({}) todos.setup({})
vim.keymap.set("n", "<leader>tq", "<CMD>TodoQuickFix<CR>", { desc = "[T]odo [Q]uick fix list." }) vim.keymap.set("n", "<leader>tq", "<CMD>Trouble todo toggle<CR>", { desc = "[T]odo [Q]uick fix list." })
vim.keymap.set("n", "<leader><leader>t", "<CMD>TodoTelescope<CR>", { desc = "[T]odo telescope list." }) vim.keymap.set("n", "<leader><leader>t", "<CMD>TodoTelescope<CR>", { desc = "[T]odo telescope list." })
vim.keymap.set("n", "<leader>tl", "<CMD>TodoLocList<CR>", { desc = "[T]odo [L]ocation list." }) vim.keymap.set("n", "<leader>tl", "<CMD>TodoLocList<CR>", { desc = "[T]odo [L]ocation list." })
vim.keymap.set("n", "]t", function() vim.keymap.set("n", "]t", function()

View File

@@ -1,78 +1,78 @@
return { return {
"nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter",
dependencies = { dependencies = {
'nvim-telescope/telescope-fzf-native.nvim', "nvim-telescope/telescope-fzf-native.nvim",
'nvim-treesitter/nvim-treesitter-textobjects', "nvim-treesitter/nvim-treesitter-textobjects",
}, },
build = ':TSUpdate', build = ":TSUpdate",
event = { 'BufReadPre', 'BufNewFile' }, event = { "BufReadPre", "BufNewFile" },
config = function() config = function()
require('nvim-treesitter.configs').setup { require("nvim-treesitter.configs").setup({
ensure_installed = { ensure_installed = {
"bash", "bash",
"cmake", "cmake",
"dockerfile", "dockerfile",
"go", "go",
"hcl", "hcl",
"html", "html",
"java", "java",
"javascript", "javascript",
"json", "json",
"latex", "latex",
"ledger", "ledger",
"llvm", "llvm",
"lua", "lua",
"make", "make",
"markdown", "markdown",
"python", "python",
"swift", "swift",
"toml", "toml",
"xml", "xml",
"yaml" "yaml",
}, -- one of "all", "maintained" (parsers with maintainers), or a list of languages }, -- one of "all", "maintained" (parsers with maintainers), or a list of languages
ignore_install = {}, -- List of parsers to ignore installing ignore_install = {}, -- List of parsers to ignore installing
highlight = { highlight = {
enable = true, -- false will disable the whole extension enable = true, -- false will disable the whole extension
disable = {} -- list of language that will be disabled disable = {}, -- list of language that will be disabled
}, },
incremental_selection = { incremental_selection = {
enable = true, enable = true,
keymaps = { keymaps = {
init_selection = "<CR>", init_selection = "<CR>",
scope_incremental = "<CR>", scope_incremental = "<CR>",
node_incremental = "<TAB>", node_incremental = "<TAB>",
node_decremental = "<S-TAB>" node_decremental = "<S-TAB>",
} },
}, },
indent = {enable = true}, indent = { enable = true },
autopairs = {{enable = true}}, autopairs = { { enable = true } },
textobjects = { textobjects = {
select = { select = {
enable = true, enable = true,
-- Automatically jump forward to textobj, similar to targets.vim -- Automatically jump forward to textobj, similar to targets.vim
lookahead = true, lookahead = true,
keymaps = { keymaps = {
-- You can use the capture groups defined in textobjects.scm -- You can use the capture groups defined in textobjects.scm
["af"] = "@function.outer", ["af"] = "@function.outer",
["if"] = "@function.inner", ["if"] = "@function.inner",
["ac"] = "@class.outer", ["ac"] = "@class.outer",
["ic"] = "@class.inner", ["ic"] = "@class.inner",
["al"] = "@loop.outer", ["al"] = "@loop.outer",
["il"] = "@loop.inner", ["il"] = "@loop.inner",
["ib"] = "@block.inner", ["ib"] = "@block.inner",
["ab"] = "@block.outer", ["ab"] = "@block.outer",
["ir"] = "@parameter.inner", ["ir"] = "@parameter.inner",
["ar"] = "@parameter.outer", ["ar"] = "@parameter.outer",
["a="] = "@assignment.outer", ["a="] = "@assignment.outer",
["i="] = "@assignment.inner", ["i="] = "@assignment.inner",
} },
} },
}, },
rainbow = { rainbow = {
enable = true, enable = true,
extended_mode = true, -- Highlight also non-parentheses delimiters, boolean or table: lang -> boolean extended_mode = true, -- Highlight also non-parentheses delimiters, boolean or table: lang -> boolean
max_file_lines = 2000 -- Do not enable for files with more than specified lines max_file_lines = 2000, -- Do not enable for files with more than specified lines
} },
} })
end end,
} }

View File

@@ -3,10 +3,9 @@ return {
dependencies = { "nvim-tree/nvim-web-devicons" }, dependencies = { "nvim-tree/nvim-web-devicons" },
event = { "BufReadPre", "BufNewFile" }, event = { "BufReadPre", "BufNewFile" },
keys = { keys = {
{ "<leader>t", "<cmd>Trouble diagnostics toggle<cr>", { desc = "[T]rouble diagnostics" } }, { "<leader>d", "<cmd>Trouble diagnostics toggle<cr>", { desc = "Trouble [D]iagnostics" } },
-- FIX: - These collide with todo-comment keymaps. { "<leader>dq", "<cmd>Trouble quickfix toggle<cr>", { desc = "Trouble [Q]uikfix." } },
--{ "<leader>tq", "<cmd>Trouble quickfix toggle<cr>", { desc = "Open a quickfix" } }, { "<leader>dl", "<cmd>Trouble loclist toggle<cr>", { desc = "Trouble [L]ocation list" } },
--{ "<leader>tl", "<cmd>Trouble loclist toggle<cr>", { desc = "[T]rouble [L]ocation list" } },
}, },
opts = {}, opts = {},