エイリアス(Alias)
ノートに付ける別名で、マニフェストには追加の検索キーとして記録されます。エイリアスを使うと、slugやpermalinkを変えずにWikiLinkを同じノートへ解決できます。同じ名前を2つのノートで使うと、そのキーは曖昧になります。
エイリアスの設定
---
aliases: [Getting Started, Quick Start]
---
解決と曖昧さ
各エイリアスは、このノートへ解決するキーとしてコンテンツインデックスに登録されます。2つのノートが同じエイリアスを宣言するとキーは曖昧になり、そのキーを使うリンクは診断として報告されます。
コンテンツインデックスへの登録
エイリアスはfrontmatterからextractFrontmatterAliases(packages/core/src/content/content_metadata.ts)で抽出され、ContentManifest.byAliasに登録されます。contentIndexはキーを小文字化して検索し、エイリアスも同じ小文字化の規則に従います。複数のエントリが同じエイリアスキーを持つ場合、そのキーはcontentIndexAmbiguitiesへ移され、通常のインデックスからは意図的に外されます。そのため、そのキーを使うリンクは検出順で対象を選ぶのではなく、未解決のまま残ります。
// From packages/core/src/content/content_metadata.ts
export function extractFrontmatterAliases(markdown: string): string[] {
// ...extracts `alias` and `aliases` from frontmatter
}
// From packages/core/src/types/content_manifest.ts
interface ContentManifest {
byAlias: Map<string, ContentManifestEntry[]>;
contentIndex: Map<string, string>;
contentIndexAmbiguities?: ReadonlyMap<string, readonly string[]>;
}
エイリアスが曖昧な場合、[[alias-name]]を使ったWikiLinkは解決されず、診断として報告されます。単一のエイリアスキーは通常どおり対象のノートへ解決されます。