Использование 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%20note
obsidian:///absolute/path/to/my note
эквивалентноobsidian://open?path=%2Fabsolute%2Fpath%2Fto%2Fmy%20note