ObsidianでUUIDをファイル名に利用

quartzでのURLはマークダウンのファイル名となる。 ファイル名をタイトルとすると変更が発生しやすいタイトルと不変性を持たせたいURLが一対一で結びついてしまう。 そのためファイル名をUUIDにし、タイトルを別に持つことで上記の問題を解決する。

ファイル名を変更する

Obsidianの標準プラグインでもファイル名をUIDにすることはできるものの作成日と結びついたものになってしまう。 作成日とは結びつかない完全にユニークなIDを利用したいためTemplaterを利用し、UUIDをファイル名とする。 ファイル名がタイトルのファイルを作成した後、以下のテンプレートを利用する。 JavaScriptcrypto.randomUUID()を利用してファイル名を作成した後、Templaterの機能を使ってファイル名の変更を行っている。

---
title: <% tp.file.title %>
date created: ""
aliases: 
tags: 
date modified: ""
publish: false
---
#  <% tp.file.title %>

<%* 
const uuid = crypto.randomUUID();
await tp.file.move(`notes/${uuid}`);
-%>

Obisidian内での表示を見やすくする

Front matter Titleプラグインを利用することでObsidian内のエクスプローラーや編集画面での表示をUUIDではなくfrontmatterのtitleに変更することができる。