Doom Emacs key bindings in IdeaVim.
- Renamed
ideavimrc
->init.vim
, so you need to importinit.vim
into your.ideavimrc
. expand-region.vim
was removed. To configure expand/shrink region key bindings, seeTips > Expand/Shrink Region
section below.
source /path/to/idea-doom-emacs/init.vim
" If you want camel case movement and editing
source /path/to/idea-doom-emacs/subword-mode.vim
Key binding | Description |
---|---|
SPC b d , SPC b k |
Kill buffer |
SPC b s |
Save buffer |
SPC b K |
Kill all buffers |
SPC b N |
New empty buffer |
SPC b O |
Kill other buffers |
SPC b S |
Save all buffers |
Key binding | Description |
---|---|
SPC c D |
Jump to references |
SPC c a |
Execute Intention Action |
SPC c c |
Compile |
SPC c d |
Jump to definition |
SPC c f |
Format buffer/region |
SPC c i |
Find implementations |
SPC c j |
Jump to symbol in current workspace |
SPC c k |
Show documentation |
SPC c o |
Organize imports |
SPC c r |
Rename |
SPC c t |
Find type definition |
SPC c C |
Recompile |
Key binding | Description |
---|---|
SPC f c |
Open project editorconfig |
SPC f r |
Recent files |
SPC f s |
Save file |
SPC f R |
Rename/move file |
SPC f y |
Copy filename |
Key binding | Description |
---|---|
SPC g ' |
GitHub menu |
SPC g . |
Git file actions |
SPC g / |
Git menu |
SPC g [ , [ c |
Jump to previous hunk |
SPC g ] , ] c |
Jump to next hunk |
SPC g b |
Switch branch |
SPC g r |
Revert hunk |
SPC g s |
Status |
SPC g t |
Time machine |
SPC g B |
Blame |
SPC g C |
Clone |
SPC g F |
Fetch |
SPC g S |
Git stage file |
Key binding | Description |
---|---|
SPC g c b |
Branch |
SPC g c p |
Pull request |
SPC g c r |
Initialize repo |
SPC g c R |
Clone repo |
Key binding | Description |
---|---|
SPC g l p |
List pull requests |
Key binding | Description |
---|---|
SPC g o o |
Browse file or region |
SPC g o p |
Browse a pull request |
Key binding | Description |
---|---|
SPC h e |
Show Event Log |
SPC h r |
Reload IdeaVim config |
SPC h t |
Change theme |
Key binding | Description |
---|---|
SPC i e (M-SPC i e in insert mode) |
Insert emoji/unicode |
SPC i s (M-SPC i s in insert mode) |
Insert Live Template |
SPC i u (M-SPC i u in insert mode) |
Insert emoji/unicode |
SPC i y (M-SPC i y in insert mode) |
Insert from clipboard |
Key binding | Description |
---|---|
SPC o f |
New window |
SPC o F |
Select window |
SPC o o |
Reveal in filer |
SPC o p |
Toggle Project View |
SPC o P |
Find file in Project View |
SPC o t |
Open terminal |
SPC o T |
Open terminal here |
Key binding | Description |
---|---|
SPC p ! |
Run cmd in project root |
SPC p i |
Invalidate project cache |
SPC p p |
Switch projects |
SPC p R |
Run project |
SPC p t |
Show TODO |
SPC p z |
List project tasks |
Key binding | Description |
---|---|
SPC t b |
Presentation Mode |
SPC t F |
Fullscreen |
SPC t l |
Line numbers |
SPC t r |
Read-only mode |
SPC t w |
Soft line wrapping |
SPC t z |
Distraction Free Mode |
SPC t Z |
Zen Mode |
Key binding | Description |
---|---|
SPC / , SPC s p |
Search project |
SPC s k |
Look up in Dash docsets |
Key binding | Equivalent to |
---|---|
SPC w c , SPC w d |
C-w c |
SPC w h |
C-w h |
SPC w j |
C-w j |
SPC w k |
C-w k |
SPC w l |
C-w l |
SPC w s |
C-w s |
SPC w v |
C-w v |
SPC w w |
C-w w |
SPC w W |
C-w W |
Key binding | Description |
---|---|
<C-w> d , <C-w> <C-d> |
Show error description |
SPC w m |
Maximize window (unsplit) |
Key binding | Description |
---|---|
g s b |
<Plug>(easymotion-bl) |
g s e |
<Plug>(easymotion-el) |
g s f |
<Plug>(easymotion-f) |
g s F |
<Plug>(easymotion-F) |
g s j |
<Plug>(easymotion-j) |
g s k |
<Plug>(easymotion-k) |
g s n |
<Plug>(easymotion-n) |
g s N |
<Plug>(easymotion-N) |
g s s |
<Plug>(easymotion-s2) |
g s t |
<Plug>(easymotion-t) |
g s T |
<Plug>(easymotion-T) |
g s w |
<Plug>(easymotion-wl) |
g s g e |
<Plug>(easymotion-gel) |
Key binding | Description |
---|---|
g r |
Refresh |
j |
Next line |
k |
Previous line |
l |
DWIM |
K |
Go to parent |
L |
Next neighbour |
H |
Previous neighbour |
o o |
Open no split |
o s |
Open vertical |
o v |
Open horizontal |
q |
Quit |
Key binding | Description |
---|---|
SPC RET |
Jump to bookmark |
SPC < |
Switch buffer (Switcher) |
[ SPC |
Insert blank line above current line |
] SPC |
Insert blank line below current line |
Actions on Save feature is available since IntelliJ IDEA 2021.2.
Go Settings > Tools > Actions on Save
and check Reformat code
(also check Optimize imports
, Rearrange code
if you want).
If it doesn't work, make sure you don't set ideawrite
option to file
.
It should be all
.
Add the following into your init.vim
:
vnoremap < <gv
vnoremap > >gv
Add the following into your init.vim
:
map <Leader>v <Action>(EditorSelectWord)
let g:WhichKeyDesc_expand_region = '<Leader>v Expand region'
vmap v <Action>(EditorSelectWord)
vmap V <Action>(EditorUnSelectWord)
Add the following into your init.vim
:
map <C-S-=> <Action>(EditorSelectWord)
vmap <C-S-=> <Action>(EditorSelectWord)
vmap <C-=> <Action>(EditorUnSelectWord)
- intellimacs - Spacemacs' like key bindings for IntelliJ platform