----------------------------------------------------------- -- Define keymaps of Neovim and installed plugins. ----------------------------------------------------------- local function map(mode, lhs, rhs, opts) local options = { noremap = true, silent = true } if opts then options = vim.tbl_extend('force', options, opts) end vim.api.nvim_set_keymap(mode, lhs, rhs, options) end -- Change leader to a comma vim.g.mapleader = ',' ----------------------------------------------------------- -- Neovim shortcuts ----------------------------------------------------------- -- Disable arrow keys map('', '', '') map('', '', '') map('', '', '') map('', '', '') -- Reload configuration without restart nvim map('n', 'r', ':so %') -- Change split orientation map('n', 'tk', 'tK') -- change vertical to horizontal map('n', 'th', 'tH') -- change horizontal to vertical map('n', 'M-j', ':resize -2') map('n', 'M-k', ':resize +2') map('n', 'M-l', ':vertical resize -2') map('n', 'M-h', ':vertical resize +2') map('t', 'C-w', '') map('n', 'B', ':Buffers') -- FZF show open buffers map('n', 'F', ':Files') -- FZF show files map('n', 'A', ':Rg') -- FZF call ripgrep map('n', 'C', ':Commits') -- FZF show git commits map('n', 'M', ':Maps') -- FZF show normal mode mappings map('n', 'E', ':NvimTreeToggle') local keymap = vim.api.nvim_set_keymap local opts = { noremap = true, silent = true } keymap("i", "", "lua require'luasnip'.jump(1)", opts) keymap("s", "", "lua require'luasnip'.jump(1)", opts) keymap("i", "", "lua require'luasnip'.jump(-1)", opts) keymap("s", "", "lua require'luasnip'.jump(-1)", opts)