plugin-xml
plugin-xml copied to clipboard
Bug: Double Apostrophe in <value> URI Formatting Issue
Description: I encountered a problem with the @prettier/plugin-xml plugin. When an XML file contains the text:
<value>''</value>
Prettier rewrites it as:
<value>
' '
</value>
This formatting adds an unwanted space between the apostrophes, which disrupts the appearance of our system.
Steps to Reproduce:
- Create an XML file with the following content:
<root> <value>''</value> </root> - Run Prettier with the @prettier/plugin-xml plugin.
- Observe the formatted output.
Expected Behavior:
The content of the <value> tag should remain <value>''</value> without adding spaces.
Actual Behavior:
The content of the <value> tag is rewritten as:
<value>
' '
</value>
Additional Information: In other cases, when there is only one apostrophe, Prettier formats correctly by keeping the line together:
<values>
<field>ITA_IFM_ActivityDescription__c</field>
<value xsi:type="xsd:string">MEDIA COMPLESSITA'</value>
</values>
This leads us to believe it is a minor bug. Could you please provide feedback?
Prettier Configuration:
{
"plugins": ["prettier-plugin-apex", "@prettier/plugin-xml"],
"printWidth": 600,
"singleQuote": true,
"trailingComma": "all",
"bracketSpacing": false,
"useTabs": true,
"bracketSameLine": true,
"apexInsertFinalNewline": false,
"overrides": [
{
"files": "*.{trigger,cls}",
"options": {"parser": "apex"}
},
{
"files": "*.{apex}",
"options": {"parser": "apex-anonymous"}
},
{
"files": "**/lwc/**/*.html",
"options": {"parser": "lwc"}
},
{
"files": "*.{cmp,page,component,evt}",
"options": {
"parser": "html",
"trailingComma": "none"
}
},
{
"files": "**/aura/**/*.js",
"options": {"trailingComma": "none"}
},
{
"files": "**/aura/**/*.{auradoc,design,app}",
"options": {"parser": "angular"}
},
{
"files": "**/*.xml",
"options": {
"parser": "xml",
"useTabs": false,
"tabWidth": 4,
"xmlWhitespaceSensitivity": "preserve",
"embeddedLanguageFormatting": "off",
"xmlSelfClosingSpace": false
}
}
]
}
and this is our package.json
{
"name": "***",
"version": "1.0.0",
"author": "***",
"devDependencies": {
"@prettier/plugin-xml": "^3.4.1",
"prettier": "^3.4.2",
"prettier-plugin-apex": "^2.2.2"
},
"repository": {
"type": "****",
"url": "****"
},
"scripts": {
"prettier": "prettier"
},
"dependencies": {
"sfdx-plugin-source-read": "^1.4.0"
}
}
Thanks in advice, i'm here if you need anything else 😊
Have you news about this bug?
Excuse me, can I at least know if you consider this a bug?
I'm not sure if this is a bug or not. You're setting it to "preserve", which means in some cases we keep the whitespace and in some cases we do not. I will investigate further.
The problem remains, we had to exclude that resource to avoid problems in fact
If you can fix it that would be great!
Hi @kddnewton news on it?