Irina has posted 29 posts at DZone. View Full User Profile

Easy Unwrapping with IntelliJ IDEA

  • submit to reddit

In complicated code constructs that contain numerous nested statements, you sometimes need to accurately get rid of the enclosing parts. When you try to manually delete such statements, it is too easy to break the syntax of the whole construct. With the new IntelliJ IDEA’s unwrapping feature, this task becomes just a snap.

Consider the following example, where a string variable is being analyzed:









Let’s remove one of the branches. To do that, place the cursor at the branch containing the statement, and press Ctrl+ Shift+Delete. IntelliJ IDEA shows you which results you can obtain: the part that will remain is displayed on the blue background, while the grey background denotes the pieces of code to be deleted:









After clicking the Remove ‘else…’ option, we get the promised results:









As you see, all parentheses are properly balanced, and the syntax is correct.

However, Java developers are not the only ones who can enjoy this powerful feature. The same “stripping” can be done in XML or HTML code.

Consider a situation when you have to clean up some HTML code and get rid of inline styles, for example, remove bold fonts. What will you do in this case – delete an opening tag, then delete the closing tag, with the real possibility to lose something in process. With IntelliJ IDEA, all you have to do is to place the caret somewhere inside the tags, and press Ctrl+Shift+Delete. The unnecessary tags are removed silently.

This facility is even more helpful for XML constructs, which can have deep nesting. You can sequentially remove enclosing tags level by level, until getting to the innermost one you want to preserve.

Do I need to mention that such unwrapping can be undone?

Published at DZone with permission of its author, Irina Megorskaya.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)


Aldis Blair replied on Tue, 2013/03/26 - 7:04am

 Thanks a lot for sharing code of unwrapping with intelliJ idea: I am working with an IT firm which help students by providing certification training material : thanks a lot again this is great help.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.