-
-
Notifications
You must be signed in to change notification settings - Fork 105
Open
Description
upd: or maybe it's because
Copy and reassign breaks the structure
Then the question is how to avoid breaking the structure on copy
I'm using whitespace to vertically align some toml config and when editing said config with your great library noticed that alignment disappears, below is a small repro
content = """
[keys.a]
# ↓ this whitespace disappears
[keys .'a'.'c']
'd' = 'e'
"""
def testtoml():
from tomlkit import dumps
from tomlkit import parse
doc = parse(content)
for mode in doc["keys"]: # self to self shouldn't change anything?
doc["keys"][mode] = doc["keys"][mode]
assert dumps(doc) == doc
# print(dumps(doc))
testtoml()
It seems that the latter whitespace matches the first encountered in [keys.a]
(if I add whitespace to [keys.a]
then it propagates to further as well
Is it possible to preserve the difference in whitespace so that editing wouldn't "import" whitespace from upper keys, but retain its own?
(tested this on a master branch of your library)
Metadata
Metadata
Assignees
Labels
No labels