forked from tonybanters/vim
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathkeybinds.vim
More file actions
59 lines (43 loc) · 1.29 KB
/
keybinds.vim
File metadata and controls
59 lines (43 loc) · 1.29 KB
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
" Set leader key
let mapleader = " "
" Open netrw with <leader>cd
nnoremap <leader>cd :Ex<CR>
" Move selected lines up/down (like Alt-Up/Down)
vnoremap J :m '>+1<CR>gv=gv
vnoremap K :m '<-2<CR>gv=gv
" Join lines with cursor preserved
nnoremap J mzJ`z
" Scroll half-page and center cursor
nnoremap <C-d> <C-d>zz
nnoremap <C-u> <C-u>zz
" Center on next/previous search result
nnoremap n nzzzv
nnoremap N Nzzzv
" Paste without overwriting clipboard
xnoremap <leader>p "_dP
nnoremap <leader>d "_d
vnoremap <leader>d "_d
" Make <C-c> behave like <Esc> in insert mode
inoremap <C-c> <Esc>
" Navigate quickfix list using Ctrl-j/k
nnoremap <C-j> :lnext<CR>
nnoremap <C-k> :lprev<CR>
nnoremap <leader>cl :lclose<CR>
" Disable Ex mode (accidental Q)
nnoremap Q <nop>
" Location list navigation
nnoremap <leader>k :lnext<CR>zz
nnoremap <leader>j :lprev<CR>zz
" Doge doc generator
nnoremap <leader>dg :DogeGenerate<CR>
" Substitute word under cursor on line
nnoremap <leader>s :s/\<<C-r><C-w>\>//gI<Left><Left><Left>
" Make current file executable
nnoremap <leader>x :!chmod +x %<CR>
" Yank via OSCYank
nmap <leader>y <Plug>OSCYankOperator
vmap <leader>y <Plug>OSCYankVisual
" Reload vimrc (adjust path as needed)
nnoremap <leader>rl :source ~/.vim/vimrc<CR>
" Source current file
nnoremap <leader><leader> :so<CR>