-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmaps.vim
executable file
·129 lines (119 loc) · 6.92 KB
/
maps.vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
let mapleader=" "
nnoremap <silent> <m-]> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bnext<CR>
nnoremap <silent> <m-[> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bprev<CR>
" start new change before deleting an entire line
inoremap <c-u> <c-g>u<c-u>
" Some language specific mappings
au FileType go imap <buffer> <M-;> :=
au FileType javascript imap <buffer> <M-;> =>
autocmd FileType markdown noremap <leader>p :Glow<CR>
" Reselect the last pastedtext
nnoremap <expr> gp '`[' . strpart(getregtype(), 0, 1) . '`]'
" Reselect visual selection after indenting
vnoremap < <gv
vnoremap > >gv
map <silent> <leader>ww :lua require('nvim-window').pick()<CR>
nnoremap <C-t> :NeoTreeRevealToggle<CR>
" " -- TELESCOPE -- Find files using Telescope command-line sugar.
lua<<EOF
-- local map = vim.keymap.set
local default_opts = {noremap = true}
-- map('i', '<C-Space>', "<C-Right>", default_opts)
-- map('i', '<C-CR>', "<ESC>O", default_opts)
-- TODO make mappings with newly added vim.keymap
-- See : https://github.com/neovim/neovim/pull/16591
vim.keymap.set('n', '<leader>ff', "<cmd>lua require'telescope.builtin'.find_files({ find_command = {'rg', '--files', '--hidden', '-g', '!.git'}, file_ignore_patterns = { 'node%_modules/.*' }})<cr>", default_opts)
vim.keymap.set('n', '<leader>fb', "<cmd>lua require'telescope.builtin'.buffers({ show_all_buffers = true })<cr>", default_opts)
vim.keymap.set('n', '<leader>fk', "<cmd>lua require'telescope.builtin'.keymaps()<cr>", default_opts)
vim.keymap.set('n', '<leader>fo', "<cmd>lua require'telescope.builtin'.oldfiles()<cr>", default_opts)
vim.keymap.set('n', '<leader>fh', "<cmd>lua require'telescope.builtin'.help_tags()<cr>", default_opts)
vim.keymap.set('n', '<leader>/', ":silent grep ", default_opts)
vim.keymap.set('n', '<leader>fg', "<cmd>lua require'telescope.builtin'.live_grep()<cr>", default_opts)
vim.keymap.set('n', '<leader>fe', "<cmd>lua require 'telescope'.extensions.file_browser.file_browser()<CR>", default_opts)
vim.keymap.set('n', '<leader>fz', "<cmd>lua require'telescope.builtin'.current_buffer_fuzzy_find({preview = {hide_on_startup = true, title = 'Fuzzy Find Buffer'}, layout_config={width=0.65}})<cr>", default_opts)
vim.keymap.set('n', '<leader>fj', "<cmd>lua require'telescope.builtin'.jumplist()<cr>", default_opts)
-- vim.keymap.set('v', '<leader>fc', "<cmd>Telescope lsp_range_code_actions<cr>", default_opts)
vim.keymap.set('n', '<leader>fm', "<cmd>lua require'telescope.builtin'.marks()<cr>", default_opts)
vim.keymap.set('n', '<leader>fsw', "<cmd>lua require'telescope.builtin'.lsp_dynamic_workspace_symbols()<cr>", default_opts)
vim.keymap.set('n', '<leader>fsd', "<cmd>lua require'telescope.builtin'.lsp_document_symbols(require('telescope.themes').get_ivy({}))<cr>", default_opts)
vim.keymap.set('n', '<leader>fdd', "<cmd>Telescope diagnostics bufnr=0<cr>", default_opts)
vim.keymap.set('n', '<leader>fdw', "<cmd>Telescope diagnostics<cr>", default_opts)
vim.keymap.set('n', '<leader>fp', "<cmd>Telescope projects theme=dropdown<cr>", default_opts)
vim.keymap.set('n', '<leader>fl', "<cmd>Telescope resume<cr>", default_opts)
-- map('n', '<leader>fs', ":SearchSession<cr>", default_opts)
vim.keymap.set('n', '<leader>th', "<cmd>lua require'close_buffers'.delete({type = 'hidden'})<cr>", {noremap = true, silent = true})
vim.keymap.set('n', '<leader>tu', "<cmd>lua require'close_buffers'.delete({type = 'nameless'})<cr>", {noremap = true, silent = true})
vim.keymap.set('n', '<leader>tc', "<cmd>lua require'close_buffers'.delete({type = 'this'})<cr>", {noremap = true, silent = true})
vim.keymap.set('n', '<leader>tt', ":bd<cr>", {noremap = true, silent = true})
-- map('n', '<M-t>', "<cmd>lua require('rose-pine.functions').toggle_variant()<cr>", {noremap = true, silent = true})
-- TROUBLE
-- Lua
vim.keymap.set("n", "<leader>xx", "<cmd>Trouble<cr>",
{silent = true, noremap = true}
)
vim.keymap.set("n", "<leader>xw", "<cmd>Trouble workspace_diagnostics<cr>",
{silent = true, noremap = true}
)
vim.keymap.set("n", "<leader>xd", "<cmd>Trouble document_diagnostics<cr>",
{silent = true, noremap = true}
)
vim.keymap.set("n", "<leader>xl", "<cmd>Trouble loclist<cr>",
{silent = true, noremap = true}
)
vim.keymap.set("n", "<leader>xq", "<cmd>Trouble quickfix<cr>",
{silent = true, noremap = true}
)
vim.keymap.set("n", "<leader>xr", "<cmd>Trouble lsp_references<cr>",
{silent = true, noremap = true}
)
-- focus.nvim toggle thingy
-- map('n', '<m-BS>', ":lua require('focus').focus_toggle()<CR>", default_opts)
-- Outline symbols toggle
vim.keymap.set('n', '<m-o>', ":SymbolsOutline<CR>", default_opts)
vim.keymap.set('n', '<m-u>', ":UndotreeToggle<CR>", default_opts)
-- Sniprun
vim.keymap.set('n', '<leader>rr', '<Plug>SnipRun', {silent = true})
vim.keymap.set('v', '<leader>rr', '<Plug>SnipRun', {silent = true})
function _G.set_terminal_keymaps()
local opts = {noremap = true}
vim.api.nvim_buf_set_keymap(0, 't', '<esc>', [[<C-\><C-n><C-W>p]], opts)
vim.api.nvim_buf_set_keymap(0, 't', '<C-w>', [[<C-\><C-n><C-W>]], opts)
end
-- if you only want these mappings for toggle term use term://*toggleterm#* instead
vim.cmd('autocmd! TermOpen term://*toggleterm#* lua set_terminal_keymaps()')
EOF
" mfussenegger/nvim-ts-hint-textobject TreeSitter plugin for highlightingg parts of the code using sytax tree
omap <silent> m :<C-U>lua require('tsht').nodes()<CR>
vnoremap <silent> m :lua require('tsht').nodes()<CR>
nnoremap <M-m> :MinimapToggle<CR>
" " Experimental insert mode surround functionality
" imap <C-S> <Plug>Isurround
" Replace word without affecting buffer.
vnoremap <leader>rp "_dP
nnoremap <leader>rp viw"_dP
" Buffer pick
nnoremap <leader>bb :BufferLinePick<CR>
let g:winresizer_start_key="<leader>ws"
nnoremap <leader>sw :ToggleAlternate<CR>
let g:lightspeed_last_motion = ''
augroup lightspeed_last_motion
autocmd!
autocmd User LightspeedSxEnter let g:lightspeed_last_motion = 'sx'
autocmd User LightspeedFtEnter let g:lightspeed_last_motion = 'ft'
augroup end
map <expr> ; g:lightspeed_last_motion == 'sx' ? "<Plug>Lightspeed_;_sx" : "<Plug>Lightspeed_;_ft"
map <expr> , g:lightspeed_last_motion == 'sx' ? "<Plug>Lightspeed_,_sx" : "<Plug>Lightspeed_,_ft"
nnoremap <silent> <F5> :lua require'dap'.continue()<CR>
nnoremap <silent> <F10> :lua require'dap'.step_over()<CR>
nnoremap <silent> <F11> :lua require'dap'.step_into()<CR>
nnoremap <silent> <F12> :lua require'dap'.step_out()<CR>
nnoremap <silent> <leader>b :lua require'dap'.toggle_breakpoint()<CR>
nnoremap <silent> <leader>B :lua require'dap'.set_breakpoint(vim.fn.input('Breakpoint condition: '))<CR>
nnoremap <silent> <leader>lp :lua require'dap'.set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<CR>
nnoremap <silent> <leader>dr :lua require'dap'.repl.open()<CR>
nnoremap <silent> <leader>dl :lua require'dap'.run_last()<CR>
nmap <silent> <leader>td :lua require('dap-go').debug_test()<CR>
" Pounce
" nmap <C-s> <cmd>Pounce<CR>
" vmap <C-S> <cmd>Pounce<CR>
" omap gs <cmd>Pounce<CR> " 's' is used by vim-surround