Jazzと読書の日々

iPadを筆記具として使う方法を模索します

Obsidian:ファイル履歴を表示するDataview

作成日や修正日を一覧表示します。

History

Dataviewを調べ始めた頃に作ったスクリプト。 これが進化してRoomになったわけですが、初心に戻って組み直してみました。

初心は大事。 今ならこういうふうに作るのになあ、と工夫を入れてます。

History.md

下記スクリプトになります。

```dataviewjs
const p = dv.el("input")
p.placeholder = "..."
p.style = "font-size:large;border-radius:3px;"
const b = dv.el("div", "")
b.style = "max-height:40000px;"
disp()

p.onkeyup = () => disp()

function disp(){
  const  d = dv.pages().file
  .filter(x => x.name.includes(p.value))
  .sort(x => x.ctime, "desc")
  .map(x => "<tr style='font-size:16px;padding:4px;'><td><a class=internal-link href=\"" + x.path + "\">" + x.name + "</a></td><td style='text-align:right;'>" + x.size + "</td><td>" + x.cday.toLocaleString() + "</td><td>" + x.mday.toLocaleString() + "</td></tr>")
  b.innerHTML = "<br><table style='width:100%;'>" + d.join("") + "</table>"
}
```

蔵書データベースの応用ですね。

使い方

プレビューするとファイル一覧になります。 修正日順。 検索欄で絞り込めるようになっています。 ファイル・サイズも表示。

ファイル管理不要説

たしかに。 File Tree Alternativeに入れ替えていますが、そもそも開かないですね。

使うとしたらコピーを作るときでしょうか。 古いスクリプトをもとに別のアクションを作るときかな。 文章に対して使うときはありません。

コピーを作るのも、Commanderで「Make a copy of the current file」を追加すれば済む話。 ファイルメニューに置いておくだけ。

するとファイル管理の場面はありません。 なるほど。

以前書いたように、ファイルは「フロー」と「ストック」でできています。 いま動いているファイルと、もう動かないファイル。

フローにアクセスするのがトップ・ページなので、MOC形式も向いていないんじゃないか。 日々変化するのがフロー。 そのたびMOCを書き換えては「管理の管理」になる。

すると「History」が残るわけです。

まとめ

「管理」を使わない。 流動性を扱う。

でもそれはHistoryだけじゃないとも思う。 ほかに何かあるかな。