CodeRush 18.1.5

Released: Jun 19, 2018

Updates in 18.1.5

Features

  • Training Window - The Training Window from CodeRush Classic has been ported.
  • Code Cleanup - Added a Copyright Header Code Provider, which adds a copyright comment at the file's beginning. It is also available as a Code Cleanup provider and as a template - just press the letter 'h' at the top of the file on an empty line and press your template expansion key (e.g. Space or Tab). Before using the default header for the first time, you should configure the “First Name”, “Last Name” and “Company” fields on the IDE | User Info options page. The actual text of the generated header is stored in the h template expansion, and can be changed there as desired.
  • Clipboard and Selection Tools
    • Added the Cut, Copy, Select and Comment actions to the Member Icons Menu.
    • The Comment/Uncomment Selection feature now supports XAML, XML and CSS languages.
  • Code Analysis - Added a custom icon for spell checker suggestions in the Code Actions Menu so they are more easily identified in the action menu.
  • Coding Assistance
    • You can now use Multi-Select to mark important text elements before selecting and copying/cutting a block of code to get a richer smarter version of the code on the clipboard. Any code in the selection that has been multi-selected will become a linked Text Fields upon pasting. You can even create zero-length multi-selections to mark caret insertion points on the paste. Just put the caret where you want the caret to be on paste, and press Ctrl+Alt+Enter to add a multi-selection marker at that location.
    • Once a Mega Super Copy is on the clipboard, you can paste it as many times as you need. This is really useful for repetitive code where you know in advance what parts you want to change and where you want the cursor after paste.
    • You can also use the Ctrl+Alt+V shortcut to paste the most recent text Mega-Super-Copied with fields, even if it is not currently on the clipboard.
    • The Text Links and Text Fields behavior in Smart Duplicate Line/Selection, Mega Super Copy, and Selection to Template features is now configurable. Use the Editor | All Languages | Linked Text & Fields options page to configure when the automatic links and fields should be created. These rules apply to normal selections of code (free of any multi-selections)
  • Navigation - You can now define a shortcut that invokes a Jump to window with a pre-configured filter. The JumpToSymbol command now accepts four parameters:
    • TypeFilter (can be: Classes, Interfaces, Structs, Enums, Delegates, and AllTypes)
    • MemberFilter (can be: Methods, Properties, Events, Fields, LocalsAndParams, and AllMembers)
    • AccessFilter (can be: Private, Protected, Internal, ProtectedInternal, Public, and AllVisibilities)
    • LocationFilter (can be: AllFiles, CurrentSolution, CurrentProject, CurrentNamespace, and CurrentFile)
    • You can use "and" keyword to combine filters like this: 'Classes and Structs'.
    • Add a new shortcut with the 'JumpToSymbol' command and the initial filter you need in 'Parameters' to make use of this feature.
    • System Markers dropped by CodeRush are now cleaned up automatically when CodeRush detects they are redundant or no longer needed.
  • Refactorings and Code Providers
    • The Declare Method code provider is now available when the caret is located at the end of the line with an undeclared method.
    • The XPO Fields code provider now copies the [Obsolete] attribute from fields to their corresponding maintained properties.
    • Added a 'Collapse Accessors' code formatter, which collapses both 'get' and 'set' property accessors into single-line form.
  • Templates
    • Extended the CodeRush type-casting templates so that they support explicit type casting in expressions.
    • Entries in the middle column reflect the new functionality in this release. Entries in the last column show existing but related casting technology. The Expression referenced in this last column will be replaced by an identifier in the clipboard (if any). See the C for Casting video for more on this existing functionality.
    • Improved the ForEach text command. Now it is possible to iterate through lines of text copied to the clipboard. You can do it with the following text command: "ForEach(line in clipboardText,template))", where template is the name of the template you want to execute for each line of text on the clipboard. You can access the text of each iterated line by calling ?Get(itemName) from inside your template.