def _dump_yaml(applied):
"""
Dumps dict correctly processing multiline pre & postDescription string
:param applied: dict -> filled config ready to be converted to yaml
:return: str -> yaml config
"""
def str_presenter(dumper, data):
# check for multiline strings
if len(data.splitlines()) == 1 and data[-1] == '\n':
return dumper.represent_scalar(
'tag:yaml.org,2002:str', data, style='>')
if len(data.splitlines()) > 1:
return dumper.represent_scalar(
'tag:yaml.org,2002:str', data, style='|')
return dumper.represent_scalar(
'tag:yaml.org,2002:str', data.strip())
yaml.add_representer(unicode, str_presenter)
yaml.add_representer(str, str_presenter)
return yaml.dump(applied, default_flow_style=False, width=1000)
评论列表
文章目录