PhpStorm 2020.1 EAP #5
The fifth build of the PhpStorm 2020.1 Early Access Program is available!
In this blog post, you can read about the Bundled Grazie spell checker, updates for сomposer.json support, new inspections for PHP, and styling of @deprecated elements in Structure view.
If you prefer to watch the updates on YouTube, at JetBrains channel we continue the series of What’s Coming in PhpStorm 2020.1 videos – Episode 3 is already online!
Bundled Grazie Spell Checker
Some time ago we announced a plugin called Grazie. This plugin provides intelligent spelling and grammar checks for texts that you write in the IDE, and it supports over 15 languages, including English, German, Russian, Chinese, and more.
In this EAP build and in the upcoming 2020.1 release, Grazie is bundled by default. To learn more, please read this blog post.
Just like with errors in the code, you can use the quick-fix Alt+Enter to correct typos and mistakes.
You can enable checking VCS commit messages under Preferences/Settings | Editor | Proofread | Grammar.
✨ The plugin works offline and all checks are performed locally, there is no remote processing at all.
Updates for Composer
In the upcoming PhpStorm 2020.1 release, we’ve bundled support for composer.json which was originally available only via the plugin.
We received great feedback with many interesting ideas. And the plan is to continue improving composer.json support.
In this build, there are a few updates for the scripts section to try.
Support for references
To enable script re-use and avoid duplicates, you can call a script from another one by prefixing the command name with @
. This will be correctly supported in PhpStorm 2020.1.
Type @
and use code completion (Ctrl+Space) to see the defaults such as @php
, @composer
as well as your custom scripts:
Navigation to script references
If you are referencing a custom script, you can press Cmd+Click to go to its definition:
Renaming script references
And if you decide to rename the script, you only need to do it once thanks to the Rename Refactoring (Shift+F6 or Ctrl+T, 1):
Miscellaneous PHP Improvements
Inspection to find redundant ternary expressions
Have you seen these trivial ternary operator expressions and thought “why”?
Phpstorm will highlight them and by using a quick-fix (Alt+Enter), you can replace them with a simpler expression:
Inspection and quick-fix for pass-by-ref
Using pass-by-reference could lead to unexpected consequences, and this is one of the reasons why Nikita Popov suggested to allow explicit call-sit pass-by-reference annotation in PHP.
Meanwhile, PhpStorm 2020.1 will detect when a parameter is marked as passed-by-reference, but this is in fact unnecessary and can be safely removed. Such parameters will be highlighted, and you can use a quick-fix (Alt+Enter) on them.
The same will work for arrays with pass-by-reference used in a foreach
loop:
Styling of @deprecated elements in the Structure tree view
With the Structure view window (Cmd+F12 / Ctrl+F12), you can get an overview of the members of any class or just any file. You can start typing here to narrow down the search and quickly navigate to some method.
However, the deprecated members were shown just like all the other ones:
How about having strikethrough for deprecated methods in @phpstorm in Structure list? pic.twitter.com/pUOqoWdQqC
— Łukasz Bajsarowicz (@LBajsarowicz) February 26, 2020
In PhpStorm 2020.1, the elements marked with @deprecated
tag will be displayed with strikethrough style by default.
Config files path changed
Starting from version 2020.1, the configuration files will be stored in a different folder.
For example, on macOS:
– ~/Library/Preferences/<product><version> + ~/Library/Application Support/JetBrains/<product><version> - ~/Library/Preferences/PhpStorm2019.3 + ~/Library/Application Support/JetBrains/PhpStorm2020.1
For more information on where exactly these files will be stored on your machine, please refer to this article https://www.jetbrains.com/help/phpstorm/2020.1/tuning-the-ide.html#default-dirs.
The full list of changes in this build, including bug-fixes and improvements, is available in the release notes.
- Important! PhpStorm EAP builds are not fully tested and may be unstable.
- You can install an EAP build side by side with a stable PhpStorm version to try out the latest features.
- EAP builds are free to use but expire 30 days after the build date.
Please report any problems you find to our issue tracker, or by commenting on this post. Your feedback is much appreciated, and the most active EAPers will get special limited-edition gifts from us!
Your JetBrains PhpStorm team
The Drive to Develop