Рассмотрим следующий Yaml, который определяет фиксированный отступ из двух пробелов:
yaml: >-2
First line
will fold.
Second line
should fold
as well.
Который десериализуется в:
{
"yaml": "First line will fold.\nSecond line should fold as well."
}
Текст результата складывается должным образом. Есть только две отдельные строки (символ новой строки можно найти между словами «fold.» И «Second»).
Теперь, если перед словом «Second» добавлены дополнительные пробелы, складной лог c ломается. Предположим, что это дополнительное пространство является частью самого текста, а не частью отступа Yaml (поскольку последнее было зафиксировано на двух пробелах):
yaml: >-2
First line
will fold.
Second line
should fold
as well.
Это десериализуется в:
{
"yaml": "First line will fold.\n\n Second line\nshould fold as well."
}
Теперь генерируются три отдельные строки, и первая содержит два последовательных символа новой строки, что является неожиданным.
Можно ли добавить некоторый дополнительный отступ в текстовые блоки Yaml (отступ, который является частью текстовых данных, не являющихся частью отступа Ямла), не нарушая сворачивания логи c?