Google スプレッドシートのデータを Markdown エクスポート・差分ハイライト・自動バックアップ する Google Apps Script ツール集。
スプレッドシートの全シートを Markdown 形式に変換し、Google Drive の export フォルダにテキストファイルとして出力する。
- 1列目をタイトル(H3)、2列目以降をリスト項目として変換
- 列名による特殊処理:
Markdownを含む列 — 見出しレベルを H4 基準にオフセット調整Python/Handlebars/Mermaidを含む列 — コードブロックで囲んで出力無視を含む列 — エクスポート対象から除外
- エクスポート完了後にダウンロードリンクをダイアログ表示
セル編集時にバックアップと比較し、変更箇所を文字単位で青字ハイライトする。
- ヘッダー行(1行目)は別配色でハイライト
- バックアップ値はスクリプトキャッシュから高速取得(キャッシュミス時はファイルからフォールバック)
時間主導型トリガーにより定時実行される。
- Markdown エクスポート
- 全シートの文字色・背景色を初期状態にリセット
- 既存バックアップを削除し、現在のスプレッドシートをコピー
- バックアップ ID とシートデータをスクリプトキャッシュに格納
| ファイル | 責務 |
|---|---|
Config.js |
共通定数(CONFIG オブジェクト)・ヘルパー関数 |
Export.js |
Markdown エクスポート機能 |
Handlers.js |
セル編集時の差分ハイライト |
Menu.js |
カスタムメニュー登録・バックアップキャッシュ準備 |
NightlyTasks.js |
定時バッチ(エクスポート+バックアップ) |
- clasp(
@google/clasp)がインストール済みであること - Google Apps Script API が有効であること
- リポジトリをクローン
clasp loginで Google アカウントに認証.clasp.jsonにスクリプト ID を設定clasp pushでスクリプトをデプロイ
スプレッドシートの「拡張機能 > Apps Script > トリガー」から以下を設定する:
| 関数 | イベント |
|---|---|
handleOnOpen |
スプレッドシートを開いた時 |
handleInstalledEdit |
スプレッドシートの編集時 |
nightlyBuild |
時間主導型(例: 毎日午前4時) |
スプレッドシートを開くと「🛠️ ツール」メニューが表示される。
- Markdown エクスポート実行 — 全シートを Markdown に変換して Drive に保存
- バックアップ更新(差分リセット) — 差分ハイライトをリセットしバックアップを更新
clasp push # ローカル → GAS
clasp pull # GAS → ローカル