Quantcast
Channel: Jazzと読書の日々
Viewing all articles
Browse latest Browse all 496

Obsidian:ファイル迷宮を探索するRoom

$
0
0

あらゆるものは「迷宮ダンジョン」である。

Room

Obsidianのファイル履歴をカード形式で表示します。

今回、検索の仕方をTemplater経由にしました。

Room.md

Roomはdataviewスクリプトです。

Import Obsidian: Room.md

>[!info]- Room
>```dataview>task where !completed group by file.link>``````dataviewjsconst SEARCH = "Template/room.md"const CARD = "background:ivory;font-size:small;width:119px;height:110px;border:1px solid #eee;border-top:8px solid gold;text-decoration:none;padding:3px;border-radius:5px;margin:3px;overflow:hidden;float:left;"const MARK = "border-top:8px 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", "")disp()p.onkeyup = () => disp()btn.onclick = () => {  q = p.value  if(q){    navigator.clipboard.writeText(q)    app.commands.executeCommandById(`templater-obsidian:${SEARCH}`)  }else{    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='${CARD}${MARK}' 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='${CARD}' href='${x}'>${x.split("/").pop().replace(/.md$/,"")}</a>`)  b.innerHTML = c.join("")+ d.join("")}```

リーディングビューにすると下図のようになります。

タップするとノートが開きます。 「▶︎」で新規ファイル作成。

room.md

検索に下記Templaterスクリプトを使います。

Import Obsidian: room.md

<%*
const FILE ="_Search.md"

s =await navigator.clipboard.readText()
s =`~~~query\n${s}\n~~~`
p = app.vault.getAbstractFileByPath(FILE)if(p){await app.vault.modify(p, s)}else{
  p =await app.vault.create(FILE, s)}open(`obsidian://open?file=${FILE}`)%>

TemplaterのHotKeyに登録してください。

Room.mdの変数SEARCHがTemplaterの呼び出しです。 room.mdTemplateフォルダにある前提なので、違う場合はフォルダ名を書き換えてお使いください。

使い方

検索欄にキーワードを入れて「▶︎」をタップします。

検索結果が表示され、タップすると該当箇所を開きます。

ファイル管理は迷宮である

迷宮は探索するごとに新しい発見があるわけで、それをあらかじめ決めたシステムで管理できる道理はありません。 それは読書の醍醐味であり、書くことの骨法であり、ひいては人生そのものの構造です。 次が何かを予想できないから面白い。

パーソナル・ナレッジも同様ですよ。 「人生」の鏡映だから。

あらかじめ「プラン」を立てることはできない。 立ててもいいですが、プランから外れた「偶然」を取りこぼします。 「偶然」が迷宮を豊かに耕すので、取りこぼすのはもったいない。 PDCAとは異なるストラテジーを要請します。

すると「管理」とは、事後的に振り返ることで得られるものになります。 自分が何を体験してきたか。 その追憶が「パーソナル・ナレッジ」と呼ばれるわけです。

ObsidianはWebクリップを保管します。 Copilotとの対話も保存することができます。 ここが従来のエディタにない特徴ですね。 「自分が考えたもの」ではないものも「パーソナル・ナレッジ」になっている。 その射程には他者が混在している。

キーワードで検索すると、該当箇所がリストアップされます。 元の文脈とは別に「キーワードの繋がり」という新しい文脈が付与される。 迷宮の中で隠し扉を見つけたような気持ちになりますね。 ワープゾーンというか。 そこがそこと繋がるのか、という驚きを引き出します。 アレゴリーになっています。

これを振り返るツールが「検索」になります。 検索されることで「ログ」が「ナレッジ」になる感じかな。 繋げ直すことで「文脈」を創造する。

迷宮を探索することは「迷宮を探索すること」が目的です。 効率良く回る必要はありません。 どちらかというと「罠」にハマるほうが楽しい。 そんなシロモノです。

まとめ

「書く」とは、迷宮に遊ぶこと。


Viewing all articles
Browse latest Browse all 496