Better workflow , testing and debugging capability on your Kotlin Projects
Note: (Hide) CMD + H and (Minimize) CMD + M should be remapped using macos keyboard settings
Karabiner elements is required for Hyper Keys and Custom Tab Key
2. Install Plugins
- IdeaVim
- IdeaVim-EasyMotion
- Key Promoter X
- Ace Jump
3. Load `Masterpowers` keymap
Move the Downloaded file to your Home Directory
~/.ideavimrc
Top Left Sidebar Tool Windows
Tool Window Keys (CMD+Fn Keys) Leftsidebar | Description |
---|---|
CMD+F1 | Project |
CMD+F2 | Commit |
CMD+F3 | Bookmarks |
CMD+F4 | Resource Manager |
CMD+F5 | Build Variants |
Top Right Sidebar Tool Windows
Tool Window Keys (CMD+Fn Keys) RightSidebar | Description |
---|---|
CMD+F12 | Notifications |
CMD+F11 | Gradle |
CMD+F10 | Key Promoter X |
CMD+F9 | Device Manager |
CMD+F8 | Running Devices |
Bottom Left Sidebar Tool Windows
Tool Window Keys (OPT+Keys) Leftsidebar Bottom | Description |
---|---|
OPT+G | Git |
OPT+B | Build |
OPT+S | Services |
OPT+P | Problems |
OPT+E | Log Cat |
OPT+D | Debug |
OPT+F | Find |
OPT+R | Run |
Fn Keys
Mainly used for refactoring and documentationKeyboard Shortcuts | Description |
---|---|
F1 | Quick Documentation |
F2 | Rename |
F3 | Refactor this |
F4 | Change Signature |
F5 | Load Changes |
F11 | SDK Manager |
F10 | Project Structure |
Previews
Keyboard Shortcuts | Description |
---|---|
SHIFT+F1 | Editor |
SHIFT+F2 | Editor and Preview |
SHIFT+F3 | Preview |
Runner
Keyboard Shorcuts | Description |
---|---|
CMD+R | Run Context Configuration |
CMD+SHIFT+R | Run |
CMD+T | External Tools |
Note: External Tools Command Available depends on what you configure on my machine i have the ff:
- Kotlinc
- Java Run
Et. al.
Nav Menus Top Right
Keyboard Shorcuts | Description |
---|---|
OPT+F1 | Make Modules |
OPT+F2 | Attach Debugger to Android Process |
OPT+F3 | Sync Project With Gradle Files |
Debugging
Keyboard Shorcuts | Description |
---|---|
CMD+B | Toggle Breakpoint |
OPT+K | Resume/Pause Program |
OPT+L | Step Into |
OPT+H | Step Out |
OPT+J | Step Over |
CMD+SHIFT+S | Stop |
Errors / Warning
Keyboard Shortcut | Description |
---|---|
OPT+P | Tool Windows -> Problems |
OPT+SHIFT+I | Inspect Code with Editor Settings |
]+E (vim) | Go To Error |
[+E (vim) | Go To Previous Error |
TAB+E | Error Description |
Note: Tab is mapped to CTRL+OPT+CMD using karabiner elements
Quickly Jump from One Place to Another
Note : This are all vim keys binded using .ideavimrc
Keyboard Shortcut | Description |
---|---|
S | Ace Word Start Action |
leader+leader+w | Search Word Forward |
leader+leader+b | Search Word Backward |
leader+leader+f | Search Char Forward |
leader+leader+F | Search Char Backward |
Multi-Cursor / Selections
Keyboard Shortcut | Description |
---|---|
CMD+G | Find Next / Move to Next Occurrence |
CMD+SHIFT+G | Find Previous / Move to Previous Occurrence |
CMD+D | Add Selection for Next Occurrence |
CMD+SHIFT+D | Unselect Occurrence |
CMD+SHIFT+L | Select All Occurrence |
Code Completions
Keyboard Shortcut | Description |
---|---|
OPT+/ | Cyclic Expand Word |
OPT+SHIFT+/ | Cyclic Expand Backward |
OPT+Space | Basic |
OPT+ENTER | Type Matching |
Type Hinting, Quick Fixes, Formatting
Keyboard Shortcut | Description |
---|---|
gp | Parameter Info |
gt | Expression Type Info |
CMD+. | Show Context and Show Quick Fixes |
CMD+SHIFTT+I | Reformat Code |
OPT+SPACE | Insert Live Template |
OPT+W | Surround with |
CMD+K | Code Generate |
CMD+L | Complete Current Statement |
GoTo
Keyboard Shortcut | Description |
---|---|
gd (Vim) | Go to Declaration or Usages |
gD (Vim) | Go to TypeDeclaration |
gu (Vim) | Find Usages |
gi (Vim) | Go to Implementations |
CMD+U | Go to Super Method |
SHIFT+K (Vim) | Quick Definition |
F1 | Quick Documentation |
AI Assistant
Keyboard Shortcut | Description |
---|---|
OPT+SHIFT+E | Explain Code (Gemini) |
SHIFT+F2 | Copilot Chat |
Finders
Keyboard Shortcut | Description |
---|---|
CMD+F | Find |
CMD+E | Recent Files |
CMD+SHIFT+F | Find in Files |
CMD+H | Replace |
CMD+SHIFT+H | Replace in Files |
SHIFT+SHIFT | Search Everywhere |
CMD+P | Go To File |
CMD+SHIFT+P | Run any Command |
CMD+O | Go to Symbol |
CMD+SHIFT+O | Go To Class |
OPT+A | Go to Action |
OPT+T | Go to Test |
CMD+Y | File Structure |
Bookmarks
Keyboard Shortcut | Description |
---|---|
leader+[0-9] | Go to Bookmark by number |
leader+[a-z] | Go to Bookmark by letter |
'+[a-z] | Toggle Bookmark by lettes |
'+[0-9] | Toggle Bookmark by number |
Code Selections
Keyboard Shortcut | Description |
---|---|
OPT+DOWN | Shrink Selection |
OPT+UP | Expand Selection |
Move Statements
Keyboard Shortcut | Description |
---|---|
OPT+SHIFT+J | Move Statement Down |
OPT+SHIFT+K | Move Statement Up |
Move Lines
Keyboard Shortcut | Description |
---|---|
CMD+SHIFT+J | Move Line Down |
CMD+SHIFT+K | Move Line Up |
Split Panes
Keyboard Shortcut | Description |
---|---|
s+p | Horizontal Split |
v+s++p | Vertical Split |
Moving Across Panes
Keyboard Shortcut | Description |
---|---|
CTRL+H | Move to Left Pane |
CTRL+J | Move Down Pane |
CTRL+K | Move to Right Pane |
CTRL+L | Move Up Pane |
Tab Switching
Keyboard Shortcut | Description |
---|---|
CMD+[1-9] | Select Tab [1-9] |
CMD+[ | Select Previous Tab |
CMD+] | Select Next Tab |
TAB+[ | Navigate Tab Back |
TAB+] | Navigate Tab Forward |
Comments
Keyboard Shortcut | Description |
---|---|
CMD+/ | Comment with Line Comment |
CMD+SHIFT+/ | Comment with Block Comment |
Code Folding
Keyboard Shortcut | Description |
---|---|
CMD+(-) | Folding Collapse |
CMD+(+) | Folding Expand |
CMD+SHIFT+(-) | Collapse All |
CMD+SHIFT+(+) | Expand All |
File Manipulation
Shortcut Keys | Description |
---|---|
CMD+N | New |
CMD+SHIFT+N | New Directory |
Note: New has Different ways to create Files including Directory
File Editing
Shortcut Keys | Description |
---|---|
CMD+S | Save all |
CMD+X | Cut |
CMD+V | Paste |
CMD+Z | Undo |
CMD+SHIFT+Z | Redo |
Notifications
Keyboard Shortcut | Description |
---|---|
CMD+F12 | Tool Windows -> Notification |
CMD+SHIFT+F12 | Clear all Notifications |
Context Menus
Keyboard Shortcut | Description |
---|---|
OPT+SHIFT+C | Show Color Picker |
CMD+M | Show Context Menu |
OPT+SHIFT+D | Select Available Devices |
VCS
Keyboard Shortcut | Description |
---|---|
OPT+A | Amend |
OPT+C | Commit File |
OPT+SHIFT+A | Add to .gitignore |
CMD+SHIFT+A | Add to VCS |
CMD+SHIFT+U | Rollback |
CMD+SHIFT+M | Move to other Changelist |
Git History
Keyboard Shortcut | Description |
---|---|
OPT+SHIFT+R | Compare with Revisions |
CMD+SHIFT+Y | Show History / Diff |
CMD+J | Next Difference |
CMD+K | Previous Difference |
Linear Tasks
Linear Keys | Description |
---|---|
CMD+\ | Open Tasks |
CMD+SHIFT+\ | Switch Tasks |
-
Press SHIFT+SPACE
-
Select
IdeaVim: Track Action IDs
We can add custom bindings to our ~/.ideavimrc
nmap S <action>(AceWordStartAction)