Nouplo

Markdown table

Paste a spreadsheet, get a table that lines up.

Examples temporarily replace the input and settings. You can restore your previous work.

0 characters
Output
Paste or type above to see the result here.

Your files stay on your device

This tool runs entirely in your browser. What you paste is processed on your device and is never sent to a server, so it is safe to use with tokens, keys and unpublished text.

Example

Example: a supported-versions table pasted from a spreadsheet into a README

A maintainer keeps release dates in a spreadsheet: four columns (Version, Released, Supported until, Status) and four rows, and one status reads “End of life | upgrade”, with a pipe in it. They copy the cells, paste them and keep the defaults: separator worked out, first row as the headings, aligned left.

  1. The cells are read as tab-separated: 4 columns and 4 rows.
  2. Every column is padded to its widest cell — Status to the 22 characters of “End of life \| upgrade” — so the pipes line up when the README is opened as plain text.
  3. The pipe in that cell becomes \| so it does not end the row early; the table still shows “End of life | upgrade”.
Align the columns Row under the headings, first column
Left (the default) | :------ |
Centre | :-----: |
Right | ------: |
Do not say | ------- |
Left, with “Do not pad the source” | :-- |

Six lines of Markdown that show as a four-column table in the README and still read as a table in a code editor. With “The first row is the headings” turned off, a row of column_1 … column_4 would be added as headings instead.

How it works

  1. Copy some cells from a spreadsheet and paste them here — that is a tab-separated table, and it is worked out automatically.
  2. Choose whether the first row is the headings.
  3. Pick an alignment. It goes in the row of dashes, where Markdown expects it.
  4. Copy the table into your README, issue or wiki.

Frequently asked questions

Why is the output padded with spaces?
So the Markdown source lines up as a table when you look at it in an editor. It renders identically either way — the padding is for the human reading the file. Turn it off if the file is only ever read rendered.
Does the padding work with Japanese text?
Yes, and this is the part most generators get wrong. A CJK character occupies two columns in a monospaced font, so it is counted as two — otherwise a table with any Japanese in it comes out ragged.
What happens to a pipe inside a cell?
It is escaped as \|, which is what Markdown needs, and a line break inside a cell becomes <br>. Otherwise either would end the row early.
Can I go the other way?
Not here. Our CSV and JSON converters handle the usual directions between data formats.
Can I paste CSV instead of spreadsheet cells?
Yes. “Work it out” recognises commas, tabs and semicolons, and a quoted field keeps its comma: "Team, annual",£120 gives a cell reading Team, annual. Choose the separator yourself if the guess is wrong.
What if my data has no heading row?
Turn off “The first row is the headings”. Markdown needs a heading row, so one is added — column_1, column_2 and so on — and your first row stays with the data. Rename the headings in the result.
Is anything sent to a server?
No. It runs in your browser, so what you paste stays on your computer.

Related tools