How can I configure PhpStorm to autocomplete highlighted entry on keys like space, ()[],; and other relevant keys? Right now autocompletion only works with keys like Enter, Tab, and dash (-).
I know there is an option Editor > General > Code Completion > "Insert selected suggestion by pressing space, dot, or other context-dependent keys". But it seems like toggling it does not have the effect I want. So far I found out it only enables autocompletion additionally by dash (-), but not space or brackets.
For example, if I have this view:
Wanted behaviour after I press space (highlighted entry insertion):
Current behaviour after I press space (it just prints space):
I think what I want is default behavior Visual Studio and I really like it, enables faster typing and less Enter presses. But can't figure out how to configure PhpStorm the same way.
Related
Right now I'm just using PhpStorm to work with some HTML, and it's great in that it auto indents and automatically closes out HTML tags.
The only problem is this feature doesn't really save me any time because I then have to use my mouse or arrow keys to navigate past the closing tag when I reach it. For example I type <p> and it closes it out <p></p> with my cursor in between, but when I'm done I either have to manually navigate past the closing bracket or use Shift+Enter to jump down to the next line (which isn't always what I want to do).
Is there a command that will just jump me to the end of the next closing bracket, or is there a way of setting this up? I've googled it but haven't been able to find anything.
I've googled it but haven't been able to find anything.
Well... Help | Default Keymap Reference has the most needed shortcuts and actions listed and the one you need is there.
In any case:
Ctrl + ] -- Navigate to code block end -- will jump to the closest closing tag (in HTML) or brace/closing keyword (CSS, PHP).
Ctrl + [ will do the opposite -- jump to the opening tag.
There are few other actions that can help here but may not have any shortcuts assigned by default -- check them in Settings (Preferences on Mac) | Appearance & Behaviour | Keymap (it has search by action name and even by already assigned shortcuts).
Another alternative (or better say -- advanced navigation) would be using AceJump pluign (you have to see it in action -- you either like or hate it).. or even Vim mode navigation (via IdeaVim plugin).
The simplest way to go about this is to press Command + -> (command+right arrow key) when your cursor is inside the brackets, and this will bring you behind the last bracket.
At least, I believe this is what you're asking.
hi, use mac os for: cmd + option + ]
If you run a code inspection, you might get something like this in the results panel:
Problem synopsis:
Traditional syntax array literal detected (at line 193)
Problem resolution:
Convert Array Syntax To Short
i.e. it's telling you to change array() to []
The 'resolution' is clickable and it'll fix it for you. But is a keyboard shortcut, or a way of shading identical problems (often you get a bunch of them) and having them fixed for you all at once?
You can use f2/Shift+f2 to jump to next/previous error, then hit Alt+Enter, Enter to apply suggested fixes.
Note that there is a Code | Code Cleanup... command that runs inspections against your code and applies quickfixes. But it only includes a small subset of available inspections that are considered 'safe', so that applying hotfixes automatically doesn't break anything
Use standard shortcut: same as for invoking intentions menu (Quick Fix menu) manually in Editor: Alt + Enter (for Windows/Linux, not sure what that would be on Mac)
Also you can take a look at this tool: https://github.com/fabpot/PHP-CS-Fixer
I have installed emmet for Sublime Text 2...
And it works - kind a strange way
When I enter d it starts showing possibilities, but as soon as I press: : emmet shows completely different tip:
b (bottom)
So I need to press esc to close fuzzysearch box and press tab to allow Emmet do what it is used to do.
Dow, if I don't press esc before the tab key the resould is: d:bottom:, is I press esc, it desoults in correct: display:block.
Do you have an idea how can i fix that?
This happens because Emmet tries to respect default ST completions and due to lack of API support to properly handle built-in snippets: https://github.com/sergeche/emmet-sublime#tab-key-handler
By default, Emmet will not expand abbreviations by Tab if there’s autocomplete popup visible to allow users to work with default ST completions and snippets. You can override this behavior:
Go to Preferences > Settings — User
Add "disable_tab_abbreviations_on_auto_complete": false option. Make sure this file contains valid JSON.
After that everything should work fine, but you’ll no longer able to complete items from autocomplete popup with Tab key, use Enter key instead.
I had a similar issue but my fix was different to that of the accepted answer.
I had to go to Preferences > Settings — User and remove "emmet" from the ignored packages and everything started working again!
I have a little strange question, and I'm hoping you could help.
Cause, I've been searching for the answer in Google, in PHPstorm documentation and etc.
Here's what I need. Every time I type something in CSS or HTML with Zen coding, this Red Border appears to the value. When my mouse cursor is anywhere else and I hit "Enter", the cursor goes to the end of that red border.
So does anybody know, how to get rid of it? It drives me crazy..
Thanks.
pressing Enter (or Tab) is enough to remove the border :) See help:
"If the selected template is parametrized and requires user input, the editor enters the template editing mode and displays the first input field highlighted with the red frame. Type your value in this frame and press EnterEnter or TabTab to complete input and pass to the next input field. After completing the last input field, the caret moves to the end of the construct, and the editor returns to the regular mode of operation"
I have had the same unwanted behavior in PHPStrom with php.
For PHP the solution was to uncheck the following checkbox:
Go to Settings (ctrl + alt + s), then navigate to:
Editor -> General -> Smart Keys -> PHP
Uncheck checkbox: "Enable smart function paremeters completion"
Is there some way to get "surround with" in the Aptana perspective in Eclipse like you have in the Java perspective. I would love to be able to surround text with html tags like eg: <div></div> with a keyboard shortcut. Is there some way of doing that with the snippets rubles?
Thanks,
You can do this with AutoHotKey, which has the added benefit of being available across all apps. I have a script which launches a 'surround' menu when I select some text and press CTRL+SHIFT+C
To use it, install AutoHotKey, and create a new .txt file with the following code, and replace the extension with .ahk
http://pastebin.com/48ipiXsG
At the top of the file you'll find a number of groups of items, in the following format
<h1>~<h1>##</h1>
the ~ character divides the name of the function and the function content. The bit before ~ is what appears on your menu, and after the ~ is the code. ## represents where your selected text will go. So if you select the text 'AutoHotKey' and press CTRL+SHIFT+C, and then select <h1> from the menu, it'll replace the with <h1>AutoHotKey</h1>
There are several menus in the script, set up to launch based on what app you press CTRL+SHIFT+C in. For example, I get different shortcuts if I'm in Visual Studio than if I'm in SQL Server. You can modify these easily enough, but the generic menu should work fine for you. Feel free to chop and change but you have to leave GENERIC at the top of the script.
PS: I use this script everyday, and there is one small bug. The script saves whatever you have in the clipboard in a variable, and then writes it back to the clipboard when it's done. Sometimes, instead of surrounding text it replaces it with whatever you had in the clipboard. This is easily undone with CTRL-Z and usually works the second time you try it. I've never been able to figure out what causes this, maybe some autohotkey heads can help out?
PPS : This script is based on some other scripts from the AHK forums, including this one
http://www.autohotkey.com/docs/scripts/FavoriteFolders.htm
So you may find comments that don't make sense. I've seen a few references to the middle click, as the script above uses the middle mouse button instead of CTRL+SHIFT+C.