2 namespace Consolidation\OutputFormatters\Formatters;
4 use Consolidation\OutputFormatters\Validate\ValidDataTypesInterface;
5 use Consolidation\OutputFormatters\Options\FormatterOptions;
6 use Consolidation\OutputFormatters\Transformations\TableTransformation;
7 use Consolidation\OutputFormatters\Exception\IncompatibleDataException;
8 use Symfony\Component\Console\Output\OutputInterface;
11 * Tab-separated value formatters
13 * Display the provided structured data in a tab-separated list. Output
14 * escaping is much lighter, since there is no allowance for altering
17 class TsvFormatter extends CsvFormatter
19 protected function getDefaultFormatterOptions()
22 FormatterOptions::INCLUDE_FIELD_LABELS => false,
26 protected function writeOneLine(OutputInterface $output, $data, $options)
28 $output->writeln($this->tsvEscape($data));
31 protected function tsvEscape($data)
33 return implode("\t", array_map(
35 return str_replace(["\t", "\n"], ['\t', '\n'], $item);