This is a list of my most used IDE features during Android and Front-end development, the shortcuts performed in this article are for IntelliJ 2020.2.4. The shortcuts may differ in other versions but should be applicable in other JetBrains products. Intellij provides a default keymap with a list of popular shortcuts (Beware that some entries might be wrong).
Table of contents
- Add selection to the next occurrence (Alt + J / ⌃ + G)
- Line duplication (Ctrl + D / ⌘ + D)
- Extend selection (Ctrl + W / ⌥ + ↑)
- Refactor this (Ctrl + Alt + Shift + T / ⌃ + T)
- Search everywhere (Double Shift / Double ⇧) and Find in path (Ctrl + Shift + F / ⇧ + ⌘ + F)
- Show context actions (Alt + Enter / ⌥ + Enter)
- Add or Remove Caret (Alt + Shift + Button 1 Click / ⌥ + ⇧ + ⌘ + Button 1 Click) or Clone caret above/below (Double Ctrl + Up/Down / Double ⌥ + Up/Down)
- Paste from history (Ctrl + Shift + V / ⇧ + ⌘ + V)
- Comment out (Ctrl + / / ⌘ + /)
- Create new test or Navigate between test and source code (Ctrl + Shift + T / ⇧ + ⌘ + T)
- Move statement up/down (Ctrl + Shift + Up/Down / ⇧ + ⌘ + Up/Down)
- Recent files (Ctrl + E / ⌘ + E) and Recent locations (Crl + Shift + E / ⇧ + ⌘ + E)
- Go to Next/Previous Method (Alt + Up/Down / ⌃ + Up/Down)
- Git / VCS
- Local history
- Splitters
- Go to declaration (Ctrl + B / ⌘ + B) and Go to implementation (Ctrl + Alt + B / ⌘ + ⌥ + B)
1. Add selection to the next occurrence (Alt + J / ⌃ + G)
Reverse: Unselect occurrence (Alt + Shift + J / ⌃ + ⇧ + G)
Additional shortcuts used:
2. Line duplication (Ctrl + D / ⌘ + D)
Additional shortcuts used:
3. Extend selection (Ctrl + W / ⌥ + ↑)
Reverse: Shrink selection (Ctrl + Shift + W / ⌥ + ↓)
Additional shortcuts used:
4. Refactor this (Ctrl + Alt + Shift + T / ⌃ + T)
This is a powerful feature for refactoring and cleaning up code, remembering only the menu shortcut is more than enough. It pays off to get familiar with the provided options.
![Refactor this context menu Refactor this context menu](https://akjaw.com/content/images/2021/03/refactor-this-menu.png)
![Rename this action Rename this action](https://akjaw.com/content/images/2021/03/rename-1.png)
![Change signature pop up Change signature pop up](https://akjaw.com/content/images/2021/03/change-signature-1.png)
5. Search everywhere (Double Shift / Double ⇧) and Find in path (Ctrl + Shift + F / ⇧ + ⌘ + F)
![Search everywhere window Search everywhere window](https://akjaw.com/content/images/2021/03/search_everywhere.png)
![Find in path window Find in path window](https://akjaw.com/content/images/2021/03/find_in_path.png)
6. Show context actions (Alt + Enter / ⌥ + Enter)
7. Add or Remove Caret (Alt + Shift + Button 1 Click / ⌥ + ⇧ + ⌘ + Button 1 Click) or Clone caret above/below (Double Ctrl + Up/Down / Double ⌥ + Up/Down)
![Add multiple carets on double Ctrl option in the Find action window Add multiple carets on double Ctrl option in the Find action window](https://akjaw.com/content/images/2021/03/multiple-caret-potion.png)
Additional shortcuts used:
8. Paste from history (Ctrl + Shift + V / ⇧ + ⌘ + V)
![Paste from history window Paste from history window](https://akjaw.com/content/images/2021/03/paste-from-history.png)
9. Comment out (Ctrl + / or ⌘ + /)
Additional shortcuts used:
10. Create new test or Navigate between test and source code (Ctrl + Shift + T / ⇧ + ⌘ + T)
11. Move statement up/down (Ctrl + Shift + Up/Down / ⇧ + ⌘ + Up/Down)
12. Recent files (Ctrl + E / ⌘ + E) and Recent locations (Ctrl + Shift + E / ⇧ + ⌘ + E)
![Recently opened files window Recently opened files window](https://akjaw.com/content/images/2021/03/recent_files.png)
![Recent locations window Recent locations window](https://akjaw.com/content/images/2021/03/recent_locations.png)
13. Go to Next/Previous Method (Alt + Up/Down / ⌃ + Up/Down)
14. Git / VCS
![Editor gutter git changes preview Editor gutter git changes preview](https://akjaw.com/content/images/2021/03/change-gutter.png)
![Git window at the bottom of the IDE Git window at the bottom of the IDE](https://akjaw.com/content/images/2021/03/changelist.png)
![Commit window Commit window](https://akjaw.com/content/images/2021/03/commit-window.png)
If you're interested about improving your git workflow, checkout my other article
![](https://akjaw.com/content/images/2022/10/hero.png)
15. Local history
Local history is for those of us who like to Undo (Ctrl + Z) a lot and then accidentally type something thus breaking the Redo (Ctrl + Shift + Z) functionality.
![Local history window Local history window](https://akjaw.com/content/images/2021/03/local-history-file.png)
![Local history context menu in the editor Local history context menu in the editor](https://akjaw.com/content/images/2021/03/local-history-prompt.png)
16. Splitters
I often use splitters when writing code using TDD, creating them with the Search everywhere or Find Action functions
![Spliter actions in the Find actions window Spliter actions in the Find actions window](https://akjaw.com/content/images/2021/03/split-and-move.png)
![Screenshot of side by side test and system under test Screenshot of side by side test and system under test](https://akjaw.com/content/images/2021/03/split-tabs.png)
To navigate between the splitters I've assigned these shortcuts:
- Goto Next Splitter - Ctrl + Shift + ] or ⌘ + ]
- Goto Previous Splitter - Ctrl + Shift + [ or ⌘ + [
17. Go to declaration (Ctrl + B / ⌘ + B) and Go to implementation (Ctrl + Alt + B / ⌘ + ⌥ + B)
Go to declaration shortcut does the same thing as Ctrl + Button 1 Click / ⌘ + Button 1 Click
![](https://akjaw.com/content/images/2021/03/go-to-implementation-1.png)
Course
If you'd like to improve your IDE workflow, or learn about more outside-coding processes, checkout the Android Next Level course which I'm a co-author of.
![](https://akjaw.com/content/images/2023/04/XClD1wh2eOXWfFpnetcHtdSGKbtbtvt1RTfHvouR.webp)