From 92f6d3c91b779207240e3429b477b3b06c1b70a1 Mon Sep 17 00:00:00 2001 From: dota17 Date: Thu, 13 Aug 2020 17:07:32 +0800 Subject: [PATCH] Emit the correct indentation of sequence --- lib/yaml/emitter.py | 9 ++++++--- lib3/yaml/emitter.py | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/yaml/emitter.py b/lib/yaml/emitter.py index 23c25ca80..eb1d56621 100644 --- a/lib/yaml/emitter.py +++ b/lib/yaml/emitter.py @@ -384,7 +384,7 @@ def expect_block_sequence_item(self, first=False): self.state = self.states.pop() else: self.write_indent() - self.write_indicator(u'-', True, indention=True) + self.write_indicator(u'-', True, indention=True, is_sequence=True) self.states.append(self.expect_block_sequence_item) self.expect_node(sequence=True) @@ -805,9 +805,12 @@ def write_stream_end(self): self.flush_stream() def write_indicator(self, indicator, need_whitespace, - whitespace=False, indention=False): + whitespace=False, indention=False, is_sequence=False): if self.whitespace or not need_whitespace: - data = indicator + if is_sequence: + data = u' '*(self.best_indent-2)+indicator + else: + data = indicator else: data = u' '+indicator self.whitespace = whitespace diff --git a/lib3/yaml/emitter.py b/lib3/yaml/emitter.py index a664d0111..599c081fe 100644 --- a/lib3/yaml/emitter.py +++ b/lib3/yaml/emitter.py @@ -379,7 +379,7 @@ def expect_block_sequence_item(self, first=False): self.state = self.states.pop() else: self.write_indent() - self.write_indicator('-', True, indention=True) + self.write_indicator('-', True, indention=True, is_sequence=True) self.states.append(self.expect_block_sequence_item) self.expect_node(sequence=True) @@ -798,9 +798,12 @@ def write_stream_end(self): self.flush_stream() def write_indicator(self, indicator, need_whitespace, - whitespace=False, indention=False): + whitespace=False, indention=False, is_sequence=False): if self.whitespace or not need_whitespace: - data = indicator + if is_sequence: + data = ' '*(self.best_indent-2)+indicator + else: + data = indicator else: data = ' '+indicator self.whitespace = whitespace