Python のライブラリ「 csvtomd 」をご紹介します。
$ pip3 install csvtomd
csvtomd は「 CSV を Markdown のテーブルに変換」するツールです。名前そのままですね。プログラムの中で import して使用するものではなく、ターミナル上で利用できるコマンドを提供してくれます。 Python のコードを書かなくても日頃 Markdown を使う方であれば利用することができます。
コマンド名はそのまま「 csvtomd 」です。
インストール
インストール方法は pip でそのままインストールします。 Python 3 にのみ対応しているとのことで、公式では pip3
でのインストールコマンドが紹介されています。
$ pip3 install csvtomd
使い方
使い方はシンプルで、対象となる CSV のファイル名を引数に渡すだけです。 CSV を解釈し Markdown 化したテーブルを出力してくれます。日本語にもばっちり対応しています。
$ # 対象の CSV を確認
$ cat analysis.csv
名前,鼻,爪
犬,◯,出しっぱなし
猫,△,収納可
人間,×,出しっぱなし
$ # csvtomd で CSV を Markdown に変換
$ csvtomd analysis.csv
名前 | 鼻 | 爪
----|-----|--------
犬 | ◯ | 出しっぱなし
猫 | △ | 収納可
人間 | × | 出しっぱなし
変換対象のファイルは複数受け取ることも可能です。
利用可能なオプションは次のとおりです。
- -h --help: ヘルプを表示する。
- -n --no-filenames: 複数の Markdown テーブルを出力する際にファイル名を表示しない。
- -p --padding: パディングの半角スペースの数を整数で指定する。デフォルトは 2 。
- -d --delimiter: 区切り文字を指定。デフォルトは , 。
以上です。
私はここ数年、仕事をしている日はほぼ毎日 Markdown を触りますが、 Markdown ではテーブルの編集が大変で・・・なかなかテーブルを使いたくありません。テーブルについてはスプレッドシートツールを使う方がずっとかんたんなので、テーブルについてはあえてひと手間入れて「スプレッドシートで編集 → csvtomd などで Markdown 化 → Markdown に貼り付け」の形がよいなぁと思います。