技術

VSCodeのRainbow CSVがすごすぎる!

最近はCSVやTSVファイルをがっつり触ることが多いです。

このCSV/TSVの編集、参照をVSCodeのRainbow CSVでやるようにしたら、このエクステンションが予想以上にすごくて感動しました。

もうこれがあれば、CSVファイルをExcelで開くことはないでしょう。

VSCode Rainbow CSVを使いこなせれば何ができるのか?

私は最近まで、VSCodeのRainbow CSVはCSVをカラム単位で色分けして、見やすくしてくれるぐらいのエクステンションだと思っていました。

しかし実体は全然違いました。

Rainbow CSVは以下のことができます。

  • VSCodeがベースなので、操作がしやすくビジュアルが秀逸
  • カラム整列が一瞬でできて、エディタでガンガン編集できる
  • SQLライクの操作ができる

凄すぎる機能たち!!

ビジュアルと操作感

まずビジュアルが綺麗です。カラムごとに色分けしてくれ、CSVファイルが一気に見やすくなります。また、VSCodeがベースなのでダークテーマでCSVを触れるので目に優しいです。

データにカーソルを当てるだけで、カラムナンバーやヘッダーを表示してくれます。

上記の画像はカラム数が多くないのであまり変わりないように見えますが、カラム数が増えて横に長くなったとき、この機能はとてもありがたく感じます。
VSCodeなのでAlt+矢印で次々とカーソルの移動ができます。この操作感ゆえ、カラムが膨大なCSVでもExcelより全然操作がしやすくなります。

Align <-> Shrink の変換

コマンドパレットのAlign CSV Columns、もしくはステータスバーのAlignをクリックすれば、半角スペースを入れて、ヘッダーに合わせて整形してくれます。

上記の画像の通り、Alignで整形すれば表のようになり、一気に見やすくなります。個人的にはExcelより見やすいと思います。

この機能のおかげで、編集後カラムがずれてもすぐにAlignすればすぐに表ベースで確認ができるので、ガンガン編集作業ができます。

またステータスバーのShrinkをクリックすれば、元のスペース埋めの状態に戻せるので、編集後の保存も問題なくできます。

RBQL

おそらくRainbow CSVも一番の目玉機能、RBQLというSQLライクの操作ができます。

コマンドパレットでRBQLを選べば、以下のようなDBの表のようになって、下にクエリーの入力欄が出てきます。

SELECTによる必要なカラムのみの抽出、データが多すぎるときはLIMITでのフィルター、WHEREで条件フィルター、ORDER BYでのソートなど自由自在です。元CSVから必要なデータのみのCSVを作成などが簡単にできます。

以下はクエリの実行結果

ここから更にRBQLを開けば、抽出結果に対して更にクエリーを実行できるようになります。

まとめ

以上、VSCodeのRainbow CSVの紹介でした。

このエクステンションの進化を知ってから、CSV、TSVの操作が楽しくなりました。CSV/TSVを扱うときは、VSCode+Rainbow CSV以外の環境は考えられるなりました。Excelでごにょごにょしていた過去の自分はなんと無駄なことのしていたのか思わざるを得ません。