まずは実験。
ListView
Memosはリストをデイリーノートに書き込む形式をしています。 ということは、昔作ったListViewが使えるということですね。 組み合わせて相乗効果が起こるなら面白いかもしれない。
ListView.md
下記のようなdataviewスクリプトになります。 ファイルに貼り付けてください。
```dataviewjs
s = "background:ivory;width:100%;height:100px;border:1px solid #eee;padding:3px;border-left:10px solid orange;border-radius:3px;;margin:3px;overflow:hidden;float:left;"
const p = dv.el("input")
p.placeholder = "..."
p.style = "width:100%;font-size:18px;background:whitesmoke;"
dv.paragraph("---")
const b = dv.el("div","")
b.style = "font-size:small;font-weight:bold;height:12000px;"
disp()
p.onkeyup = function(){
disp()
}
function disp(){
r = new RegExp("("+ p.value +")","i")
d = dv.pages('').file
.sort(x => x.mtime, "desc").lists
.filter(x => r.test(x.text))
.limit(120)
.map(x => "<a style='" + s + "' href=obsidian://open?file=" + encodeURI(x.section.path) + "> " + x.text.replace(/^[\d:]+ /, "") + "</a>")
b.innerHTML = d.join("")
}
```
使い方
プレビューにすると上記のように表示します。
検索欄は正規表現が使える。 カードをタップすると元のファイルを開きます。
感想
まあ、全然ダメですね。 まずリストの作成順ではありません。 ファイルの作成時間の情報しか拾えないから仕方ない。 リンクもファイルにしか対応していません。
ただ、HTMLタグを表示できるのでブログカードや画像が確認できます。 カードの高さを広げてもいいけど、一行コメントの隙間が空きすぎる。 これは悩ましい。
結局Memosでできる以上はListViewではできません。 付加価値がない。 これから何を加えていくか。 それが見つかれば面白くできそうなんですが。
まとめ
ムダも積もれば大和撫子。