Preserve empty-element formatting across versions
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
Direzione di ricerca
Riproduci il comportamento in XmlNotepad abilitando „Auto Format on Save“ e salvando XML contenente un elemento vuoto in entrambe le rappresentazioni supportate. Segui il percorso della formattazione al salvataggio partendo da questa riproduzione e determina come la versione corrente sceglie la rappresentazione. Il lavoro è completato quando salvataggi ripetuti e aggiornamenti non introducono una formattazione incoerente degli elementi vuoti e il comportamento è coperto da un test di regressione appropriato, se il progetto ne fornisce uno.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
When editing XML files with XmlNotepad and using Auto Format on Save, the representation of empty elements may change between versions.
For example, an empty element originally written as:
<Read Key="x" />
may be rewritten as:
<Read Key="x"></Read>
Both forms are semantically equivalent XML, so this is not a functional issue. However, it creates unnecessary noise in source control systems such as Git, especially in repositories where XML files are frequently reviewed and compared.
Expected behavior
When Auto Format on Save is enabled, XmlNotepad should preserve a consistent representation of empty elements.
Possible approaches:
-
Preserve the original style already present in the document.
-
Provide a formatting option allowing users to choose between:
- Self-closing tags (
<Tag />) - Explicit opening/closing tags (
<Tag></Tag>)
- Self-closing tags (
-
At minimum, avoid changing the formatting style between XmlNotepad versions.
Actual behavior
After upgrading XmlNotepad, saving an XML document may rewrite empty elements using a different representation than previous versions, generating large diffs with no semantic changes.
Why this matters
In environments where XML files are stored in Git:
- Reviews become harder because diffs contain formatting-only changes.
- Merges may become noisier.
- Upgrading the editor can unexpectedly modify many files.
The formatting style itself is not important; consistency is.
- Lingua principale
- C#
- Stelle
- 1.2k
- Fork
- 240
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/XmlNotepad
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 56/100
microsoft/XmlNotepad#542 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 54/100
microsoft/XmlNotepad#541 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
microsoft/XmlNotepad#532 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
microsoft/XmlNotepad#517 · 6 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
microsoft/XmlNotepad#499 · 1 commento ·
Tutte le issue di microsoft/XmlNotepad
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
Esri/calcite-dotnet-toolkit#30 · 1 reazione ·
-
VideoViewer: rotated (portrait phone) videos shown sideways when system decimal separator is a commaAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
security
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
MorganHacks/Arctic#182 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Volodymyr-Petrunin/Bankomaten#45 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
thekid/inotify-win#45 ·