tabulate

Tabulate array of array data.

Parameters

data T[][]

An array of array of string compatible data

headers string[]

Headers for each columns

config Config

A configuration to set appearance

Return Value

Type: string

The table string

Examples

const testdata = [
    ["D-man", "Programming Language"],
    ["D言語くん", "プログラミング言語"],
];
const headers = ["マスコットキャラクタ", "about"];
const reference =
    " マスコットキャラクタ          about         \n" ~
    "---------------------- ----------------------\n" ~
    "        D-man           Programming Language \n" ~
    "      D言語くん          プログラミング言語  ";
assert(tabulate(testdata, headers, Config(Style.simple, Align.center, true)) == reference);
const testdata = [
    ["D-man", "Programming\nLanguage"],
    ["D言語\nくん", "プログラミング言語"],
];
const headers = ["マスコットキャラクタ", "about"];
import std;

assert(tabulate(testdata, headers, Config(Style.simple, Align.center, true)) ==
        " マスコットキャラクタ         about        \n" ~
        "---------------------- --------------------\n" ~
        "        D-man              Programming     \n" ~
        "                             Language      \n" ~
        "        D言語           プログラミング言語 \n" ~
        "         くん                              "
);

assert(tabulate(testdata, headers, Config(Style.markdown, Align.center, true)) ==
        "| マスコットキャラクタ |          about          |\n" ~
        "|----------------------|-------------------------|\n" ~
        "|        D-man         | Programming<br>Language |\n" ~
        "|    D言語<br>くん     |   プログラミング言語    |"
);

Meta