neovim/config/lua/keymap.lua

53 lines
1.6 KiB
Lua

vim.g.mapleader = " "
vim.keymap.set("n", "<leader>b", ":lua ToggleTransparent()<CR>")
-- nvim-tree bindings
vim.keymap.set("n", "<leader>t", ":NvimTreeToggle<CR>")
vim.keymap.set("n", "<leader>a", ":lua SpellToggle()<CR>")
-- markdown preview
vim.keymap.set("n", "<leader>p", ":MarkdownPreviewToggle<CR>")
-- custom shell script to move windows
vim.cmd([[
function OpenMarkdownPreview (url)
execute "silent ! markdown-preview.sh " . a:url
endfunction
]])
vim.g.mkdp_browserfunc = 'OpenMarkdownPreview'
-- git actions
vim.keymap.set("n", "<leader>ga", ":Git add .<CR>")
vim.keymap.set("n", "<leader>gm", ":Git commit<CR>")
-- fuzzy finder keybindings
local telescope = require('telescope.builtin')
vim.keymap.set('n','<leader>f', telescope.find_files, {})
vim.keymap.set('n','<leader>s', telescope.spell_suggest, {})
-- global copy/paste
vim.keymap.set('n', '<leader>yg', '"+y')
vim.keymap.set('n', '<leader>pg', '"+p')
-- toggle dotfiles visibility
vim.keymap.set("n", "<leader>d", ":lua require('nvim-tree.api').tree.toggle_hidden_filter()<CR>")
-- harpoon bindings
local harpoon = require('harpoon.ui')
vim.keymap.set("n", "<leader>hh", ":Telescope harpoon marks")
vim.keymap.set("n", "<leader>ha", harpoon.add_file, {})
vim.keymap.set("n", "<leader>hn", harpoon.nav_next, {})
vim.keymap.set("n", "<leader>hp", harpoon.nav_prev, {})
-- jumping to specific files
vim.keymap.set("n", "<leader>h1", harpoon.nav_file, {1})
vim.keymap.set("n", "<leader>h2", harpoon.nav_file, {2})
vim.keymap.set("n", "<leader>h3", harpoon.nav_file, {3})
vim.keymap.set("n", "<leader>h4", harpoon.nav_file, {4})
vim.keymap.set("n", "<leader>h5", harpoon.nav_file, {5})