Для публикации своего волта Obsidian в виде этого сайта я использую Quartz. Quartz подхватывает директории заметок и строит сетевой адрес относительно них. По причине того, что местонахождение заметок в волте то и дело меняется и это, я заметил для себя, неизбежно, меняются и адреса. Частично это решается с помощью тэга aliases во front matter, чтобы одна заметка могла иметь разные названия и соответственно адреса.

Решение совсем близко — плагин Obsidian GUID plugin 1. Он добавляет во front matter тэг id: 01KY1V3W9YCBNE72NHTXTAEYSM, где собственно id генерится случайным образом.

А далее всё упирается в Quartz. Было бы просто идеально, если бы Quartz рендерил сайт так, что содержимое тэга id будет использоваться как ещё один пункт aliases, но без директорий. То есть куда бы ни перемещалась заметка, в каких бы директориях она ни лежала, она всегда будет иметь постоянный адрес типа https://obsidian.vault/01KY1V3W9YCBNE72NHTXTAEYSM/. К сожалению, Quartz этого не умеет, как я не умею кодить и вряд ли смогу написать такой плагин для Quartz.

Спасибо Copilot, без которого точно ничего не получилось бы. У меня этот плагин работает прямо сейчас и его можно проверить, взяв GUID в параметрах страницы внизу и поместив его вместо имени страницы после основной и неизменной части адреса: https://omega9.web.app/GarlicGarden/01KY1V3W9YCBNE72NHTXTAEYSM
Установочная версия в виде репозитория на GitHub, готового к добавлению в Quartz, так же сделана Copilot и я её не тестировал, потому что мне лень.

Footnotes

  1. Globally Unique Identifier