Jazzと読書の日々

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

Obsidian:Roomをちょっと修正

外付けキーボードで使っているとき、ホーム画面をどう呼び出せばいいかな、となったので考えてみました。

Room

ファイル履歴をカード風に表示します。 カードをタップするとそのファイルが開く仕組み。 これをホーム画面に使っています。

Dataviewプラグインで動きます。

Import Obsidian: Room

>[!note]- Room
>```dataview
>task where !completed group by file.link
>```

```dataviewjs
const s = "background:ivory;width:119px;height:112px;border:1px solid #eee;border-top:10px solid gold;text-decoration:none;padding:3px;border-radius:5px;margin:3px;overflow:hidden;float:left;"
const ss = "border-top:10px solid orange;"

const p = dv.el("input")
p.placeholder = "..."
p.style = "background:whitesmoke;font-size:large;width:50%;border-radius:5px;border:1px silver solid;"
const btn = dv.el("button","+")
btn.style = "background:none;font-size:small;margin:5px;width:20px;"
const b = dv.el("div", "")
b.style = "font-size:small;height:4000px;"
disp()

p.onkeyup = () => disp()

btn.onclick = () => open("obsidian://new")

function disp(){
  r = new RegExp(`${p.value}`, "i")
  const c = dv.pages('').file
    .filter(x => x.starred)
    .filter(x => r.test(x.name))
    .sort(x => x.mtime, "desc")
    .map(x => `<a class=internal-link style='${s}${ss}' href='${x.path}'>${x.name}</a>`)
  const d = dv.array(Object.entries(dv.app.metadataCache.fileCache))
    .filter(([x,y]) => r.test(x))
    .sort(([x,y]) => y.mtime, "desc")
    .limit(200)
    .map(([x,y]) => `<a class=internal-link style='${s}' href='${x}'>${x.split("/").pop().replace(".md","")}</a>`)
  b.innerHTML = c.join("") + d.join("")
}
```

変更点

タスクリストをCallOutとして別設計にしました。 不要であればこの部分は削ってください。 ただのバナーに替えてもらっても結構です。

キーワード作成は外しました。 あまり使わなかったからです。 キーワードは意識して作った方がいい。

勝手にキーワードページが作られることで、後で整理が必要になり、整理を考えると面倒なので使用を控えてしまった。 これでは本末転倒です。 あまり自動的に作成するものではないと思いました。

タブの切り替え

禅々モードで使っているとタブが消えます。 するとRoomを開きにくい。 何かコマンドを作ろうかと考えましたが、いや、不要でした。

タブの切り替えは[Cmd]+[1]ですね。 数字で切り替える。 Roomを最初のページにピン留めしておけば[Cmd]+[1]で開くことができます。

タイプライターモードだとRoomの表示も下方に偏ります。 リーディングビューにすると通常の表示に戻ります。 こちらでお使いください。

まとめ

リーディングビューだと[TAB]キーで検索欄にカーソルが移動します。 画面をタップしなくていい。 まるであつらえてあるかのような仕様。

おまけ

ただで読めるカレー沢先生のエッセイ。 太っ腹だ。

しかしハーフプライサー同好会はこの問題とどう向き合えばいいのか。 死活問題である。 AIもまた余計なことをしてくれる。