1
0
Fork 0
cli-helpers/cli_helpers/tabular_output/tsv_output_adapter.py
Daniel Baumann 95bca6b33d
Merging upstream version 2.2.0.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2025-02-07 00:48:48 +01:00

17 lines
596 B
Python

# -*- coding: utf-8 -*-
"""A tsv data output adapter"""
from __future__ import unicode_literals
from .preprocessors import bytes_to_string, override_missing_value, convert_to_string
from itertools import chain
from cli_helpers.utils import replace
supported_formats = ("tsv",)
preprocessors = (override_missing_value, bytes_to_string, convert_to_string)
def adapter(data, headers, **kwargs):
"""Wrap the formatting inside a function for TabularOutputFormatter."""
for row in chain((headers,), data):
yield "\t".join((replace(r, (("\n", r"\n"), ("\t", r"\t"))) for r in row))