はじめに

← 目次

インストール

TableSkim は必要なライブラリをすべて組み込んだネイティブパッケージとして配布しているので、ほかに何もインストールする必要はありません。

プラットフォームパッケージ
Linux.deb(Ubuntu 24.04 以降)、.rpm(RHEL 10 とその互換ディストリビューション)、またはどのディストリビューションでも動く .zip
macOS.dmg ディスクイメージ、または TableSkim.app を含む .zip
Windowsインストーラー(.exe)、.zip

.deb と .rpm は Ubuntu 24.04 と Rocky Linux 10 でビルドしているため、それと同じかより新しいディストリビューションにしかインストールできません。ほかのディストリビューションや古いもの(glibc 2.28 以降:RHEL 8、Debian 10、Ubuntu 20.04 以降)では Linux 用の ZIP を使ってください。インストールは不要で、好きな場所に展開して中の bin/tableskim を実行します。

ZIP内容
tableskim-<version>-Linux-x86_64.zipGUI(Wayland と X11)とターミナル UI
tableskim-<version>-Linux-x11-x86_64.zipX11 専用の GUI(Wayland のライブラリが不要)とターミナル UI
tableskim-tui-<version>-Linux-x86_64.zipターミナル UI のみ(デスクトップのないサーバー向け)

macOS 版は開発元の証明書で署名していないため、初回は macOS が許可を求めます。TableSkim.app を Control キーを押しながらクリック(右クリック)して 開く を選ぶか、システム設定 → プライバシーとセキュリティ で許可してください。「壊れている」と表示されるときは、ターミナルでダウンロードの印を外します。

xattr -dr com.apple.quarantine /Applications/TableSkim.app

Web アプリ は tableskim-<version>-web.zip です。Web サーバーに置く静的なファイルのフォルダで、開いた人のブラウザの中で TableSkim が動きます。Web アプリの使い方 を参照してください。

自分でビルドする場合は README の Building の節を参照してください。

各プラットフォームでの tableskim コマンド

このマニュアル

このマニュアルは TableSkim に同梱されています。GUI では Help → User Manual(F1)で開けます。また、Web ブラウザで読める HTML 版もインストールされるので、ターミナル UI を使うときに便利です。

プラットフォーム場所
Linux/usr/share/doc/tableskim/html/README.html(ZIP では share/doc/tableskim/html/README.html)
macOS.dmg または .zip 内の、TableSkim.app の隣にある Manual フォルダ
Windowsインストール先フォルダの Manual\README.html。インストーラーはスタートメニューに TableSkim User Manual も追加します

TableSkim の起動

tableskim [オプション] [ファイル...]

GUI では File → Open...(Ctrl+O)からもファイルを開けます。macOS では、アプリケーションのアイコンにファイルをドロップするか、Finder の「このアプリケーションで開く」を使うこともできます。

tableskim sales.xlsx               # GUI(画面がなければ TUI)
tableskim a.csv b.parquet          # GUI のウィンドウを 2 つ開く
tableskim -t data.csv.gz           # ターミナル UI
tableskim --encoding cp932 old.csv # Shift_JIS の CSV ファイルを読む

コマンドラインオプション

オプション説明
-t, --tuiグラフィカルな画面が使えてもターミナル UI を使う
--encoding <名前>CSV / TSV ファイルの文字コード:auto(既定)、utf-8、utf-16le、utf-16be、cp932(shift_jis)
--header <指定>CSV / TSV ファイルや Excel シートの先頭行が列名かどうか:auto(既定)、yes、no
--log <ファイル>ログメッセージをファイルに書き出す
-v, --verbose詳細(デバッグ)ログを有効にする
-V, --versionバージョン情報を表示して終了する
-h, --helpオプションの一覧を表示して終了する

ターミナル UI は、ログメッセージが画面に重なって表示されないよう、--log を指定したときだけログを書き出します。

概要の出力

--summary と --head は、ウィンドウを開かずに各ファイルの概要を標準出力に書き出して終了します。スクリプトやパイプライン、AI エージェントからファイルの中身をすばやく確かめるのに使えます。圧縮された CSV ファイルも含め、TableSkim で開けるファイルならどれでも使えます。

tableskim --summary data.xlsx               # 列、統計量、先頭 10 行
tableskim --head 20 data.csv.gz             # 列と先頭 20 行
tableskim --summary --format json db.duckdb # 同じ内容を JSON で
tableskim --summary --sheet Sales book.xlsx # 1 つのシートだけ

シートごとに次の内容を出力します。

CSV / TSV ファイルや Excel シートの先頭行は、ウィンドウと同じく、見出しらしく見えれば列名として扱います(上の --header)。

オプション説明
--summary列とその型・統計量、先頭の行を出力する
--head <N>列と先頭 N 行を出力する(--summary と一緒なら 10 行の代わりに N 行)
--format <形式>markdown(既定)または json
--sheet <名前>このシートだけ(複数回指定できる)
--scan-rows <N>統計量を先頭 N 行だけで計算する

Markdown のセルは 80 バイトで切り詰めます。JSON はすべての値をそのまま書き出します。数値と真偽値はそのまま、日付と日時は ISO 形式の文字列、空のセルは null です。ファイルごとに file、encoding(テキストファイルのみ)、sheets を持つオブジェクトになり、各シートは name、rows、rows_exact、columns(name、type、stats)と、行の配列である head を持ちます。複数のファイルを指定するとオブジェクトの配列になります。読めないファイルやシートがあると、そのオブジェクトに error が入り、エラーは標準エラー出力にも書き出され、終了ステータスは 1 になります。

最初の画面

ウィンドウには表が表示され、左に行番号、上に列見出しが並びます。行は読み込まれたそばから表示されるので、大きなファイルの読み込み中でもスクロール、並べ替え、検索ができます。

GUI で CSV ファイルを開いたところ

CSV / TSV ファイルや Excel シートの先頭行は、見出しらしく見えれば(すべてのセルが空でない文字列で、同じ値がない)列名として扱います。そうでなければデータとして表示し、列名は表計算ソフトと同じく A、B、C… になります。判定が違うときは View → First Row → Header または Data を選んでください(ターミナル UI では H で判定とその逆を切り替えます。コマンドラインでは --header で指定します)。Parquet ファイルとデータベースは、常にファイル自身の列名を使います。

続きは GUI の使い方 または ターミナル UI の使い方 を参照してください。