Prompt

tagsで定義されているタグを、文章中で#tag-aのように使用するとき、
ハッシュによる関連じゃなくて、[[tags/tag-a]]のようなリンクによる関連の方がいいかなあ?

デジタルガーデニングの観点から言うと、その問いへの答えは 「基本的には #tag-a(ハッシュ)を使いつつ、特に重要な概念だけ [[tag-a]](リンク)に昇格させる」 というハイブリッドな運用が、最も「庭」を健やかに保てる方法だよ!

なぜそう言えるのか、Quartzの仕様とデジタルガーデンの思想の両面から整理してみるね。

1. Quartzの挙動としての違い

Quartzにおいて、この2つは役割が明確に分かれているんだ。

  • #tag-a (ハッシュ):

    • Quartzはこれを自動的に検出し、/tags/tag-a というページへ紐付ける。

    • グラフビュー: デフォルト設定ではタグはノード(点)として表示されず、リンクのみが線で繋がる設定になっていることが多い。

    • 用途: 分類や、緩やかなグループ化に適している。

  • [[tags/tag-a]] (リンク):

    • これは「特定のファイル」への直接的な参照だ。

    • グラフビュー: 明確に「記事と記事」を結ぶ強い線として描画される。

    • ポップオーバー: リンクの上にマウスを置くと、そのタグの解説記事(MOC)の内容がフワッと浮き上がって見える。

2. 「リンク」の方が良いシチュエーション

もし君が既に content/tags/tag-a.md という解説記事(MOC)を作っているなら、文章中では [[tag-a]](またはエイリアスを使って [[tag-a|#tag-a]])と書くメリットが非常に大きいよ。

  1. 文脈の即時確認: 読者(未来の自分)が「これってどういう意味だっけ?」と思ったとき、クリックしなくても中身をプレビューできる。

  2. バックリンクの活用: タグの解説記事側で「どの記事からこの記事が参照されているか」が、バックリンクとして明確にリストアップされる。

  3. 情報の「重み」: 全ての単語をリンクにするとグラフが爆発(スパゲッティ化)するけど、あえてリンクにすることで「これは私の庭において重要な中心地(ハブ)である」という意思表示になる。

3. デジタルガーデナーとしての推奨戦略

君の現在の 05_tag-info フォルダにある java.mdalgorithm.md を、前にお話しした通り content/tags/ に移動させた前提で、こんな使い分けはどうかな?

  • フロントマター(tags: [ … ]): ここはシステムの分類用なので、常にハッシュ(タグ)として扱う。

  • 文章中:

    • 「単なる分類」として言及する場合: #java と書く。

    • 「その概念自体」を深掘りした記事を読んでほしい場合: [[java]] と書く。

💡 結論

「解説記事(MOC)が存在するタグ」については、文章中では [[リンク]] にした方が、Quartzのプレビュー機能やグラフビューの恩恵を最大限に受けられるのでおすすめだよ!

もし全部書き換えるのが面倒なら、Obsidianの検索置換機能を使って「特定の重要タグだけリンクに一括置換」してみるのもいいかもしれないね。

次は、実際に [[tags/java]] と書いたときのポップオーバーの出具合を試してみる?🌱

Prompt

あと、エイリアスが使えるのも大きいよね!

そうだね、エイリアス(別名)機能はデジタルガーデンを構築する上で本当に強力な武器になるよ!これがあるおかげで、文章の自然な流れを壊さずに、裏側で複雑な知識ネットワークを繋ぎ止めることができるんだ。

Quartzにおけるエイリアスの活用法と、その技術的な裏側について解説するね。

1. 文脈に合わせた自然なリンク

君が言っていた [[tags/tag-a|#tag-a]] のように、リンク先は同じでも、表示されるテキストを自由に変えられるのが最大のメリットだね。

  • 活用例: 記事内では「このアルゴリズムを使って…」と自然に書きつつ、リンク先は [[algorithm|アルゴリズム]] といった専門的な解説ページに飛ばすことができる。

  • 日本語との相性: 日本語は「てにをは」や語尾の変化が多いから、エイリアスがないと不自然な文章になりがちだけど、これがあれば完璧にコントロールできるよ。


2. フロントマターでの一括定義(Quartzの隠れた強み)

実は、ファイル内のフロントマターでも aliases を定義できるのを知っているかな?

YAML

---
title: Java
aliases:
  - ジャバ
  - JVM言語
---

これをやっておくと、他の記事から [[ジャバ]][[JVM言語]] と書くだけで、自動的に「Java」の記事へリンクされるようになるんだ。Quartzの AliasRedirects エミッターが、これらの別名に対しても正しいリダイレクトやリンクの解決を行ってくれるよ。


🛠️ Quartzでの処理の仕組み

君の持っているソースコードを見ると、Quartzがどうやってエイリアスを捌いているのかがわかるよ:

  • パース処理: ofm.ts 内の wikilinkRegex が、パイプ記号 | を境界線として「リンク先」と「表示名」を切り分けて抽出しているんだ。

  • リダイレクト生成: AliasRedirects プラグインは、フロントマターで定義された別名ごとにHTMLファイルを生成して、メインの記事へ http-equiv="refresh" で飛ばす仕組みを作っているよ。

💡 結論

エイリアスを使うことで、「情報の整理(厳密な名前)」「表現の豊かさ(柔軟な呼び方)」 を両立できる。これは、INFP-A型の君が大切にしている「自分の感性に素直な表現」を、エンジニア的な「整った構造」の上に載せるための最高の架け橋だね!

次は、フロントマターに aliases をいくつか追加して、より網目状に広がる庭を楽しんでみるのはどうかな?🌱