-- Author : swytch -- Created : Friday Mar 12, 2021 20:17:19 CET -- License : GPLv3 -- Description : neovim mappings file vim.keymap.set({ "n", "v" }, "", "", { silent = true, desc = "leader key" }) vim.g.mapleader = " " -- dealing with word wrap vim.keymap.set("n", "k", "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true, desc = "Smart up motion" }) vim.keymap.set("n", "j", "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true, desc = "Smart down motion" }) -- terminal-mode vim.keymap.set({ "t" }, "", "", { desc = "Escape terminal-mode" } ) -- yank and pasting vim.keymap.set({ "n", "x" }, "y", "\"+y", { desc = "Yank to clipboard" } ) vim.keymap.set("n", "p", "\"+P", { desc = "Paste from clipboard" } ) vim.keymap.set("x", "p", "\"_dP", { desc = "Send selection to void register and paste from clipboard" } ) -- deletion vim.keymap.set({ "n", "x" }, "d", "\"_d", { desc = "Send selection to void register" } ) -- comfort zone vim.keymap.set("n", "", "w! | !compiler %", { desc = "Compile current file using ~/.local/bin/compiler" } ) -- packer vim.keymap.set("n", "u", function() require("lazy").sync() end, { desc = "Open up Lazy.nvim" } ) -- telescope vim.keymap.set("n", "tf", function() require("telescope.builtin").find_files() end, { desc = "Fuzzy find files" } ) vim.keymap.set("n", "tb", function() require("telescope").extensions.file_browser.file_browser() end, { desc = "Open file browser" } ) vim.keymap.set("n", "t/", function() require("telescope.builtin").buffers() end, { desc = "Grep through buffers" } ) vim.keymap.set("n", "tg", function() require("telescope.builtin").grep_string() end, { desc = "Grep current word" } ) vim.keymap.set("n", "th", function() require("telescope.builtin").help_tags() end, { desc = "Search through help" } ) vim.keymap.set("n", "tl", function() require("telescope.builtin").live_grep() end, { desc = "Grep interactively" } ) vim.keymap.set("n", "tk", function() require("telescope.builtin").keymaps() end, { desc = "Search through keymaps" } ) vim.keymap.set("n", "tx", function() require("telescope.builtin").diagnostics( { buffnr = 0 } ) end, { desc = "Search through LSP diagnostics" } ) -- colorscheme vim.keymap.set("n", "s", function() require("astronomy").toggle_variant() end, { desc = "Switch between dark and light colorscheme" } ) -- snippets vim.keymap.set({ "i", "s" }, "", "luasnip-next-choice", { desc = "Cycle through luasnip choices" } )