-
Notifications
You must be signed in to change notification settings - Fork 0
/
ideavimrc
59 lines (49 loc) · 1.46 KB
/
ideavimrc
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
# Plugins
set surround
set commentary
set highlightedyank
set easymotion
set notimeout
set which-key
set multiple-cursors
# map leader
let mapleader = "\<Space>"
imap jj <Esc>
" set relative line number function
function! ToggleRelativeNumber()
" Check if relative number is set and toggle
if &relativenumber
set norelativenumber
set number
else
set relativenumber
endif
endfunction
nnoremap <Leader>m :call ToggleRelativeNumber()<CR>
" Remap multiple-cursors shortcuts to match terryma/vim-multiple-cursors
nmap <C-n> <Plug>NextWholeOccurrence
xmap <C-n> <Plug>NextWholeOccurrence
nmap g<C-n> <Plug>NextOccurrence
xmap g<C-n> <Plug>NextOccurrence
xmap <C-x> <Plug>SkipOccurrence
xmap <C-p> <Plug>RemoveOccurrence
" Jump between methods
nnoremap [[ :action MethodUp<CR>
nnoremap ]] :action MethodDown<CR>
" Go to code
nmap <leader>gd :action GotoDeclaration<CR>
nmap <leader>gy :action GotoTypeDeclaration<CR>
nmap <leader>gi :action GotoImplementation<CR>
nmap <leader>gu :action ShowUsages<CR>
nmap <leader>gt :action GotoTest<CR>
nmap <leader>gf :action Back<CR>
nmap <leader>gb :action Forward<CR>
" Popup navigation
" haven't figured out how to get this to work..
" inoremap <C-j> <action> PopupMenu-selectNext<CR>
" inoremap <C-k> <Action> PopupMenu-selectPrev<CR>
" nnoremap <silent> <C-j> :action Up<CR>
" nnoremap <silent> <C-k> :action Down<CR>
"" map to emacs end of line and beginning of line
nnoremap <C-e> <S-^>
nnoremap <C-a> <S-$>