JetBrains Rider 2018.1 Help

XML - Formatting Style

Tabs and Indents

Indent style

Property names:

xml_indent_style, indent_style

Possible values:

  • tab: Tab
  • space: Spaces

Examples:

tab
<tag1><tag2> →→text →</tag2> </tag1>
space
<tag1> ····<tag2> ········text ····</tag2> </tag1>

Indent size

Property names:

xml_indent_size, indent_size

Possible values:

an integer

Examples:

value: 0
<tag1> ·<tag2> ··text ·</tag2> </tag1>
value: 1
<tag1> ·<tag2> ··text ·</tag2> </tag1>
value: 2
<tag1> ··<tag2> ····text ··</tag2> </tag1>

Tab width

Property names:

xml_tab_width, tab_width

Possible values:

an integer

Examples:

value: 0
<tag1><tag2> →→text →</tag2> </tag1>
value: 1
<tag1><tag2> →→text →</tag2> </tag1>
value: 2
<tag1><tag2> →→text →</tag2> </tag1>

How to align when tabs are used for indents

Property names:

[resharper_]xml_alignment_tab_fill_style, [resharper_]alignment_tab_fill_style

Possible values:

  • use_spaces: Use spaces (looks aligned on any tab size)
  • use_tabs_only: Only use tabs (inaccurate)
  • optimal_fill: Mix tabs and spaces for optimal fill

Line Wrapping

Right margin (columns)

Property names:

xml_max_line_length, max_line_length

Possible values:

an integer

Wrap tags and processing instructions

Property names:

[resharper_]xml_wrap_tags_and_pi, [resharper_]wrap_tags_and_pi

Possible values:

true | false

Examples:

Before formattingAfter formatting, true
<tag·attr1='1234567890'·attr2='1234567890'/>
<tag·attr1='1234567890' ·····attr2='1234567890'·/>
Before formattingAfter formatting, false
<tag·attr1='1234567890'·attr2='1234567890'/>
<tag·attr1='1234567890'·attr2='1234567890'·/>

Processing Instructions

Spaces around '=' in attribute

Property names:

[resharper_]xml_spaces_around_eq_in_pi_attribute, [resharper_]spaces_around_eq_in_pi_attribute

Possible values:

true | false

Examples:

true
<?xml·version·=·'1.0'·encoding·=·'utf-8'?>
false
<?xml·version='1.0'·encoding='utf-8'?>

Space after last attribute

Property names:

[resharper_]xml_space_after_last_pi_attribute, [resharper_]space_after_last_pi_attribute

Possible values:

true | false

Examples:

true
<?xml·version='1.0'·encoding='utf-8'·?>
false
<?xml·version='1.0'·encoding='utf-8'?>

Attributes format

Property names:

[resharper_]xml_pi_attribute_style, [resharper_]pi_attribute_style

Possible values:

  • on_single_line: On single line
  • first_attribute_on_single_line: First attribute on single line
  • on_different_lines: Each attribute on separate lines
  • do_not_touch: Do not touch

Examples:

on_single_line
<?xml·version='1.0'·encoding='utf-8'?>
first_attribute_on_single_line
<?xml·version='1.0' ······encoding='utf-8'?>
on_different_lines
<?xml ··version='1.0' ··encoding='utf-8'?>
do_not_touch
<?xml·version='1.0'·encoding='utf-8'?>

Attributes indenting

Property names:

[resharper_]xml_pi_attributes_indent, [resharper_]pi_attributes_indent

Possible values:

  • single_indent: Single indent
  • double_indent: Double indent
  • align_by_first_attribute: Align by first attribute

Examples:

single_indent
<?xml·version='1.0' ··encoding='utf-8'?>
double_indent
<?xml·version='1.0' ····encoding='utf-8'?>
align_by_first_attribute
<?xml·version='1.0' ······encoding='utf-8'?>

Blank line after processing instructions

Property names:

[resharper_]xml_blank_line_after_pi, [resharper_]blank_line_after_pi

Possible values:

true | false

Examples:

true
<?xml·version='1.0'·encoding='utf-8'?> <a·/>
false
<?xml·version='1.0'·encoding='utf-8'?> <a·/>

Inside of Tag Header

Spaces around '=' in attribute

Property names:

[resharper_]xml_spaces_around_eq_in_attribute, [resharper_]spaces_around_eq_in_attribute

Possible values:

true | false

Examples:

true
<a·x·=·'1'·y·=·'2'·z·=·'3'·/>
false
<a·x='1'·y='2'·z='3'·/>

Space after last attribute

Property names:

[resharper_]xml_space_after_last_attribute, [resharper_]space_after_last_attribute

Possible values:

true | false

Examples:

true
<a·x='1'·y='2'·z='3'·>text</a>
false
<a·x='1'·y='2'·z='3'>text</a>

Space before '/>'

Property names:

[resharper_]xml_space_before_self_closing, [resharper_]space_before_self_closing

Possible values:

true | false

Examples:

true
<a·/>
false
<a/>

Attributes format

Property names:

[resharper_]xml_attribute_style, [resharper_]attribute_style

Possible values:

  • on_single_line: On single line
  • first_attribute_on_single_line: First attribute on single line
  • on_different_lines: Each attribute on separate lines
  • do_not_touch: Do not touch

Examples:

on_single_line
<a·x='1'·y='2'·z='3'·/>
first_attribute_on_single_line
<a·x='1' ···y='2' ···z='3'·/>
on_different_lines
<a ··x='1' ··y='2' ··z='3'·/>
do_not_touch
<a·x='1'·y='2'·z='3'·/>

Attributes indenting

Property names:

[resharper_]xml_attribute_indent, [resharper_]attribute_indent

Possible values:

  • single_indent: Single indent
  • double_indent: Double indent
  • align_by_first_attribute: Align by first attribute

Examples:

single_indent
<a·x='1' ··y='2' ··z='3'·/>
double_indent
<a·x='1' ····y='2' ····z='3'·/>
align_by_first_attribute
<a·x='1' ···y='2' ···z='3'·/>

Tag Content

Keep existing line breaks

Property names:

[resharper_]xml_keep_user_linebreaks, [resharper_]keep_user_linebreaks

Possible values:

true | false

Examples:

Before formattingAfter formatting, true
<summary> text more·text </summary>
<summary> ··text ··more·text </summary>
Before formattingAfter formatting, false
<summary> text more·text </summary>
<summary>text·more·text</summary>

Line breaks after start-tag and before end-tag in multiline elements

Property names:

[resharper_]xml_linebreaks_inside_tags_for_multiline_elements, [resharper_]linebreaks_inside_tags_for_multiline_elements

Possible values:

true | false

Examples:

true
<tag> ··text·text·text ··Text·text·text·text·text·text·text·text·text </tag>
false
<tag>text·text·text ··Text·text·text·text·text·text·text·text·text</tag>

Line breaks after start-tag and before end-tag in elements that contain other elements and no text

Property names:

[resharper_]xml_linebreaks_inside_tags_for_elements_with_child_elements, [resharper_]linebreaks_inside_tags_for_elements_with_child_elements

Possible values:

true | false

Examples:

true
<tag> ··<othertag>text</othertag> </tag>
false
<tag><othertag>text</othertag></tag>

Line breaks after start-tag and before end-tag when element is longer than

Property names:

[resharper_]xml_linebreaks_inside_tags_for_elements_longer_than, [resharper_]linebreaks_inside_tags_for_elements_longer_than

Format·long·tags·like·this: <tag> ··content </tag>

Possible values:

an integer

Spaces after start-tag and before end-tag otherwise

Property names:

[resharper_]xml_spaces_inside_tags, [resharper_]spaces_inside_tags

Possible values:

true | false

Examples:

true
<tag>·Text·text·text·text·text·text·text·text·text·</tag>
false
<tag>Text·text·text·text·text·text·text·text·text</tag>

Wrap inside text

Property names:

[resharper_]xml_wrap_text, [resharper_]wrap_text

Possible values:

true | false

Examples:

Before formattingAfter formatting, true
<tag> ··Text·text·text·text·text·text·text·text·text </tag>
<tag> ··Text·text·text·text·text ··text·text·text·text </tag>
Before formattingAfter formatting, false
<tag> ··Text·text·text·text·text·text·text·text·text </tag>
<tag> ··Text·text·text·text·text·text·text·text·text </tag>

Wrap before and after elements

Property names:

[resharper_]xml_wrap_around_elements, [resharper_]wrap_around_elements

Possible values:

true | false

Examples:

Before formattingAfter formatting, true
<tag> ··Text·text·text·text·text·<tag/>·text·text·text </tag>
<tag> ··Text·text·text·text·text ··<tag·/>·text·text·text </tag>
Before formattingAfter formatting, false
<tag> ··Text·text·text·text·text·<tag/>·text·text·text </tag>
<tag> ··Text·text·text·text·text·<tag·/>·text·text·text </tag>

Indent inside element that doesn't contain text

Property names:

[resharper_]xml_indent_child_elements, [resharper_]indent_child_elements

Possible values:

  • do_not_touch: Do not change indenting
  • one_indent: One indent from parent element
  • zero_indent: No indent from parent element
  • remove_indent: No indent at all

Examples:

do_not_touch
<toplevel> <summary> <tag·/> ······················<tag·/> </summary> </toplevel>
one_indent
<toplevel> ··<summary> ····<tag·/> ····<tag·/> ··</summary> </toplevel>
zero_indent
<toplevel> <summary> <tag·/> <tag·/> </summary> </toplevel>
remove_indent
<toplevel> <summary> <tag·/> <tag·/> </summary> </toplevel>

Indent inside element that contain text

Property names:

[resharper_]xml_indent_text, [resharper_]indent_text

Possible values:

  • do_not_touch: Do not change indenting
  • one_indent: One indent from parent element
  • zero_indent: No indent from parent element
  • remove_indent: No indent at all

Examples:

do_not_touch
<toplevel> ··<summary> text1 ······················text2 ··</summary> </toplevel>
one_indent
<toplevel> ··<summary> ····text1 ····text2 ··</summary> </toplevel>
zero_indent
<toplevel> ··<summary> ··text1 ··text2 ··</summary> </toplevel>
remove_indent
<toplevel> ··<summary> text1 text2 ··</summary> </toplevel>

Around Tags

Maximum blank lines between tags

Property names:

[resharper_]xml_max_blank_lines_between_tags, [resharper_]max_blank_lines_between_tags

Maximum·blank·lines·between·tags

Possible values:

an integer

Place multiline elements on new line

Property names:

[resharper_]xml_linebreak_before_multiline_elements, [resharper_]linebreak_before_multiline_elements

Possible values:

true | false

Examples:

true
<exception> ··Text ··<tag> ····text ··</tag> ··text </exception>
false
<exception> ··Text·<tag> ····text ··</tag>·text </exception>

Place singleline elements on new line

Property names:

[resharper_]xml_linebreak_before_singleline_elements, [resharper_]linebreak_before_singleline_elements

Possible values:

true | false

Examples:

true
<exception> ··See ··<see·cref="something"·/> ··for·more·info </exception>
false
<exception> ··See·<see·cref="something"·/>·for·more·info </exception>

Other

Line feed at end of file

Property names:

xml_insert_final_newline, insert_final_newline

Possible values:

true | false

Last modified: 20 August 2018