✨ New neovim config based off theprimeagen
This commit is contained in:
parent
74983413b8
commit
393c9eaa8a
19 changed files with 810 additions and 0 deletions
94
.config/nvim/lua/neovim/remap.lua
Executable file
94
.config/nvim/lua/neovim/remap.lua
Executable file
|
|
@ -0,0 +1,94 @@
|
|||
vim.g.mapleader = " "
|
||||
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
|
||||
|
||||
vim.keymap.set("n", "J", "mzJ`z")
|
||||
|
||||
-- remap for vim-smoothie
|
||||
vim.cmd [[nnoremap <C-D> <cmd>call smoothie#do("\<C-D>zz")<CR>]]
|
||||
vim.cmd [[nnoremap <C-U> <cmd>call smoothie#do("\<C-U>zz")<CR>]]
|
||||
vim.cmd [[nnoremap gg <cmd>call smoothie#do("\<gg>")<CR>]]
|
||||
vim.cmd [[nnoremap <S-g> <cmd>call smoothie#do("\<S-g>zz")<CR>]]
|
||||
|
||||
-- recenter on next/previous search
|
||||
vim.keymap.set("n", "n", "nzzzv")
|
||||
vim.keymap.set("n", "N", "Nzzzv")
|
||||
|
||||
--Toggle NERDCommenter with Ctrl + c
|
||||
vim.keymap.set("n", "<C-c>", "<Plug>NERDCommenterToggle")
|
||||
|
||||
vim.keymap.set("n", "Q", "<nop>")
|
||||
-- reformats
|
||||
vim.keymap.set("n", "<leader>f", vim.lsp.buf.format)
|
||||
|
||||
-- global search and replace
|
||||
vim.keymap.set("n", "<S-s>", ":%s///gI<Left><Left><Left><Left>")
|
||||
vim.keymap.set("n", "<S-y>", ":.,.s///g<Left><Left><Left>")
|
||||
|
||||
-- toggle english spellcheck
|
||||
vim.keymap.set("n", "<F11>", ":set spell!<cr>", { silent = true })
|
||||
|
||||
-- make current file executable
|
||||
vim.keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true })
|
||||
|
||||
-- Vimium Like Keybindings
|
||||
vim.keymap.set('n', 't', '<c-w>:tabnew<CR>', {})
|
||||
|
||||
vim.keymap.set('n', '<S-tab>', '<c-w>:tabprevious<CR>', {})
|
||||
vim.keymap.set('n', '<S-j>', '<c-w>:tabprevious<CR>', {})
|
||||
vim.keymap.set('n', '<A-left>', '<c-w>:tabprevious<CR>', {})
|
||||
|
||||
vim.keymap.set('n', '<A-tab>', '<c-w>:tabnext<CR>', {})
|
||||
vim.keymap.set('n', '<S-k>', '<c-w>:tabnext<CR>', {})
|
||||
vim.keymap.set('n', '<A-right>', '<c-w>:tabnext<CR>', {})
|
||||
|
||||
-- Use ctrl- [hl] to select the active split!
|
||||
vim.keymap.set('n', '<C-h>', '<c-w>:wincmd h<CR>', {})
|
||||
vim.keymap.set('n', '<C-l>', '<c-w>:wincmd l<CR>', {})
|
||||
|
||||
-- remap Nvim_Tree toggle to CTRL+B
|
||||
vim.keymap.set('n', '<C-b>', '<c-w>:NvimTreeToggle<CR>', {})
|
||||
|
||||
-- Use ctrl - [hl] to select the active split
|
||||
vim.keymap.set('n', '<C-h>', '<c-w>:wincmd h<CR>', {})
|
||||
vim.keymap.set('n', '<C-l>', '<c-w>:wincmd l<CR>', {})
|
||||
|
||||
-- nv creates new vertical split
|
||||
vim.keymap.set('n', 'nv', ':vnew', { silent = true })
|
||||
|
||||
-- shift + p invokes PackerSync
|
||||
vim.keymap.set('n', '<S-p>', '<c-w>:PackerSync<CR>', {})
|
||||
|
||||
-- control + p enable transparency
|
||||
vim.keymap.set('n', '<C-t>', '<c-w>:lua ColorMyPencils()<CR>', {})
|
||||
|
||||
-- open :Mason using msn
|
||||
vim.keymap.set('n', 'msn', ':Mason', { silent = true })
|
||||
|
||||
-- toggle relative line number with shift + x
|
||||
vim.keymap.set('n', '<S-x>', ':set relativenumber! number<cr>', {})
|
||||
|
||||
-- toggle multi-corsor with control + j/k
|
||||
vim.cmd[[nmap <C-j> <C-Down>]]
|
||||
vim.cmd[[nmap <C-k> <C-Up>]]
|
||||
|
||||
-- enable gitblame with ctrl + g
|
||||
vim.keymap.set('n', '<C-g>', '<c-w>:GitBlameToggle<CR>', { silent = true })
|
||||
|
||||
-- shift + m brings up markdown previewer
|
||||
vim.keymap.set('n', '<S-m>', '<c-w>:MarkdownPreview<CR>', {})
|
||||
|
||||
-- invoke neoformat with nf
|
||||
vim.keymap.set('n', 'nf', ':Neoformat<cr>', { silent = true })
|
||||
|
||||
-- format C and C++ Code with cp
|
||||
vim.keymap.set('n', 'cp', ':ClangFormat<cr>', { silent = true })
|
||||
|
||||
-- open fzf with ctrl + p
|
||||
vim.cmd[[nnoremap fzf :silent :FZFExplore]]
|
||||
vim.keymap.set('n', '<C-p>', '<c-w>:FZFExplore<CR>', {})
|
||||
|
||||
-- open ripgrep
|
||||
vim.cmd[[nnoremap rg :silent :Rg]]
|
||||
|
||||
--toggle autocompletion
|
||||
vim.cmd[[nnoremap cmp :silent lua SetAutoCmp(Mode)]]
|
||||
Loading…
Add table
Add a link
Reference in a new issue