-
Notifications
You must be signed in to change notification settings - Fork 0
/
.ideavimrc
105 lines (88 loc) · 3 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
103
104
105
" List actions with :actionlist
" My ~/.ideavimrc file configuration.
" Set configuration and functionality.
let mapleader = " "
set number relativenumber
set ignorecase
set smartcase
set incsearch
set highlightedyank
set surround
set easymotion
set notimeout
set visualbell
set noerrorbells
set NERDTree
set ideajoin
" Configure Redo
nnoremap U :red<CR>
" Configure exit insert mode
inoremap jj <ESC>
" Configure Comments & Folding
map cc <action>(CommentByLineComment)
nnoremap zc :action CollapseRegion<CR>
nnoremap zo :action ExpandRegion<CR>
nnoremap ZC :action CollapseAllRegions<CR>
nnoremap ZO :action ExpandAllRegions<CR>
" Configure Full Screen
map <leader>F <action>(ToggleFullScreen)
" Configure Save
nnoremap <leader>w :w<CR>
" Configure motion.
map mj <Plug>(easymotion-s)
nnoremap me :action GotoNextError<CR>
nnoremap mE :action GotoPreviousError<CR>
nnoremap mi :action GotoImplementation<CR>
nnoremap md :action GotToDeclaration<CR>
"Manage splits
nnoremap <leader>sr :action OpenInRightSplit<CR>
nnoremap <leader>sn :action NextSplitter<CR>
nnoremap <leader>sp :action PrevSplitter<CR>
nnoremap <leader>sh :action SplitHorizontally<CR>
nnoremap <leader>sv :action SplitVertically<CR>
nnoremap <leader>sc :action Unsplit<CR>
nnoremap <leader>sq :action UnsplitAll<CR>
nnoremap <leader>sm :action MaximizeEditorInSplit<CR>
nnoremap <A-j> :action StretchSplitToBottom<CR>
nnoremap <A-h> :action StretchSplitToLeft<CR>
nnoremap <A-l> :action StretchSplitToRight<CR>
nnoremap <A-k> :action StretchSplitToTop<CR>
" Modify Font size"
map <leader>y :action EditorIncreaseFontSize<CR>
map <leader>t :action EditorResetFontSize<CR>
" Configure Build-Run-Debug shortcuts.
map <leader>R <action>(Run)
map <leader>B <action>(Build)
map <leader>D <action>(Debug)
map <leader>r <action>(ContextRun)
map <leader>b <action>(ToggleLineBreakpoint)
map <leader>d <action>(ContextDebug)
map <leader>cr <action>(Cargo.RefreshCargoProject)
" Configure Window Tools toggle.
map ,F <action>(FindInPath)
map ,s <action>(ActivateStructureToolWindow)
map ,e :NERDTreeToggle<CR>
map ,r <action>(Refactorings.QuickListPopupAction)
map ,a <action>(SearchEverywhere)
map ,u <action>(FindUsages)
map ,f <action>(GotoFile)
map ,p <action>(ActivateProblemsViewToolWindow)
map ,g <action>(ActivateVersionControlToolWindow)
map ,c <action>(ActivateCommitToolWindow)
map ,t <action>(ActivateTerminalToolWindow)
map ,z <action>(ToggleZenMode)
map ,q <action>(CloseEditor)
map ,i <action>(ShowErrorDescription)
map ,h <action>(ToggleInlayHintsGloballyAction)
map ,D <action>(Activatedocumentation.v2ToolWindow)
map ,d <action>(QuickJavaDoc)
map ,nf :action NewFile<CR>
map ,nd :action NewDir<CR>
"" -- 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
" Don't use Ex mode, use Q for formatting.
map Q gq
" Find more examples here: https://jb.gg/share-ideavimrc
" map ,D <action>(Documentation.Navigation) -- opens Quick Documentation Navigation