From 750c8d3e285d58fa285af692c1b8d88e2e75a582 Mon Sep 17 00:00:00 2001 From: NotAFile Date: Wed, 29 Sep 2021 17:37:36 +0200 Subject: [PATCH] add non-raw jq option --- hellpipe/mappers.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/hellpipe/mappers.py b/hellpipe/mappers.py index 228214c..5473fd3 100644 --- a/hellpipe/mappers.py +++ b/hellpipe/mappers.py @@ -98,10 +98,16 @@ class JqMapper(AbstractMapper): return ["json", "bytes"] def generate(self, input_name: str, output_formats: List[str]) -> ShellMapping: - # TODO: remove join hack with proper datatype analysis - code = dedent(f"""\ - filtered = "\\n".join(jq.all({self._parsed.filter!r}, text={input_name})) - """) + if self._parsed.raw_output: + # TODO: remove join hack with proper datatype analysis + code = dedent(f"""\ + filtered = "\\n".join(jq.all({self._parsed.filter!r}, text={input_name})) + """) + else: + code = dedent(f"""\ + filtered = jq.text({self._parsed.filter!r}, text={input_name}) + """) + return ShellMapping(code=code, output_name="filtered", output_format="str", input_format="", imports=["import jq"])