ReSharper 2019.2 Help

Coding Assistance in XML

Most of ReSharper's coding assistance features are also supported in XML. You can find the detailed information on these features in the corresponding topics of the Coding Assistance section. In the main topic of the section, you can also find the feature matrix and check what exactly is supported in XML.

In this topic, you can find some examples of using coding assistance features in XML.

Examples of context actions

ReSharper provides a set of context actions that target XML code. You can find the full list of these actions in the Code Editing | XML | Context actions page of ReSharper Options. If necessary, you can also disable some of the actions using this page.

As soon as a context action becomes available for the current caret position, ReSharper displays the corresponding action indicator ThemedIcon ContextAction Screen Gray to the left of the caret. Sometimes however, ReSharper provides several contextually available features for the current caret position. In this case, the action indicator corresponding to the action with the highest priority is shown, and all other actions only appear when you expand the action list by clicking on the action indicator or pressing Alt+Enter Context actions have the lowest priority, therefore, they often appear at the bottom of the action list.

Here are some examples of context actions for XML:

Convert text to CData

If your text inside a tag has XML symbols, it needs to be converted to CData in order not to break the structure of the document. Luckily, there is an appropriate context action.

ReSharper: Convert text to CData context action in XML

After applying the context action, your text is wrapped with [CDATA[]] and you can now use XML symbols.

ReSharper: Convert text to CData context action in XML

Remove tag and promote children

If you restructure your XML document and want to remove a level of nesting, use this context action.

ReSharper: 'Remove tag and promote children' context action in XML

After applying the context action, the buttons tag is removed and all its child tags are promoted one level up.

ReSharper: 'Remove tag and promote children' context action in XML

Collapse empty tag

If a tag doesn't contain any children or text, it can be converted to an empty tag. There is a context action for this purpose as well.

ReSharper: 'Collapse empty tag' context action in XML

After applying the context action, the MiddleName tag is converted to an empty tag.

ReSharper: 'Collapse empty tag' context action in XML

Rearrange code

Rearranging Code Elements is available in XML files. So you can move a tag up or down by pressing Ctrl+Shift+Alt+Up or Ctrl+Shift+Alt+Down. Consider the example below.

ReSharper: Rearranging code in XML

The author tag can be moved down or out of its parent tag, or into some other tag.

ReSharper: Rearranging code in XML

You can also move any attribute within a tag to the left or to the right.

ReSharper: Rearranging code in XML

Place the caret at attribute name and press Ctrl+Shift+Alt+Left or Ctrl+Shift+Alt+Right depending on your goals.

ReSharper: Rearranging code in XML
Last modified: 13 November 2019