How to move out of auto-completed brackets in Inte

2019-01-07 04:20发布

问题:

I recently switched from Eclipse to Intellij Idea, and found myself wondering how to move the cursor out of a pair of auto-completed brackets. In eclipse after I finished typing in a pair of brackets, pressing tab brings me out of the brackets. How can I do the same thing without using the arrow keys?

Many thanks for your help!

回答1:

IDEA doesn't have such feature yet. The closest equivalent is the Complete Current Statement editor action (Ctrl+Shift+Enter).

UPDATE:

Initial implementation for this feature is available in 2018.2 EAP version. It works more like in MS Visual Studio - without visual indication of tab 'exit' position. For now, it should work in Java, SQL, Python and some other files. It will take some time for other languages to catch up - some language-specific code changes are required. The feature is disabled by default, you can enable it in Settings->Editor->General->Smart Keys->Jump outside closing bracket/quote with Tab.



回答2:

Ctrl + Shift + Enter does not seem to work for me in IDEA 12.1.4, but I found the closest feature to what I was looking for was Shift + Enter. This completes the line, creates a new line below the current line and moves the cursor to it.



回答3:

You can do this by pressing the closing symbol that you would've pressed otherwise, but was auto completed. For example, if you have just typed the f below, you would press shift and 0 (or closing parenthesis), and it will move your cursor outside of the parenthesis.

String asdf = "hello world";
System.out.println(asdf);


回答4:

I went to preferences->Keymap and set a shortcut for "Move Caret to Line End" to Shift-Space. It takes me to the end of the current line I am on without adding anything, if that's what you want.



回答5:

Not currently supported by Intellij. There is an open feature request on this at http://youtrack.jetbrains.com/issue/IDEA-74666. Extra votes would be nice.



回答6:

Intellij supports the ctrl+shift+m shortcut that jumps to the end of the block:

https://www.jetbrains.com/help/idea/2016.2/navigating-to-braces.html



回答7:

It's not quite what you're looking for, but you can type the character you are trying to move outside of (a closing paren, for example) and that should pop you outside of the auto-completed character.

Not ideal, but functional as far as I've tested it.



回答8:

I set these setting:

1) I added Semicolon shortcut to Complete Current Statement:

Instead of using for loop command, I using fori command (because for command needs semicolon character):

2) I added Alt+Semicolon shortcut to Move Caret to Code Block End:

So when I inside the loop, by pressing Alt+Semicolon jumping end of the bracket, by pressing Semicolon I jumping out the bracket subsequently.

by adding these shortcuts, the speed of coding will be faster.



回答9:

Such key is called "End".

You can assign any unused shortcut to "Move Caret to Line End" action in "Settings/Preferences | Keymap".

P.S. You can use Ctrl+Shift+Enter to complete your statement (in your case it will place caret at the end of line and will add ";" there) -- action called "Complete Current Statement" and shortcut can be checked/changed in a same way as described earlier.



回答10:

If you decide to move back to Eclipse and use PyDev this feature by default is disabled, First Switch to PyDev Perspective and you can enable it by going under Preferences>PyDev>Editor>Typing>Enable link on Automatic parenthesis or literals closing