Fix writing values with spaces

This commit is contained in:
Florian Bruhin 2014-03-10 01:10:24 +01:00
parent eca3557df7
commit c229096916
2 changed files with 6 additions and 1 deletions

1
TODO
View File

@ -1,7 +1,6 @@
New config TODO
===============
- Writing _monospace doesn't work correctly (indented too much?)
- How to handle interpolation correctly? Maybe we really should handle interpolation ourselves?
Main problem: When re-writing the value, we don't know about the interpolation anymore, so we write the wrong value.
- Tabbing through setting completion does not work

View File

@ -17,6 +17,7 @@
"""Configuration storage and config-related utilities."""
import re
import os
import os.path
import logging
@ -148,6 +149,11 @@ class Config:
subsequent_indent=' ' * 4,
drop_whitespace=False,
**self._wrapper_args)
# Other than the default TextWrapper would, we want to count a word and
# the whitespace following it as one chunk, so lines will always be
# split *after* whitespace, because whitespace at the beginning of a
# line could confuse configparser. Monkeypatching ftw!
keyval_wrapper.wordsep_simple_re = re.compile(r'(\S+\s*)')
lines = []
for optname, option in section.items():
keyval = '{} = {}'.format(optname, option)