PhpStorm 2016.3 Help

Tuning PhpStorm

In this part:

Changing PhpStorm properties

You can make PhpStorm work faster by editing the default Java Virtual Machine (JVM) settings. These operations require certain understanding of the JVM functionality and may cause unexpected problems. Therefore it is strongly recommended that you address the JetBrains Support whereupon you will be provided with detailed instructions regarding which settings you need to update and what values should be assigned to them.

See also Reporting Issues and Sharing Your Feedback.

PhpStorm makes it possible to change *.vmoptions and idea.properties files without editing them in the PhpStorm installation folder.

To create an empty idea.properties file or to copy *.vmoptions file, choose the Help | Edit Custom Properties or Help | Edit Custom VM Options on the main menu respectively. Refer to the menu items description for details.

Managing *.vmoptions file

The location of the *.vmoptions file depends on the operating system you are currently using:

  • For Windows systems: <PhpStorm installation folder>/bin/phpstorm.exe.vmoptions or <PhpStorm installation folder>/bin/phpstorm64.exe.vmoptions
  • For *NIX systems: <PhpStorm installation folder>/bin/phpstorm.vmoptions or <PhpStorm installation folder>/bin/phpstorm64.vmoptions
  • For OS X systems, you have to make a copy of the phpstorm.vmoptions file in the IDE preferences folder and then edit this copy. The reason is that app bundle is signed and you should not modify any files inside the bundle.
    • Since version 2016.1, the file /Applications/PhpStorm.app/Contents/bin/phpstorm.vmoptions should be copied to ~/Library/Preferences/PhpStorm/phpstorm.vmoptions.
    • For earlier versions, the file /Applications/PhpStorm<version>.app/Contents/bin/idea.vmoptions should be copied to ~/Library/Preferences/PhpStorm<version>/idea.vmoptions.

To avoid editing files in the PhpStorm installation folder, one should:

  1. Do one of the following:
    • Use the main menu command Help | Edit Custom VM Options to create a copy of the phpstorm.vmoptions file in the user home. Refer to Edit Custom VM Options for details.
    • Copy the existing file from the PhpStorm installation folder somewhere and save the path to this location in the environment variable WEBIDE_VM_OPTIONS.
    • Copy the existing file <PhpStorm installation folder>/bin/phpstorm.exe.vmoptions or <PhpStorm installation folder>/bin/phpstorm64.exe.vmoptions from the PhpStorm installation folder into the location under your user home.
  2. Edit this file in the new location.

If WEBIDE_VM_OPTIONS environment variable is defined, or the *.vmoptions file exists, then this file is used instead of the one located in the PhpStorm installation folder.

Example: Increasing the heap size

To increase PhpStorm heap size, you should copy the original phpstorm.vmoptions file to the above-mentioned location, and then modify the -Xmx setting.

Managing idea.properties file

The file idea.properties, located in the bin directory of the PhpStorm installation folder, should not be edited. Instead of editing the original idea.properties, create file idea.properties in the location specified below, open it for editing and add the required properties.

So, depending on your platform:

  • For Windows: in %USERPROFILE%\.PhpStormXX
  • For *NIX: in ~/.PhpStormXX
  • For OS X: in ~/Library/Preferences/PhpStormXX

Example: Changing case of unicode literals

PhpStorm allows defining whether non-ascii characters should use literals like '\u00AB' or '\00ab'.

This behavior is controlled by the system property idea.native2ascii.lowercase. By default, upper case characters are used.

If it is desirable to use lower case characters, create the file idea.properties in the location specified above, open it for editing and add the following line:

idea.native2ascii.lowercase=true

Specifying custom JDK, properties or vmoptions files across platforms

A custom JDK, *.properties and *.vmoptions files are specified across platforms in a unified way.

All the launchers look at the following environment variables:

  • $<IDE-NAME>_JDK (<IDE-NAME>_JDK_64)
  • $<IDE-NAME>_PROPERTIES
  • $<IDE-NAME>_VM_OPTIONS

See Also

Last modified: 23 March 2017