Jazzと読書の日々

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

Obsidianで画像ギャラリーを自動生成

うまく行かんかった。

イメージ・グリッド

画像を並べるcss。 これをdataviewと組み合わせようと思ったのですが、設定が反映しませんね。 あとからリストを作るからかなあ。

仕方ないのでdataview単体で動くスクリプト

gallery.md

画像が置いてあるフォルダに下記スクリプトのファイルを作ってください。 これをリーディングビューにするとギャラリーが現れます。

```dataviewjs
const s = dv.current().file.folder
d = dv.array(Object.entries(dv.app.metadataCache.fileCache))
    .filter(([x,y]) => x.includes(s))
    .filter(([x,y]) => /\.[jpg|png|gif]/i.test(x))
    .map(([x,y]) =>  "[![[" + x + "|200]]](" + x + ")" )
const gal = d.join("\n")
dv.paragraph(gal)
```

表示例

こんな感じ。 サムネをタップすると元ファイルが開きます。

なぜか右側に大きな余白ができる。 dataviewの仕様?

まとめ

たまに「200」って文字が並ぶけど、タップして画像を出すと正常化します。 画像の読み込みに時間差が必要なのかな。

20:00

「dv.paragraph(gal)」を「dv.span(gal)」にしたら右余白を消せた。