ReSharper C++ 2020.1 EAP: Rearrange Code, Code Completion, and UE4 Naming

With this EAP build, the well-known Rearrange code and Complete Statement features from ReSharper for .NET have finally come to ReSharper C++! Read on for details about these features, as well as other highlights of this build:

Download the new ReSharper C++ EAP build from our website, or via the Toolbox App.

DOWNLOAD RESHARPER C++ 2020.1 EAP

Rearrange code

ReSharper С++ now allows you to quickly rearrange expressions, statements, and other elements in your code. To rearrange code, press Ctrl+Shift+Alt over the code element or selection that you want to move, then press any arrow key. If you invoke this command without first selecting something, the movable element is selected automatically.

The Move up and Move down commands are pretty straightforward – they can move elements within a specific scope up and down relative to other elements in this scope, or between neighboring scopes. You can use the Move up and Move down commands on statements and declarations, sections in a switch statement, enumerators, catch sections within a try-catch statement, conditions or branches in if statements, and more.
Rearrange code: move down

You can also move opening or closing braces up or down to expand or shrink the current compound statement, type, or namespace:
Move to expand or shrink

There are also two modes for Move left and Move right, which allow you to:

  • Rearrange elements that are normally written in a single line (though they also work if the elements are written in multiple lines). You can use Move left and Move right on elements in a braced initializer list, as well as function or lambda parameters and arguments, and so on.
    Rearrange code: move left
  • Move a statement or a declaration into the region that directly follows it (move right) or outside the current region (move left):
    Rearrange code: move left

Complete Statement

The Complete Statement feature inserts required syntax elements and puts the caret in a position where you can start typing the next statement.
With ReSharper C++, you can now use the Ctrl+Shift+Enter shortcut instead of having to perform lots of other small actions. For example, this shortcut will automatically insert braces and a semicolon, and then put the caret where you can proceed to write the body:
Complete statement

Completion in macro definitions

It is hard to believe that code completion had remained unsupported in macro definitions. Until now! Starting with 2020.1, ReSharper C++ now provides context-aware code completion in macros to help you be even more productive:
Completion in macro definitions

UE4 naming conventions

We introduced support for Unreal Engine naming conventions a year ago in the 2019.1 release. But if there is something to improve, we are always ready to do it. In 2020.1, we’ve upgraded our naming rules with two small entries: ReSharper C++ now works better with the names of console variables and log categories.

Those are all the major improvements in this update. The full list of changes, including bug fixes and minor improvements, can be found in our issue tracker.

DOWNLOAD RESHARPER C++ 2020.1 EAP

Your ReSharper C++ team
JetBrains
The Drive to Develop

This entry was posted in News & Events and tagged , , , . Bookmark the permalink.

5 Responses to ReSharper C++ 2020.1 EAP: Rearrange Code, Code Completion, and UE4 Naming

  1. Mike Diack says:

    Now that LLVM 10.0.0 final is out (with builds at: https://releases.llvm.org/download.html ), is it possible that Resharper could use it soon? (I appreciate it may now be too late to use it in 2020.1, given that I guess you are at feature freeze). Even if not, surely you can update Resharper to use clang-tidy 9.0.1 – currently you are using 9.0.0, which dates back to last Summer, 9.0.1 came out in Dec 2019.?

    Thanks!

    • Igor Akhmetov says:

      Hello Mike,
      Clang-tidy 10 will be bundled in EAP 7. To be fair, 9.0 was released at the end of last September. We do not usually update the bundled binary with minor LLVM releases, since the introduced fixes usually do not have to do with clang-tidy. But if you’re missing something specific from a minor release, do let us know.

  2. Rick says:

    It’s all nice, but somehow it’s also all so hollow and overwhelming. How many keyboard shortcuts are there to remember? 100? 1000? Its the same with all modern software, Resharper is no exception. When I read about updates, I skim the text and think “Yeah, nice, but I know I’m never going to use it, because I can’t remember it all”

  3. Bart says:

    My most missed IntelliJ feature has arrived :-) Yeeey :-)

Leave a Reply to Igor Akhmetov Cancel reply

Your email address will not be published. Required fields are marked *