INTEGRATED DEVELOPMENT ENVIRONMENTS (IDES)

# IntelliJ IDEA

 Date Published: June 26, 2016 Last Modified: April 5, 2019

## Quick Reference

DescriptionShortcutComment
Compile/Run/Debug
Make ProjectCtrl-F9 (Windows)You can change the project settings to that artefacts (such as .jar files) are generated at the same time as make.
Run (without debugging)Shift-F10 (Windows)
Ctrl-R (Mac)
Runs the last active configuration. Debugging IS NOT enabled.
Run (with debugging)Shift-F9 (Windows)
Ctrl-D (Mac)
Runs the last active configuration. Debugging IS enabled. Note that IdeaVim on Mac can override the Ctrl-D shortcut to jump down half a page.
Step OverF8 (Windows)Use to "step over" current line of code when debugging. Step-over is one of the most commonly used debug features.
Step IntoF7 (Windows)Use to "step into" the current line of code while debugging. This will enter the method (if any) on the current line of code.
Resume ProgramCmd-Alt-R (Mac)Continue running the program if it has been paused while debugging.
View
Show Project WindowAlt-1 (Windows)Shows the file structure of the project (by default this on the left-hand side of the screen).
Show Code Structure WindowAlt-7 (Windows)This gives a great overview of the class inside the current file (e.g. it lists all the variables and methods).
Quick DocumentationCtrl-Q (Windows)Great for checking up on what a class or method does as you are about to use it.
Code
Reformat CodeCtrl-Alt-L (Windows)Corrects the coding indentation of the current file. Great for automatically tidying up code after serious refactoring has taken place.

## vim Plugin

IntelliJ supports the IdeaVim plugin which adds vim-like functionality to the IDE.

This plugin support configuration using a ~/.ideavimrc file, which is similar in format to a typical .vimrc file, except that it allows special extensions to directly control IntelliJ through an API.

I have noticed that IdeaVim cannot deal with large files that well (e.g. a 50,000 line .json file), and I have to disable the plugin to be able to work with these files.