summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2018-03-17 11:40:40 +0200
committerLars Wirzenius <liw@liw.fi>2018-03-17 11:40:40 +0200
commitdc2fa39e2545d648ac1da509cb78f1dc46d2ee5a (patch)
tree630153e0d7239b99fa488539d399dc3a0453cf45
parent5eea744d11fd391e0cea5bfe39b145c0b7998e5d (diff)
parente302233956c4d6b83392b57c455fc596f1e7a00e (diff)
downloadextrautils-dc2fa39e2545d648ac1da509cb78f1dc46d2ee5a.tar.gz
Merge branch 'liw/prettyml'
-rwxr-xr-xprettyml15
1 files changed, 13 insertions, 2 deletions
diff --git a/prettyml b/prettyml
index f4fbb5e..e15b3b2 100755
--- a/prettyml
+++ b/prettyml
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python3
import sys
@@ -12,7 +12,18 @@ def inputs(args):
else:
yield '-', sys.stdin
+
+def string_representer(dumper, data):
+ style = None
+ if '\n' in data:
+ style = '|'
+ return dumper.represent_scalar('tag:yaml.org,2002:str', data, style=style)
+
+
+yaml.add_representer(str, string_representer, Dumper=yaml.SafeDumper)
+
+
objs = []
for filename, f in inputs(sys.argv[1:]):
- objs.append(yaml.safe_load(f))
+ objs.append(yaml.load(f, Loader=yaml.CSafeLoader))
yaml.safe_dump_all(objs, stream=sys.stdout, indent=4, default_flow_style=False)