local M = {} M.formatter = { n = { ["b"] = { " Gitsigns toggle_current_line_blame", "Toggled line blames" }, ["bl"] = { " Gitsigns blame_line", "Line blame" }, }, } M.nvimtree = { n = { -- focus ["e"] = { " NvimTreeFocus ", "focus nvimtree" }, ["co"] = { " NvimTreeCollapse ", "Collapse nvimtree" }, }, } M.diffview = { n = { ["df"] = { " DiffviewOpen ", "Open git view" }, ["dr"] = { " DiffviewRefresh ", "Open git view" }, }, } local lazyGitted = false M.custom = { n = { ["fm"] = { ":lua vim.lsp.buf.format() ", "Formats the current buffer using built in LSP" }, ["nt"] = { " tabnew ", "New tab" }, ["ct"] = { " tabclose ", "Close tab" }, ["rf"] = { ":lua require('refactoring').select_refactor()", "options" }, ["q"] = { ":lua require('harpoon.mark').add_file()" }, ["fp"] = { ":lua require('harpoon.ui').toggle_quick_menu()" }, ["lt"] = { ":lua require('telescope').extensions.git_worktree.git_worktrees()" }, ["wt"] = { ":lua require('telescope').extensions.git_worktree.create_git_worktree()" }, ["gr"] = { ":lua require('telescope.builtin').lsp_references()" }, [""] = { function() if lazyGitted then require("nvterm.terminal").toggle "float" vim.cmd "autocmd TermOpen * setlocal nonumber norelativenumber" else lazyGitted = true local term = require("nvterm.terminal").new "float" -- Work around to get lazygit to work. vim.api.nvim_chan_send(term.job_id, "lazygit\n") end end, "Toggle floating terminal", }, }, v = { ["rf"] = { ":lua require('refactoring').select_refactor()", "options" }, }, t = { [""] = { function() if lazyGitted then require("nvterm.terminal").toggle "float" else lazyGitted = true require("nvterm.terminal").toggle "float" end end, "Toggle floating terminal", }, }, } return M