541 lines
18 KiB
Lua
541 lines
18 KiB
Lua
local map = vim.keymap.set
|
|
local term = require("utils.terminal")
|
|
local map_from_table = require("utils.keymaps.converters.from_table").set_keybindings
|
|
local add_to_whichkey = require("utils.keymaps.converters.whichkey").addToWhichKey
|
|
local term_factory = term.term_factory
|
|
local term_toggle = term.term_toggle
|
|
|
|
local opts = { silent = true, noremap = true }
|
|
|
|
-- Leader key
|
|
vim.g.mapleader = " "
|
|
vim.g.maplocalleader = ","
|
|
|
|
-- Custom commands
|
|
vim.api.nvim_create_user_command("Config", "edit ~/.config/nvim", {})
|
|
vim.api.nvim_create_user_command("Keymaps", "edit ~/.config/nvim/lua/core/keymaps.lua", {})
|
|
|
|
-- {{{ Basic Mappings
|
|
local basic_mappings = {
|
|
{ key = "<C-u>", cmd = "<C-u>zz", desc = "Scroll up and center", mode = "n" },
|
|
{ key = "n", cmd = "nzzzv", desc = "Next search result and center", mode = "n" },
|
|
{ key = "N", cmd = "Nzzzv", desc = "Previous search result and center", mode = "n" },
|
|
{ key = "<leader>p", cmd = '"_dP', desc = "Paste without yanking", mode = "x", group = "Paste in place" },
|
|
{ key = "<", cmd = "<gv", desc = "Reselect after indent", mode = "v" },
|
|
{ key = ">", cmd = ">gv", desc = "Reselect after indent", mode = "v" },
|
|
{ key = "J", cmd = ":m '>+1<CR>gv=gv", desc = "Move line down", mode = "v" },
|
|
{ key = "K", cmd = ":m '<-2<CR>gv=gv", desc = "Move line up", mode = "v" },
|
|
}
|
|
--}}}
|
|
|
|
--{{{ Buffer Navigation Mappings
|
|
local buffer_navigation_mappings = {
|
|
{ key = "<C-J>", cmd = ":bnext<CR>", desc = "Next buffer", mode = "n" },
|
|
{ key = "<C-K>", cmd = ":bprev<CR>", desc = "Previous buffer", mode = "n" },
|
|
{ key = "<leader>bb", cmd = ":Telescope buffers<CR>", desc = "List buffers", mode = "n", group = "Buffers" },
|
|
{ key = "<leader>bk", cmd = ":bdelete<CR>", desc = "Delete buffer", mode = "n", group = "Buffers" },
|
|
{ key = "<leader>bn", cmd = ":bnext<CR>", desc = "Next buffer", mode = "n", group = "Buffers" },
|
|
{ key = "<leader>bp", cmd = ":bprev<CR>", desc = "Previous buffer", mode = "n", group = "Buffers" },
|
|
}
|
|
--}}}
|
|
|
|
--{{{ Terminal Mappings
|
|
local terminal_mappings = {
|
|
{
|
|
key = "op",
|
|
cmd = "<C-\\><C-N>:ToggleTerm name=ipython",
|
|
desc = "Open IPython",
|
|
mode = "v",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "oP",
|
|
cmd = "<C-\\><C-N>:ToggleTerm name=ipython-full",
|
|
desc = "Open full IPython",
|
|
mode = "v",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "<C-T>",
|
|
cmd = ":ToggleTerm name=toggleterm<CR>",
|
|
desc = "Toggle terminal",
|
|
mode = "n",
|
|
},
|
|
{
|
|
key = "<leader>tt",
|
|
cmd = ":ToggleTerm name=toggleterm<CR>",
|
|
desc = "Toggle terminal",
|
|
mode = "n",
|
|
group = "Toggle",
|
|
},
|
|
{
|
|
key = "<leader>tT",
|
|
cmd = ":ToggleTerm name=toggleterm-full direction=tab<CR>",
|
|
desc = "Toggle full terminal",
|
|
mode = "n",
|
|
group = "Toggle",
|
|
},
|
|
{
|
|
key = "<leader>ot",
|
|
cmd = ":ToggleTerm name=toggleterm<CR>",
|
|
desc = "Open terminal",
|
|
mode = "n",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "<leader>oT",
|
|
cmd = ":ToggleTerm name=toggleterm-full direction=tab<CR>",
|
|
desc = "Open full terminal",
|
|
mode = "n",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "<leader>ts",
|
|
cmd = ":TermSelect<CR>",
|
|
desc = "Select terminal",
|
|
mode = "n",
|
|
group = "Terminal",
|
|
},
|
|
{
|
|
key = "<leader>tv",
|
|
cmd = ":ToggleTerm direction=vertical name=toggleterm-vert<CR>",
|
|
desc = "Toggle vertical terminal",
|
|
mode = "n",
|
|
group = "Terminal",
|
|
},
|
|
{
|
|
key = "<leader>th",
|
|
cmd = ":ToggleTerm direction=horizontal name=toggleterm-hori<CR>",
|
|
desc = "Toggle horizontal terminal",
|
|
mode = "n",
|
|
group = "Terminal",
|
|
},
|
|
{
|
|
key = "<leader>ov",
|
|
cmd = ":ToggleTerm direction=vertical name=toggleterm-vert<CR>",
|
|
desc = "Open vertical terminal",
|
|
mode = "n",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "<leader>oh",
|
|
cmd = ":ToggleTerm direction=horizontal name=toggleterm-hori<CR>",
|
|
desc = "Open horizontal terminal",
|
|
mode = "n",
|
|
group = "Open",
|
|
},
|
|
{
|
|
key = "<leader>tf",
|
|
cmd = ":ToggleTerm name=toggleterm<CR>",
|
|
desc = "Toggle terminal",
|
|
mode = "n",
|
|
group = "Terminal",
|
|
},
|
|
{
|
|
key = "<leader>-",
|
|
cmd = ":ToggleTerm direction='horizontal'<CR>",
|
|
desc = "Toggle horizontal terminal",
|
|
mode = "n",
|
|
group = "Horizontal Terminal",
|
|
},
|
|
{
|
|
key = "<leader>|",
|
|
cmd = ":ToggleTerm direction='vertical'<CR>",
|
|
desc = "Toggle vertical terminal",
|
|
mode = "n",
|
|
group = "Vertical Terminal",
|
|
},
|
|
}
|
|
--}}}
|
|
|
|
-- {{{ LSP Mappings
|
|
local lsp_mappings = {
|
|
{ mode = "n", key = "gA", cmd = vim.lsp.buf.code_action, group = "Code Action" },
|
|
{ mode = "n", key = "gd", cmd = ":Telescope lsp_definitions<CR>", group = "LSP Definitions" },
|
|
{ mode = "n", key = "gDc", cmd = ":Telescope lsp_implementations<CR>", group = "LSP Implementations" },
|
|
{ mode = "n", key = "gDf", cmd = ":Telescope lsp_definitions<CR>", group = "LSP Definitions" },
|
|
{ mode = "n", key = "gF", cmd = ":edit <cfile><CR>", group = "Edit File" },
|
|
{ mode = "n", key = "gT", cmd = ":Telescope lsp_type_definitions<CR>", group = "LSP Type Definitions" },
|
|
{ mode = "n", key = "gb", cmd = ":Gitsigns blame_line<CR>", group = "Git Blame" },
|
|
{ mode = "n", key = "gi", cmd = ":Telescope lsp_implementations<CR>", group = "Telescope Implementations" },
|
|
{ mode = "n", key = "gj", cmd = ":Telescope jumplist<CR>", group = "Telescope Jumplist" },
|
|
{ mode = "n", key = "gr", cmd = ":Telescope lsp_references<CR>", goup = "LSP References" },
|
|
{ mode = "n", key = "gs", cmd = vim.lsp.buf.signature_help },
|
|
-- { mode = "n", key = "K", cmd = vim.lsp.buf.hover },
|
|
{ mode = "n", key = "<leader>ca", cmd = vim.lsp.buf.code_action, group = "Code" },
|
|
{ mode = "n", key = "<leader>ch", cmd = ":lua vim.lsp.buf.signature_help()<CR>", group = "Signature Help" },
|
|
{ mode = "n", key = "<leader>cR", cmd = ":lua vim.lsp.buf.rename()<CR>", group = "Rename" },
|
|
{ mode = "n", key = "<leader>cr", cmd = ":Telescope lsp_references<CR>", group = "LSP References" },
|
|
{ mode = "n", key = "<leader>cs", cmd = ":Telescope lsp_document_symbols<CR>", group = "LsP Document Symbols" },
|
|
{ mode = "n", key = "<leader>ct", cmd = ":Telescope lsp_type_definitions<CR>", group = "LSP Definitions" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>cw",
|
|
cmd = ":Telescope lsp_dynamic_workspace_symbols<CR>",
|
|
group = "LSP Workspace Symbols",
|
|
},
|
|
{ mode = "n", key = "<leader>ci", cmd = ":Telescope lsp_implementations<CR>", group = "LSP Implementations" },
|
|
{ mode = "n", key = "<leader>cci", cmd = ":Telescope lsp_incoming_calls<CR>", group = "LSP Incoming Calls" },
|
|
{ mode = "n", key = "<leader>cco", cmd = ":Telescope lsp_outgoing_calls<CR>", group = "LSP Outgoing Calls" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>cd",
|
|
cmd = ":Telescope diagnostics theme=dropdown layout_config={width=0.8}<CR>",
|
|
group = "Telecope Diagnostics",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>cDs",
|
|
cmd = ":Telescope diagnostics theme=dropdown layout_config={width=0.8}<CR>",
|
|
group = "Telecope Diagnostics",
|
|
},
|
|
{ mode = "n", key = "<leader>cDn", cmd = ":lua vim.diagnostic.goto_next()<CR>", group = "Goto Next Preview" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>cDp",
|
|
cmd = ":lua vim.diagnostic.goto_prev()<CR<CR>",
|
|
group = "Goto Previous Preview",
|
|
},
|
|
{ mode = "n", key = "<leader>cl", cmd = ":lua vim.diagnostic.setloclist()<CR>", group = "Set Loclist" },
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Code Companion Mappings
|
|
local code_companion_mappings = {
|
|
{ mode = "n", key = "<leader>cp", cmd = ":vert Copilot panel<CR>", group = "Code" },
|
|
{ mode = "n", key = "<leader>oc", cmd = ":CodeCompanionChat Toggle<CR>", group = "Open" },
|
|
{ mode = "n", key = "<leader>Cc", cmd = ":CodeCompanionChat Toggle<CR>", group = "CodeCompanion" },
|
|
{ mode = "n", key = "<leader>Ci", cmd = ":CodeCompanion ", group = "CodeCompanion" },
|
|
{ mode = "n", key = "<leader>CT", cmd = ":CodeCompanionChat Toggle<CR>", group = "CodeCompanion" },
|
|
{ mode = "n", key = "<leader>Ca", cmd = ":CodeCompanionActions<CR>", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Cc", cmd = ":CodeCompanionChat Add<CR>", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Ci", cmd = ":CodeCompanion /buffer ", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Ce", cmd = ":CodeCompanion /explain<CR>", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Cf", cmd = ":CodeCompanion /fix<CR>", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Cl", cmd = ":CodeCompanion /lsp<CR>", group = "CodeCompanion" },
|
|
{ mode = "v", key = "<leader>Ct", cmd = ":CodeCompanion /tests<CR>", group = "CodeCompanion" },
|
|
}
|
|
-- }}}
|
|
|
|
--{{{ Telescope mappings
|
|
local telescope_mappings = {
|
|
{ mode = "n", key = "//", cmd = ":Telescope current_buffer_fuzzy_find previewer=false<CR>" },
|
|
{ mode = "n", key = "??", cmd = ":Telescope lsp_document_symbols theme=dropdown layout_config={width=0.5}<CR>" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>fc",
|
|
cmd = ':Telescope color_names theme=dropdown layout_config={width=0.45,height=25,prompt_position="bottom"} layout_strategy=vertical<CR>',
|
|
group = "Find",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>Tc",
|
|
cmd = ":Telescope colorscheme<CR>",
|
|
group = "Telescope",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>TC",
|
|
cmd = ':Telescope color_names theme=dropdown layout_config={width=0.45,height=25,prompt_position="bottom"} layout_strategy=vertical<CR>',
|
|
group = "Telescope",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>Tn",
|
|
cmd = ":Telescope notify theme=dropdown layout_config={width=0.75}<CR>",
|
|
group = "Telescope",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>TN",
|
|
cmd = ":Telescope noice theme=dropdown layout_config={width=0.75}<CR>",
|
|
group = "Telescope",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>ff",
|
|
cmd = ":Telescope find_files find_command=rg,--ignore,--follow,--hidden,--files prompt_prefix=🔍<CR>",
|
|
group = "Find",
|
|
},
|
|
{ mode = "n", key = "<leader>fg", cmd = ":Telescope live_grep<CR>", group = "Find" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>Tg",
|
|
cmd = ':Telescope glyph theme=dropdown layout_config={width=0.45,height=35,prompt_position="bottom"} layout_strategy=vertical<CR>',
|
|
group = "Telecope",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>fG",
|
|
cmd = ':Telescope glyph theme=dropdown layout_config={width=0.45,height=35,prompt_position="bottom"} layout_strategy=vertical<CR>',
|
|
group = "Find",
|
|
},
|
|
{ mode = "n", key = "<leader>fb", cmd = ":Telescope file_browser<CR>", group = "Find" },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>fr",
|
|
cmd = ":Telescope oldfiles theme=dropdown layout_config={width=0.5}<CR>",
|
|
group = "Find",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>hc",
|
|
cmd = ":Telescope commands<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>hv",
|
|
cmd = ":Telescope vim_options<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>hk",
|
|
cmd = ":Telescope keymaps<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>hs",
|
|
cmd = ":Telescope spell_suggest<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>ht",
|
|
cmd = ":Telescope help_tags<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>hm",
|
|
cmd = ":Telescope man_pages theme=dropdown layout_config={width=0.75}<CR>",
|
|
group = "Help",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "<leader>sf",
|
|
cmd = ":Telescope find_files find_command=rg,--ignore,--follow,--hidden,--files prompt_prefix=🔍<CR>",
|
|
group = "Search",
|
|
},
|
|
{ mode = "n", key = "<leader>sF", cmd = ":Telescope fidget<CR>", group = "Search" },
|
|
{ mode = "n", key = "<leader>sg", cmd = ":Telescope live_grep<CR>", group = "Search" },
|
|
{ mode = "n", key = "<leader>sh", cmd = ":Telescope command_history<CR>", group = "Search" },
|
|
{ mode = "n", key = "<leader>sm", cmd = ":Telescope man_pages<CR>", group = "Search" },
|
|
{ mode = "n", key = "<leader>s/", cmd = ":Telescope search_history<CR>", group = "Search" },
|
|
{ mode = "n", key = "<leader>gc", cmd = ":Telescope git_commits<CR>", group = "Git" },
|
|
{ mode = "n", key = "<leader>gf", cmd = ":Telescope git_files<CR>", group = "Git" },
|
|
{ mode = "n", key = "<leader>Tr", cmd = ":Telescope reloader<CR>", group = "Telescope" },
|
|
}
|
|
--}}}
|
|
|
|
-- {{{ File Explorer Mappings (i guess)
|
|
local file_explorer_mappings = {
|
|
{ mode = "n", key = "<leader>nt", cmd = ":NvimTreeToggle<CR>" },
|
|
{ mode = "n", key = "<leader>nc", cmd = ":lua require('notify').dismiss()<CR>" },
|
|
{ mode = "n", key = "<leader>D", cmd = ":Dotenv .env<CR>", group = "Dotenv" },
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Misc Utilities Mappings
|
|
local misc_utilities_mappings = {
|
|
{ mode = "n", key = "<leader>x", cmd = "<cmd>!chmod +x %<CR>", group = "Make Executable" },
|
|
{ mode = "n", key = "<leader>y", cmd = '"+', group = "System Yank" },
|
|
{ mode = "v", key = "<leader>y", cmd = '"+', group = "System Yank" },
|
|
{ mode = "n", key = "<leader>sc", cmd = ":nohls<CR>", group = "Search" },
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Goto Preview Mappings
|
|
local goto_preview_mappings = {
|
|
{ mode = "n", key = "gpc", cmd = ':lua require("goto-preview").close_all_win()<CR>', group = "Goto Preview" },
|
|
{
|
|
mode = "n",
|
|
key = "gpd",
|
|
cmd = ':lua require("goto-preview").goto_preview_definition()<CR>',
|
|
group = "Goto Preview",
|
|
},
|
|
{
|
|
mode = "n",
|
|
key = "gpi",
|
|
cmd = ':lua require("goto-preview").goto_preview_implementation()<CR>',
|
|
group = "Goto Preview",
|
|
},
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Workspace Management Mappings
|
|
local workspace_management_mappings = {
|
|
{ mode = "n", key = "<leader>wa", cmd = vim.lsp.buf.add_workspace_folder },
|
|
{ mode = "n", key = "<leader>wr", cmd = vim.lsp.buf.remove_workspace_folder },
|
|
{
|
|
mode = "n",
|
|
key = "<leader>wl",
|
|
cmd = function()
|
|
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
|
end,
|
|
},
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Noice Mappings
|
|
local noice_mappings = {
|
|
{ mode = "n", key = "<leader>Nh", cmd = ":Noice telescope<CR>", group = "Noice" },
|
|
{ mode = "n", key = "<leader>Nl", cmd = ":Noice last<CR>", group = "Noice" },
|
|
{ mode = "n", key = "<leader>Nd", cmd = ":Noice dismiss<CR>", group = "Noice" },
|
|
{ mode = "n", key = "<leader>Ne", cmd = ":Noice errors<CR>", group = "Noice" },
|
|
{ mode = "n", key = "<leader>Ns", cmd = ":Noice stats<CR>", group = "Noice" },
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ ODIS Mappings
|
|
local odis_mappings = {
|
|
{ mode = "n", key = "<leader>dv", cmd = ':lua require("odis").show_documentation("vsplit")<CR>', group = "ODIS" },
|
|
{ mode = "n", key = "<leader>dh", cmd = ':lua require("odis").show_documentation("vsplit")<CR>', group = "ODIS" },
|
|
{ mode = "n", key = "<leader>db", cmd = ':lua require("odis").show_documentation("vsplit")<CR>', group = "ODIS" },
|
|
{ mode = "n", key = "<leader>dt", cmd = ':lua require("odis").show_documentation("vsplit")<CR>', group = "ODIS" },
|
|
{ mode = "n", key = "<leader>dt", cmd = ':lua require("odis").show_documentation("vsplit")<CR>', group = "ODIS" },
|
|
-- { mode = "n", key = "<leader>dc", cmd = 'require("odis").close_float()' },
|
|
}
|
|
-- }}}
|
|
|
|
-- {{{ Diffview Mappings
|
|
local diffview_mappings = {
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdo",
|
|
cmd = ":DiffviewOpen<CR>",
|
|
group = "Git",
|
|
},
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdf",
|
|
cmd = ":DiffviewFileHistory %<CR>",
|
|
group = "Git",
|
|
},
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdh",
|
|
cmd = ":DiffviewHistory<CR>",
|
|
group = "Git",
|
|
},
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdc",
|
|
cmd = ":DiffviewClose<CR>",
|
|
group = "Git",
|
|
},
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdt",
|
|
cmd = ":DiffviewToggleFiles<CR>",
|
|
group = "Git",
|
|
desc = "Toggle files view",
|
|
},
|
|
{
|
|
|
|
mode = "n",
|
|
key = "<leader>gdr",
|
|
cmd = ":DiffviewRefresh<CR>",
|
|
desc = "Refresh diffview",
|
|
group = "Git",
|
|
},
|
|
}
|
|
-- }}}
|
|
|
|
--{{{ Custom Terminals
|
|
local programs_map = {
|
|
gg = { cmd = "lazygit", display_name = "lazygit", direction = "tab", hidden = true, group = "Git" },
|
|
op = { cmd = "ipython", display_name = "ipython", direction = "vertical", hidden = true, group = "Open" },
|
|
oP = { cmd = "ipython", display_name = "ipython-full", direction = "tab", hidden = true, group = "Open" },
|
|
on = { cmd = "ncmpcpp", display_name = "ncmpcpp", direction = "tab", hidden = true, group = "Open" },
|
|
ob = { cmd = "btop", display_name = "btop", direction = "tab", hidden = true, group = "Open" },
|
|
od = { cmd = "lazydocker", display_name = "lazydocker", direction = "tab", hidden = true },
|
|
}
|
|
|
|
for key, value in pairs(programs_map) do
|
|
map("n", "<leader>" .. key, function()
|
|
term_toggle(term_factory(value))
|
|
end, opts)
|
|
end
|
|
|
|
local tbl = {}
|
|
for key, value in pairs(programs_map) do
|
|
local temp = {}
|
|
if key == "gg" then
|
|
temp = {
|
|
cmd = value.cmd,
|
|
key = "<leader>" .. key,
|
|
group = value.group,
|
|
mode = "n",
|
|
desc = "Open " .. value.display_name,
|
|
}
|
|
else
|
|
temp = {
|
|
cmd = value.cmd,
|
|
key = "<leader>" .. key,
|
|
group = value.group,
|
|
mode = "n",
|
|
desc = "Open " .. value.display_name,
|
|
}
|
|
end
|
|
table.insert(tbl, temp)
|
|
end
|
|
add_to_whichkey(tbl, { key = "<leader>o", group = "Open" })
|
|
|
|
function _G.set_terminal_keymaps()
|
|
local opts = { buffer = 0 }
|
|
map("t", "<esc>", [[<C-\><C-n>]], opts)
|
|
map("t", "<C-w>", [[<C-\><C-n><C-w>]], opts)
|
|
end
|
|
|
|
vim.cmd("autocmd! TermOpen term://* lua set_terminal_keymaps()")
|
|
--}}}
|
|
|
|
--{{{ Groups
|
|
add_to_whichkey(nil, { key = "<leader>a", group = "AnyJump" })
|
|
add_to_whichkey(nil, { key = "<leader>b", group = "Buffers" })
|
|
add_to_whichkey(nil, { key = "<leader>c", group = "Code" })
|
|
add_to_whichkey(nil, { key = "<leader>ca", group = "Code Actions" })
|
|
add_to_whichkey(nil, { key = "<leader>C", group = "CodeCompanion" })
|
|
add_to_whichkey(nil, { key = "<leader>d", group = "ODIS" })
|
|
add_to_whichkey(nil, { key = "<leader>f", group = "Find" })
|
|
add_to_whichkey(nil, { key = "<leader>g", group = "Git" })
|
|
add_to_whichkey(nil, { key = "<leader>gd", group = "DiffView" })
|
|
add_to_whichkey(nil, { key = "<leader>gg", group = "Lazygit" })
|
|
add_to_whichkey(nil, { key = "<leader>h", group = "Help" })
|
|
add_to_whichkey(nil, { key = "<leader>j", group = "AnyJump" })
|
|
add_to_whichkey(nil, { key = "<leader>N", group = "Noice" })
|
|
add_to_whichkey(nil, { key = "<leader>o", group = "Open" })
|
|
add_to_whichkey(nil, { key = "<leader>p", group = "Paste in Place" })
|
|
add_to_whichkey(nil, { key = "<leader>s", group = "Search" })
|
|
add_to_whichkey(nil, { key = "<leader>t", group = "Terminal" })
|
|
add_to_whichkey(nil, { key = "<leader>T", group = "Telescope" })
|
|
add_to_whichkey(nil, { key = "<leader>w", group = "Workspace" })
|
|
add_to_whichkey(nil, { key = "<leader>x", group = "Make Executable" })
|
|
add_to_whichkey(nil, { key = "<leader>y", group = "System Yank" })
|
|
add_to_whichkey(nil, { key = "<leader>0", group = "Horizontal Terminal" })
|
|
--}}}
|
|
|
|
--{{{ Whichkey Mappings
|
|
add_to_whichkey(map_from_table(basic_mappings))
|
|
add_to_whichkey(map_from_table(buffer_navigation_mappings))
|
|
add_to_whichkey(map_from_table(terminal_mappings))
|
|
add_to_whichkey(map_from_table(lsp_mappings))
|
|
add_to_whichkey(map_from_table(code_companion_mappings))
|
|
add_to_whichkey(map_from_table(telescope_mappings))
|
|
add_to_whichkey(map_from_table(file_explorer_mappings))
|
|
add_to_whichkey(map_from_table(misc_utilities_mappings))
|
|
add_to_whichkey(map_from_table(goto_preview_mappings))
|
|
add_to_whichkey(map_from_table(workspace_management_mappings))
|
|
add_to_whichkey(map_from_table(noice_mappings))
|
|
add_to_whichkey(map_from_table(odis_mappings))
|
|
add_to_whichkey(map_from_table(diffview_mappings))
|
|
--}}}
|