-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathideavimrc
103 lines (78 loc) · 2.55 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
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
" .ideavimrc is a configuration file for IdeaVim plugin. It uses
" the same commands as the original .vimrc configuration.
" You can find a list of commands here: https://jb.gg/h38q75
" Find more examples here: https://jb.gg/share-ideavimrc
" Source your .vimrc
" source ~/.vimrc
set number relativenumber
let mapleader = " "
"" -- Suggested options --
" Show a few lines of context around the cursor. Note that this makes the
" text scroll if you mouse-click near the start or end of the window.
set scrolloff=5
" Do incremental searching.
set incsearch
set clipboard=unnamed
" Don't use Ex mode, use Q for formatting.
map Q gq
" --- Enable IdeaVim plugins https://jb.gg/ideavim-plugins
" Highlight copied text
"Plug 'machakann/vim-highlightedyank'
" Commentary plugin
"" -- Map IDE actions to IdeaVim -- https://jb.gg/abva4t
"" Map \r to the Reformat Code action
"map \r <Action>(ReformatCode)
"" Map <leader>d to start debug
"map <leader>d <Action>(Debug)
"" Map \b to toggle the breakpoint on the current line
"map \b <Action>(ToggleLineBreakpoint)
""" buffer
nnoremap <TAB> :action NextTab<CR>
nnoremap <s-TAB> :action PreviousTab<CR>
nmap <leader>l :action NextTab<CR>
nmap <leader>h :action PreviousTab<CR>
nmap <leader>bg :action CloseEditor<CR>
nnoremap <leader><leader> <C-Tab>
" terminal
nnoremap <c-t> :action ActiveTerminalToolWindow<CR>
nnoremap <leader>t :action Terminal.OpenInTerminal<CR>
""" window Navigation
nnoremap <c-\> :action SplitVertically<CR>
nnoremap <c--> :action SplitHorizontally<CR>
nnoremap <c-m> :action MoveEditorToOppositeTabGroup<CR>
sethandler <c-j> a:vim
sethandler <c-k> a:vim
nnoremap <c-h> <c-w>h
nnoremap <c-l> <c-w>l
nnoremap <c-j> <c-w>j
nnoremap <c-k> <c-w>k
nnoremap <leader>n :action EditSourceInNewWindow<CR>
nnoremap <leader>m :action NextWindow<CR>
nnoremap ;q :action CloseContent<CR>
nnoremap ;a :action CloseAllEditors<CR>
nnoremap <c-f> :action GotoFile<CR>
nnoremap <c-z> :action ToggleDistractionFreeMode<CR>
""" quick definition
" same as VSCode mapping
nnoremap gh :action QuickJavaDoc<CR>
noremap <F12> :action GotoImplementation<CR>
" sethandler <c-p> a:vim
" noremap <c-p> :action GotoAction
""" easy motion plugin
" easy-motion-s Search backward
" easy-motion-f Search forward
Plug 'easymotion/vim-easymotion'
map <leader>J <Plug>(easymotion-s)
map <leader>j <Plug>(easymotion-f)
""" NERDTree plugin
Plug 'preservim/nerdtree'
map <leader>e :NERDTree<CR>
map <leader>o :NERDTreeFocus<CR>
":NERDTreeFocus
":NERDTreeToggle
":NERDTreeClose
":NERDTreeFind
":NERDTreeRefreshRoot
""" commentary
set commentary
set surround