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.



5. Search everywhere (Double Shift / Double ⇧) and Find in path (Ctrl + Shift + F / ⇧ + ⌘ + F)


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)

Additional shortcuts used:
8. Paste from history (Ctrl + Shift + V / ⇧ + ⌘ + V)

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)


13. Go to Next/Previous Method (Alt + Up/Down / ⌃ + Up/Down)
14. Git / VCS



If you're interested about improving your git workflow, checkout my other article

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.


16. Splitters
I often use splitters when writing code using TDD, creating them with the Search everywhere or Find Action functions


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

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.
