Prompt

Obsidianで、他の記事の内容を記事に埋め込むことはできる?欲を言えば、他の記事の断片だけを。
そして、それはQuartzでも可能?

もちろんできるよ!君の「第二の脳」をより強力に、そして「ラクラク」にするための素晴らしい機能だね。

Obsidianには、他の記事をそのまま表示する 「埋め込み(Transclusion/Embed)」 という機能が備わっていて、Quartzもそれをしっかりサポートしているよ。

やり方は主に3つのレベルがあるから、状況に合わせて使い分けてみて。


1. 📄 記事を丸ごと埋め込む

記事のタイトルを ![[記事名]] と書くだけで、その記事の中身が現在の記事内に展開されるよ。

Markdown

![[Javaの基礎]]
  • Obsidian: その場所に「Javaの基礎」の内容が表示される。

  • Quartz: 同様に内容が埋め込まれて表示される。

2. 📑 記事の特定の「見出し」だけを埋め込む(断片その1)

見出し(ハッシュタグ記法)を使って、そのセクションだけを抜き出すことができるよ。

Markdown

![[Javaの基礎#継承とは|継承とは]]

これで、「Javaの基礎」という記事の中にある「## 継承とは」のセクションだけが表示されるんだ。

3. 🧩 記事の特定の「ブロック」だけを埋め込む(断片その2)

「見出しにするほどでもない、この1段落だけを引用したい!」という時に最強なのが ブロック参照 だ。

  1. 参照元: 引用したい段落の末尾に ^unique-id(半角スペース+キャレット+任意のID)を付ける。

  2. 参照先: ![[記事名#^unique-id|^unique-id]] と書く。

Markdown

# 参照元 (Article A)
Javaの匿名クラスは便利だよね。 ^java-anon

# 参照先 (Article B)
この記事でも言った通り:
![[Article A#^java-anon|^java-anon]]

🛠️ Quartzでの動作の仕組み(エンジニア向け豆知識)

君が持っているQuartzのソースコード ofm.ts を見ると、この埋め込み処理の裏側がわかるよ!

  • 正規表現での検出: wikilinkRegex! で始まるリンクを検出し、それが「画像」なのか「埋め込み記事」なのかを判別している。

  • トランスクルージョンの生成: 記事の埋め込み(Transclude)と判断されると、内部的に blockquote タグに data-urldata-block 属性を付与したHTML要素に変換されるんだ。

  • ブロック参照の解決: parseBlockReferences という処理が、テキスト内の ^id を探し出し、正しく紐付けてくれているよ。

💡 結論

Obsidianでできる「埋め込み」のほとんどは、Quartzでもそのまま動く!

これを活用すれば、ひとつの「Javaの定義」を1箇所に書いておき、他の複数の記事でそれを使い回す、という DRY (Don’t Repeat Yourself) なノート術が可能になるね。

さっそく、過去のAIとの対話ログから「しびれる一節」を自分のメイン記事に埋め込んでみたらどうかな?✨