Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/anthonyaxenov/csv2md

Stupidly simple tool to convert csv/tsv to markdown table
https://github.com/anthonyaxenov/csv2md

converter csv golang linux macos markdown md windows

Last synced: 5 days ago
JSON representation

Stupidly simple tool to convert csv/tsv to markdown table

Awesome Lists containing this project

README

        

# csv2md

Stupidly simple tool to convert csv/tsv to [markdown](https://spec-md.com/) table.

Prints result in stdout.

```
Usage:
csv2md [-help|--help] [-f=] [-h=] [-t] [-a]

Available arguments:
-help|--help - show this help
-f= - convert specified FILE
-h= - add main header (h1) to result
-t - convert input as tsv
-a - align columns width

FILE formats supported:
- csv (default)
- tsv (with -t flag)

Path to FILE may be presented as:
- absolute
- relative to current working directory
- relative to user home directory (~)

Both HEADER and FILE path with whitespaces must be double-quoted.
To save result as separate file you should use redirection operators (> or >>).
```

**IMPORTANT:**
1. Input data must be valid csv/tsv
2. Whitespaces allowed only between double-quotes
3. Due to markdown spec first line of result table will always be presented as header.
So if your raw data hasn't one you'll should add it before conversion or edit later in ready md.

## Examples

```
csv2md - paste or type csv to stdin and then
press Ctrl+D to view result in stdout
csv2md -t > example.md - paste or type tsv to stdin and then
press Ctrl+D to write result in new file
csv2md -f example.csv - convert csv from file and view result in stdout
csv2md -t < example.tsv - convert tsv from stdin and view result in stdout
csv2md -t < example.tsv > example.md - convert tsv from stdin and write result in new file
cat example.csv | csv2md - convert csv from stdin and view result in stdout
csv2md -t -f=example.tsv > example.md - convert tsv from file and write result in new file
csv2md -f example.csv | less - convert csv from file and view result in stdout using pager
csv2md -f example.csv | code -n - - convert csv from file and open result in vscode

...anything is possible with redirection and piping, inc. grep, sed, awk, etc.
```

You can generate some examples here: [csv](https://onlinerandomtools.com/generate-random-csv), [tsv](https://onlinerandomtools.com/generate-random-tsv)

## Compilation

1) [Install go](https://go.dev/learn/).
2) Download this repo via zip or `git clone`.
3) Run `make help` to get help about compilation or `go run . [ARGS...]` to build and run temporary binary.

## License

[MIT](LICENSE)