Dotfiles/.config/nvim/lua/remap.lua

95 lines
4.8 KiB
Lua
Raw Normal View History

2023-11-10 15:44:13 +00:00
vim.g.mapleader = " "
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
-- Text input
vim.keymap.set('n', '<leader>pt', ":pu!=strftime('%R')<CR>");
vim.keymap.set('n', '<leader>pd', ":pu!=strftime('%F')<CR>");
vim.keymap.set('n', '<leader>pD', ":pu!=strftime('%c')<CR>");
-- Telescope
local builtin = require('telescope.builtin')
local telescope = require('telescope')
2024-02-08 09:38:17 +00:00
vim.keymap.set('n', '<leader>tf', "<cmd>Telescope find_files hidden=true<cr>", {}) -- Open files
2023-11-10 15:44:13 +00:00
vim.keymap.set('n', '<leader>ts', builtin.live_grep, {}) -- Grep files
vim.keymap.set('n', '<leader>tb', builtin.buffers, {}) -- Neovim buffers
vim.keymap.set('n', '<leader>tm', builtin.man_pages, {}) -- man pages
vim.keymap.set('n', '<leader>tp', builtin.registers, {}) -- Paste from registers
vim.keymap.set('n', '<leader>tt', builtin.resume, {}) -- Last open Telescope
vim.keymap.set('n', '<leader>to', builtin.oldfiles, {}) -- Recently opened files
-- Git functionality (tg prefix)
vim.keymap.set('n', '<leader>tgf', builtin.git_files, {})
vim.keymap.set('n', '<leader>tgc', builtin.git_commits, {})
vim.keymap.set('n', '<leader>tgh', builtin.git_bcommits, {}) -- Current buffer's commits
vim.keymap.set('n', '<leader>tgb', builtin.git_branches, {}) -- CR: checkout, C-t: track, C-r: rebase, C-a: create, C-s: switch, C-d: delete, C-y: merge
vim.keymap.set('n', '<leader>tgs', builtin.git_stash, {}) -- List stash, apply with CR
-- LSP functionality (tl prefix)
2024-03-04 13:35:09 +00:00
vim.keymap.set('n', '<leader>tla', function() vim.lsp.buf.code_action() end, bufopts)
2023-11-10 15:44:13 +00:00
vim.keymap.set('n', '<leader>tlr', builtin.lsp_references, {})
vim.keymap.set('n', '<leader>tli', builtin.lsp_incoming_calls, {})
vim.keymap.set('n', '<leader>tlo', builtin.lsp_outgoing_calls, {})
vim.keymap.set('n', '<leader>tld', builtin.lsp_definitions, {})
vim.keymap.set('n', '<leader>tlt', builtin.lsp_type_definitions, {})
vim.keymap.set('n', '<leader>tls', builtin.lsp_document_symbols, {})
vim.keymap.set('n', '<leader>tlm', builtin.lsp_implementations, {})
vim.keymap.set('n', '<leader>tlw', builtin.lsp_workspace_symbols, {})
vim.keymap.set('n', '<leader>tlD', builtin.diagnostics, {})
vim.keymap.set('n', '<leader>tlK', vim.lsp.buf.signature_help, {})
vim.keymap.set('n', '<leader>tlq', vim.diagnostic.setloclist, {})
2023-11-17 10:08:13 +00:00
vim.keymap.set('n', 'E', vim.diagnostic.open_float, {})
vim.keymap.set('n', 'H', function() vim.lsp.buf.hover() end, opts)
2023-11-10 15:44:13 +00:00
vim.keymap.set("n", "<leader>tlf", vim.lsp.buf.format) -- Format code
2023-11-16 19:50:07 +00:00
-- DAP
vim.keymap.set('n', '<leader>db', require('dap').toggle_breakpoint)
vim.keymap.set('n', '<leader>dc', require('dap').continue)
vim.keymap.set('n', '<leader>di', require('dap').step_into)
vim.keymap.set('n', '<leader>do', require('dap').step_over)
vim.keymap.set('n', '<leader>dr', require('dap').repl.open)
vim.keymap.set('n', '<leader>dx', require('dap').terminate)
2023-11-17 08:57:40 +00:00
-- Zen mode
vim.keymap.set('n', '<leader>zz', require('zen-mode').toggle)
-- AAAARGH
vim.keymap.set("n", "<leader>fml", "<cmd>CellularAutomaton make_it_rain<CR>")
vim.keymap.set("n", "<leader>cnw", "<cmd>CellularAutomaton game_of_life<CR>")
2024-03-04 13:35:09 +00:00
-- Codeium
vim.keymap.set("n", "<leader>cc", "<cmd>call codeium#Chat()<CR>")
2023-11-10 15:44:13 +00:00
-- Custom Telescope commands for Rails
vim.keymap.set('n', '<leader>trj', function()
builtin.find_files({ search_dirs = { "app/javascript", "app/assets/javascripts" } })
end, { desc = "Open Rails Javascripts" } )
vim.keymap.set('n', '<leader>trsj', function()
builtin.live_grep({ search_dirs = { "app/javascript", "app/assets/javascripts" } })
end, { desc = "Grep Rails Javascripts" } )
vim.keymap.set('n', '<leader>trm', function()
builtin.find_files({ search_dirs = { "app/models" } })
end, { desc = "Open Rails Models" } )
vim.keymap.set('n', '<leader>trsm', function()
builtin.live_grep({ search_dirs = { "app/models" } })
end, { desc = "Grep Rails Models" } )
vim.keymap.set('n', '<leader>trc', function()
builtin.find_files({ search_dirs = { "app/controllers" } })
end, { desc = "Open Rails Controllers" } )
vim.keymap.set('n', '<leader>trsc', function()
builtin.live_grep({ search_dirs = { "app/controllers" } })
end, { desc = "Grep Rails Controllers" } )
vim.keymap.set('n', '<leader>trv', function()
builtin.find_files({ search_dirs = { "app/views" } })
end, { desc = "Open Rails Views" } )
vim.keymap.set('n', '<leader>trsv', function()
builtin.live_grep({ search_dirs = { "app/views" } })
end, { desc = "Grep Rails Views" } )
-- Fugitive
vim.keymap.set('n', '<leader>gs', vim.cmd.Git);
vim.keymap.set('n', '<leader>ds', ':Gvdiffsplit!<CR>');
vim.keymap.set('n', '<leader>gl', ':diffget //2<CR>'); -- 'Get left' window
vim.keymap.set('n', '<leader>gr', ':diffget //3<CR>'); -- 'Get right' window
2023-11-20 14:24:20 +00:00
-- Git messenger
vim.keymap.set('n', '<leader>gm', ':GitMessenger<CR>');
2023-11-10 15:44:13 +00:00
-- Nvim-tree
vim.keymap.set("n", "<leader>nt", vim.cmd.NvimTreeToggle, {})
2024-02-26 13:46:57 +00:00
vim.keymap.set("n", "<leader>gp", "<cmd>lua require('goto-preview').goto_preview_definition()<CR>", {noremap=true})