|Make Project||You can change the project settings to that artefacts (such as |
|Run (without debugging)||Runs the last active configuration. Debugging IS NOT enabled.|
|Run (with debugging)||Runs the last active configuration. Debugging IS enabled. Note that IdeaVim on Mac can override the |
|Step Over||F8 (Windows)||Use to "step over" current line of code when debugging. Step-over is one of the most commonly used debug features.|
|Step Into||F7 (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 Program||Continue running the program if it has been paused while debugging.|
|Show Project Window||Shows the file structure of the project (by default this on the left-hand side of the screen).|
|Show Code Structure Window||This gives a great overview of the class inside the current file (e.g. it lists all the variables and methods). This shortcut will also jump the cursor to the code structure window if already open.|
|Quick Documentation||Great for checking up on what a class or method does as you are about to use it.|
|Reformat Code||Corrects the coding indentation of the current file. Great for automatically tidying up code after serious refactoring has taken place.|
IntelliJ supports the IdeaVim plugin which adds vim-like functionality to the IDE.
This plugin supports 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.
One problem I have noticed in IntelliJ is the slow upload of files to a server through SSH. Even though IntelliJ was configured to only upload changed files, it was still painfully slow in uploading the 10-20 file changes that occurred whenever I switched between
git branches. Below is an example of the slow transfer speed as reported by IntelliJ after some local files changed:
[17/03/20, 4:00 PM] Automatic upload completed in 11 minutes: 64 items deleted, 374 files transferred, 14 items failed (9.7 kbit/s)
In the end I gave up on using IntelliJ for this and instead used
rsync, which was about 10-100x faster.