PhpStorm wrap/surround selection?
TwigPhpstormKeyboard ShortcutsSettingsTwig Problem Overview
Often in coding and templating I need to wrap a certain part of text. Is there any shortcut to wrap the current selection, for example:
Hello World
"Hello World"
Hello World
{{ trans 'Hello World' }}
Im using PhpStorm 7 for Mac and PC. I found something similiar, with: ctrl+alt+j you can wrap with a html-tag but nothing else. Also ctrl+alt+- comments the current selection according to the current file format(php, twig, html, ...)
Twig Solutions
Solution 1 - Twig
I know this is a little late answer, but I hope anyone who looks this question get helped.
In PhpStorm, almost everything can be configured but a little tricky and takes some learning curve.
It's very common behaviour that select a word and type single quote (or double quote) to surround it.
Hello World
'Hello World'
"Hello World"
To enable this, tick on checkbox of Preferences -> IDE -> Editor -> Smart Keys -> Surround Selection on typing quote or brace
.
Another way, you select something (word, condition) and press Cmd + Alt + T (on Mac) , Ctrl + Alt + T (on Windows). Available Surround With
options dialog box will be displayed.
For PhpStorm Version 8, tick on checkbox of Update (for PhpStorm8)
Preferences -> Editor -> General -> Smart Keys -> Surround selection on typing quote or brace
.
For PhpStorm Version 2016, use Cmd + Alt + S (on Mac) or Ctrl + Alt + S (on Win) to go to Settings. Tick on checkbox of Settings -> Editor -> General -> Smart Keys -> Surround selection on typing quote or brace`. Update (for PhpStorm 2016)
Solution 2 - Twig
As of 2015-02-26 (PhpStorm 8) go to:
File > Settings... > Editor > General > Smart Keys > Surround selection on typing quote or brace
Solution 3 - Twig
How to create a live template to easily change Hello World
into {{ trans 'Hello World' }}
:
- Select something (word, condition) and press Cmd + Alt + T (on Mac) , Ctrl + Alt + T (on Windows). Available Surround With options dialog box will be displayed.
- Select Configure live templates.
- On the right bar there are a "+" to add either a group or live template.
- In Edit part choose "Abbreviation", so you could see it in a menu later.
- In "Template text" add following:
{{ trans '$SELECTION$' }}
- Click ok to save changes.
After that select Hello World
and use step 1 from above, select a rule with your "Abbreviation"
This is just a more detailed answer than @Steve.NayLinAung . Credit goes to @LazyOne
Solution 4 - Twig
On a Mac, it's
PhpStorm > Preferences > Editor > General > Smart Keys > Surround selection on typing quote or brace
.
You can also press command+,
to open the Preferences menu.