diff options
author | Anthon van der Neut <anthon@mnt.org> | 2019-08-15 12:18:08 +0200 |
---|---|---|
committer | Anthon van der Neut <anthon@mnt.org> | 2019-08-15 12:18:08 +0200 |
commit | ff8e03fe5542a9d7930a5720450c59bb9e9eaaf3 (patch) | |
tree | 6f22060b92e421ca0bad2a2df0eb499518c4b07e /parser.py | |
parent | c355613aea4e2045fa5360837bd0b622fb84877b (diff) | |
download | ruamel.yaml-ff8e03fe5542a9d7930a5720450c59bb9e9eaaf3.tar.gz |
preserve directives, optional push root level scalar to own line
You need to set YAML().scalar_after_indicator = False to get a single scalar document
starting on its own line (instead of after the directives end indicator: --- abc")
fixes issue #304
*When this change indeed resolves your problem, please **Close** this issue*.
*(You can do so using the WorkFlow pull-down (close to the top right of this page))*
Diffstat (limited to 'parser.py')
-rw-r--r-- | parser.py | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -219,6 +219,9 @@ class Parser(object): ) token = self.scanner.get_token() end_mark = token.end_mark + # if self.loader is not None and \ + # end_mark.line != self.scanner.peek_token().start_mark.line: + # self.loader.scalar_after_indicator = False event = DocumentStartEvent( start_mark, end_mark, explicit=True, version=version, tags=tags ) # type: Any @@ -295,6 +298,12 @@ class Parser(object): value = self.yaml_version, self.tag_handles.copy() # type: Any else: value = self.yaml_version, None + if self.loader is not None and hasattr(self.loader, 'tags'): + self.loader.version = self.yaml_version + if self.loader.tags is None: + self.loader.tags = {} + for k in self.tag_handles: + self.loader.tags[k] = self.tag_handles[k] for key in self.DEFAULT_TAGS: if key not in self.tag_handles: self.tag_handles[key] = self.DEFAULT_TAGS[key] |