Использование Obsidian URI
Obsidian поддерживает модифицированную версию URI протокола obsidian://, который можно использовать для запуска различных действий в приложении. Это обычно используется в macOS и мобильных приложениях для автоматизации и выстраивания процессов работы между несколькими приложениями.
Если у вас установлен Obsidian, эта ссылка откроет приложение на вашем устройстве: Нажмите здесь
Установка Obsidian URI¶
Чтобы убедиться, что ваша операционная система перенаправляет URI obsidian:// в приложение Obsidian, вам могут потребоваться дополнительные шаги.
- В Windows достаточно запустить приложение один раз. Это зарегистрирует обработчик пользовательского протокола
obsidian://в реестре Windows. - В macOS однократного запуска приложения должно быть достаточно, однако ваше приложение должно иметь версию установщика 0.8.12 и новее.
- В Linux процесс гораздо более сложный:
- Во-первых, убедитесь, что вы создали файл
obsidian.desktop. Более детально смотрите здесь - Убедитесь, что в файле рабочего стола в поле
ExecуказаноExec=executable %u. Параметр%uиспользуется для передачи URIobsidian://приложению. - Если вы используете установщик AppImage, вам, возможно, придется распаковать его с помощью
Obsidian-x.y.z.AppImage --appimage-extract. Затем убедитесь, что директиваExecуказывает на распакованный исполняемый файл.
- Во-первых, убедитесь, что вы создали файл
Использование Obsidian URI¶
Obsidian URI обычно имеют следующий формат:
obsidian://action?param1=value¶m2=value
action— это действие, которое вы хотите выполнить.
Кодировка¶
Важно
Убедитесь, что ваши значения правильно закодированы в URI. Например, символы прямой косой черты / должны кодироваться как %2F, а символы пробела должны кодироваться как %20.
Это особенно важно, потому что неправильно закодированный «зарезервированный» символ может нарушить интерпретацию URI. Подробнее смотри здесь.
Доступные действия¶
Действие open (открыть)¶
Описание: открывает хранилище Obsidian и, возможно, открывает файл в этом хранилище.
Возможные параметры:
vaultможет быть либо именем хранилища, либо ID хранилища.- Имя хранилища — это просто имя папки хранилища.
- ID хранилища — это случайный 16-значный код, присвоенный хранилищу. Этот идентификатор уникален для каждой папки на вашем компьютере. Пример:
ef6ca3e3b524d22f. Пока нет простого способа найти этот идентификатор, он будет предложен позже в переключателе хранилищ. В настоящее время его можно найти в%appdata%/obsidian/obsidian.jsonв Windows. Для macOS, замените%appdata%на~/Library/Application Support/. Для Linux, замените%appdata%на~/.config/.
fileможет быть либо именем файла, либо путем от корня хранилища к указанному файлу.- Для разрешения целевого файла Obsidian использует ту же систему разрешения ссылок, что и обычная
[[вики-ссылка]]в хранилище. - Если расширение файла —
md, расширение можно не указывать.
- Для разрешения целевого файла Obsidian использует ту же систему разрешения ссылок, что и обычная
path— абсолютный путь файловой системы к файлу.- Использование этого параметра переопределит как параметр
vault, так иfile. - Это заставит приложение искать наиболее конкретное хранилище, содержащее указанный путь к файлу.
- Затем оставшаяся часть пути заменяет параметр
file.
- Использование этого параметра переопределит как параметр
Примеры:
-
obsidian://open?vault=my%20vaultОткроет хранилищеmy vault. Если хранилище уже открыто, произойдет фокусировка на окне. -
obsidian://open?vault=ef6ca3e3b524d22fЭто открывает хранилище с IDef6ca3e3b524d22f. -
obsidian://open?vault=my%20vault&file=my%20noteОткроет заметкуmy noteв хранилищеmy vault, при условии, чтоmy noteсуществует и название файла —my note.md. -
obsidian://open?vault=my%20vault&file=my%20note.mdТакже откроет заметкуmy noteв хранилищеmy vault. -
obsidian://open?vault=my%20vault&file=path%2Fto%2Fmy%20noteОткроет заметку, расположенную по путиpath/to/my noteв хранилищеmy vault. -
obsidian://open?path=%2Fhome%2Fuser%2Fmy%20vault%2Fpath%2Fto%2Fmy%20noteЭто будет искать любое хранилище, содержащее путь/home/user/my vault/path/to/my note. Затем остальная часть пути передается параметруfile. Например, если хранилище существует в/home/user/my vault, то это будет эквивалентно параметруfileустановленному вpath/to/my note. -
obsidian://open?path=D%3A%5CDocuments%5CMy%20vault%5CMy%20noteЭто будет искать любое хранилище, содержащее путьD:\Documents\My vault\My note. Затем остальная часть пути передается параметруfile. Например, если хранилище существует вD:\Documents\My vault, то это будет эквивалентноfile, установленному вMy note.
Действие search (поиск)¶
Описание: открывает панель поиска для хранилища и, при необходимости, выполняет поисковый запрос.
Возможные параметры:
vaultможет быть либо именем хранилища, либо идентификатором хранилища. То же, что и в действииopen.query(необязательный параметр) — выполняемый поисковый запрос.
Примеры:
-
obsidian://search?vault=my%20vaultЭто откроет хранилищеmy vaultи откроет поисковую панель. -
obsidian://search?vault=my%20vault&query=MOCЭто откроет хранилищеmy vault, откроет поисковую панель и выполнит поисковый запросMOC.
Действие new (новый)¶
Описание: создает новую заметку в хранилище, при желании с некоторым содержанием.
Возможные параметры:
vaultможет быть либо именем хранилища, либо идентификатором хранилища. То же, что и в действииopen.nameимя создаваемого файла. Если это указано, расположение файла будет выбрано на основе ваших настроек «Местоположение по умолчанию для новой заметки».fileабсолютный путь к хранилищу, включая имя. Если указано, переопределитname.pathглобальный абсолютный путь. Работает аналогично параметруpathв действииopen, которое переопределяет какvault, так иfile.content(необязательный параметр) содержимое заметки.silent(необязательный параметр) установите это, если вы не хотите открывать новую заметку.
Примеры:
obsidian://new?vault=my%20vault&name=my%20noteЭто откроет хранилищеmy vault, создаст новую заметку под названиемmy note.obsidian://new?vault=my%20vault&path=path%2Fto%2Fmy%20noteОткроет хранилищеmy vault, создаст новую заметку с расположениемpath/to/my note.
Действие hook-get-address (получить)¶
Описание: предназначено для использования с Hook. Копирует Markdown-ссылку на текущую активную заметку в буфер обмена в виде URL-адреса obsidian://open. Использование: obsidian://hook-get-address
Возможные параметры:
vault(необязательный параметр) может быть либо именем хранилища, либо идентификатором хранилища. Если не указан, будет использоваться текущее или последнее активное хранилище.
Сокращенные форматы¶
Помимо вышеперечисленных форматов, для открытия хранилищ и файлов доступны ещё два сокращенных формата записи:
obsidian://vault/my vault/my noteэквивалентноobsidian://open?vault=my%20vault&file=my%20noteobsidian:///absolute/path/to/my noteэквивалентноobsidian://open?path=%2Fabsolute%2Fpath%2Fto%2Fmy%20note