Recipes
The sheet is plain text, so everything that already speaks text speaks tsvsheet. Verified walkthroughs for piping sheets through databases, desktop and web spreadsheets, and charting tools — in both directions.
Databases
A rendered sheet is a table. Import it, query it, join it — and turn query results back into living sheets.
| SQLite | sqlite3 imports tab-separated values natively, so a rendered sheet is one pipe away from being a queryable table — and a query result is one formula row away from being a sheet again. |
|---|---|
| DuckDB | DuckDB queries tab-separated files in place — no schema, no import step. A rendered sheet is a table the moment the pipe connects, with column types sniffed for free. |
| PostgreSQL | PostgreSQL's COPY text format is tab-separated — a rendered sheet is already a valid COPY stream, and a COPY out is already a sheet. The two formats were made for each other; they just didn't know it. |
Desktop & web spreadsheets
TSV is the lingua franca of spreadsheet clipboards and exports — tsvsheet speaks it natively, in both directions.
| Excel | The clipboard interchange format between spreadsheet apps is tab-separated values. Copy a range in Excel and TSV is what's on your clipboard — one paste away from being a .tsvt. |
|---|---|
| Google Sheets | Google Sheets exports any tab as TSV over a plain URL, and tsvsheet's import functions drink it directly — while Sheets' IMPORTDATA pulls rendered tsvsheet output the other way. Two spreadsheets, one wire format, both directions live. |
Charts
Computed output is plain TSV: chart it in the terminal, in the browser, or in the grid itself.
| Charts | Computed output is plain TSV — the input format charting tools have eaten for decades. Plot a sheet in the terminal, render it to SVG, load it in the browser, or draw the chart inside the grid itself. |
|---|
Markup & docs
A computed sheet freezes into a portable Markdown table — commit it to a README, a wiki, or a docs site and it renders anywhere, no engine attached.
| Markdown | A computed sheet freezes into a GitHub-flavored Markdown table — one command, and results that render in any README, wiki, or docs site with no engine attached. |
|---|
Every command on these pages ran for real before it was published — against the sheets in tsvsheet.examples, which each carry a Try link into the playground. Looking for the language itself? Start with the function reference or the specification.