Odoo Shortcuts includes a specialized XML formatter for Odoo files.

record, menuitem, template{
"odooShortcuts.formatter.tabSize": 4,
"odooShortcuts.formatter.splitAttributes": false,
"odooShortcuts.formatter.splitAttributesTags": [],
"odooShortcuts.formatter.emptyElementHandling": "selfClosing",
"odooShortcuts.formatter.maxLineLength": 120,
"odooShortcuts.formatter.sortAttributes": false,
"odooShortcuts.formatter.closeTagOnNewLine": false,
"odooShortcuts.formatter.preserveComments": true,
"odooShortcuts.formatter.odooTagSpacing": true,
"odooShortcuts.formatter.odooSpacingTags": [
"record",
"menuitem",
"template"
],
"odooShortcuts.formatter.excludePatterns": [
"**/odoo/**",
"**/enterprise/**"
]
}
<record id="res_partner_form" model="ir.ui.view"><field name="name">res.partner.form</field><field name="model">res.partner</field><field name="arch" type="xml"><form><sheet><group><field name="name"/><field name="email"/></group></sheet></form></field></record>
<record id="res_partner_form" model="ir.ui.view">
<field name="name">res.partner.form</field>
<field name="model">res.partner</field>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<field name="name"/>
<field name="email"/>
</group>
</sheet>
</form>
</field>
</record>
<!-- With splitAttributes: true -->
<field
name="partner_id"
widget="many2one"
options="{'no_create': True}"
/>
Shortcut: Shift+Alt+F (Windows/Linux) or Shift+Option+F (Mac)
Command: Format Document
The following tags have blank line before them by default:
record - Record definitionsmenuitem - Menu itemstemplate - QWeb templatesThis improves readability in large XML files.
Files matching patterns in excludePatterns will not be formatted.
Next: Configuration