옵시디언 활용/옵시디언 심화

옵시디언 심화: Obsidian URI

반응형

개요

Obsidian URI는 Obsidian이 지원하는 사용자 정의 URI 프로토콜로, 노트 열기, 노트 생성 등 다양한 작업을 트리거할 수 있습니다. macOS와 모바일 앱에서 자동화 및 앱 간 워크플로우를 위해 일반적으로 사용됩니다.

 

https://help.obsidian.md/Extending+Obsidian/Obsidian+URI

 

Obsidian URI - Obsidian Help

Obsidian URI is a custom URI protocol supported by Obsidian that lets you trigger various actions, such as opening a note or creating a note. It is commonly used on macOS and mobile apps for automati…

help.obsidian.md

Obsidian URI 형식

Obsidian URI는 일반적으로 다음 형식을 따릅니다:

obsidian://action?param1=value&param2=value

여기서 action 매개변수는 수행하고자 하는 작업입니다.

인코딩
값이 올바르게 URI 인코딩되어 있는지 확인하세요. 예를 들어, 슬래시 문자 /는 %2F로, 공백 문자는 %20으로 인코딩해야 합니다. 잘못 인코딩된 "예약된" 문자는 URI 해석을 깨뜨릴 수 있기 때문에 특히 중요합니다. Percent-encoding을 참조

Obsidian URI 등록

Windows와 macOS에서는 앱을 한 번 실행하는 것으로 컴퓨터에 Obsidian URI 프로토콜을 등록하기에 충분합니다.

 

Linux에서는 다음과 같은 보다 복잡한 과정을 거쳐야 합니다:

  • obsidian.desktop 파일을 생성해야 합니다. 자세한 내용은 여기를 참조하세요.
  • 데스크탑 파일에서 Exec 필드를 Exec=executable %u로 지정해야 합니다. %u는 Obsidian:// URI를 앱으로 전달하는 데 사용됩니다.
  • AppImage 설치 프로그램을 사용하는 경우, Obsidian-x.y.z.AppImage --appimage-extract를 사용하여 압축을 풀고, Exec 지시문이 압축 해제된 실행 파일을 가리키도록 해야 합니다.

노트 열기

Obsidian Vault를 열거나 해당 Vault 내의 파일을 엽니다.

예시

  • obsidian://open?vault=my%20vault: "my vault"라는 Vault를 엽니다. Vault가 이미 열려 있으면 해당 창으로 포커스를 이동합니다.
  • obsidian://open?vault=ef6ca3e3b524d22f: ID가 ef6ca3e3b524d22f인 Vault를 엽니다.
  • obsidian://open?vault=my%20vault&file=my%20note: "my vault"라는 Vault에서 "my note.md" 노트를 엽니다(해당 파일이 존재한다고 가정).
  • obsidian://open?path=%2Fhome%2Fuser%2Fmy%20vault%2Fpath%2Fto%2Fmy%20note: "/home/user/my vault/path/to/my note" 경로를 포함하는 모든 Vault를 찾습니다. 예를 들어, "/home/user/my vault"에 Vault가 있으면, 이는 파일 매개변수가 "path/to/my note"로 설정된 것과 동일합니다.
제목 또는 블록 열기
적절한 URI 인코딩을 사용하면 노트 내의 특정 제목이나 블록으로 이동할 수 있습니다. "Note%23Heading"은 "Heading"이라는 제목으로, "Note%23%5EBlock"은 "Block"이라는 블록으로 이동합니다.

매개변수

  • vault: Vault 이름 또는 Vault ID 둘 중 하나일 수 있습니다.
  • file: 파일 이름이거나 Vault 루트에서 지정된 파일까지의 경로일 수 있습니다. 파일 확장자가 md인 경우, 확장자는 생략할 수 있습니다.
  • path: 파일까지의 절대 파일 시스템 경로입니다. 이 매개변수를 사용하면 vault와 file 모두 무시됩니다. 앱은 지정된 파일 경로를 포함하는 가장 구체적인 Vault를 검색합니다. 그런 다음 나머지 경로가 파일 매개변수를 대체합니다.

검색 열기

이 Obsidian URI Endpoint는 지정된 Vault에서 검색을 열고, 선택적으로 검색 쿼리를 수행합니다.

예시

  • obsidian://search?vault=my%20vault:
    "my vault"라는 Vault를 열고 검색을 시작합니다.
  • obsidian://search?vault=my%20vault&query=Obsidian: "my vault"라는 Vault를 열고 "Obsidian"에 대해 검색을 수행합니다.

매개변수

  • vault: Vault 이름 또는 Vault ID 둘 중 하나일 수 있습니다. 열기 작업과 같습니다.
  • query (선택사항): 수행할 검색 쿼리입니다.

노트 생성

이 URI Endpoint는 Vault에 새 노트를 생성합니다. 선택적으로 일부 내용을 포함할 수 있습니다.

예시

  • obsidian://new?vault=my%20vault&name=my%20note
    "my vault"라는 Vault를 열고 "my note"라는 새 노트를 생성합니다.
  • obsidian://new?vault=my%20vault&path=path%2Fto%2Fmy%20note
    "my vault"라는 Vault를 열고 "path/to/my note"에 새 노트를 생성합니다.

매개변수

  • vault: Vault 이름 또는 Vault ID 둘 중 하나일 수 있습니다. 열기 작업과 같습니다.
  • name: 생성될 파일 이름입니다. 이것이 지정되면, "새 노트의 기본 위치" 선호도에 따라 파일 위치가 선택됩니다.
  • file: 이름을 포함한 Vault 절대 경로입니다. 지정된 경우 name을 덮어씁니다.
  • path: 전역 절대 경로입니다. 열기 작업에서의 path 옵션과 유사하게 작동하여 vault와 file 모두를 덮어씁니다.
  • content (선택사항): 노트의 내용입니다.
  • silent (선택사항): 새 노트를 열지 않으려면 이 매개변수를 포함하세요.
  • append (선택사항): 이미 존재하는 파일에 추가하려면 이 매개변수를 포함하세요.
  • overwrite (선택사항): 이미 존재하는 파일이 있을 경우 덮어쓰기를 하되, append가 설정되지 않은 경우에만 가능합니다.
  • x-success (선택사항): x-callback-url 참조하세요.

Hook과 통합하기

이 Obsidian URI Endpoint는 Hook과 함께 사용하기 위해 설계되었습니다.

예시

obsidian://hook-get-address

매개변수

  • vault (선택 사항): Vault 이름이나 Vault ID 중 하나가 될 수 있습니다. 제공되지 않는 경우 현재 또는 마지막으로 포커스된 Vault가 사용됩니다.
  • x-success (선택 사항): x-callback-url 참조.
  • x-error (선택 사항): x-callback-url 참조.

x-success가 정의된 경우, 이 API는 그것을 x-callback-url로 사용합니다. 그렇지 않으면 현재 포커스된 노트의 Markdown 링크를 클립보드에 복사합니다. 이 링크는 obsidian://open URL 형식입니다.

x-callback-url 매개변수 사용

일부 Endpoint는 x-successx-error와 같은 x-callback-url 매개변수를 받습니다. 제공될 때, Obsidian은 x-success 콜백에 다음을 제공합니다:

  • name: 파일 확장자 없이 파일의 이름입니다.
  • url: 이 파일에 대한 obsidian:// URI입니다.
  • file (데스크탑만 해당): 이 파일에 대한 file:// URL입니다.

예를 들어, Obsidian이 obsidian://.....x-success=myapp://x-callback-url를 받으면, 응답은 myapp://x-callback-url?name=...&url=obsidian%3A%2F%2Fopen...&file=file%3A%2F%2F...가 됩니다.

간편 형식

위의 형식들 외에도, Vault와 파일을 열기 위한 두 가지 "간편" 형식이 더 있습니다:

  • obsidian://vault/my vault/my noteobsidian://open?vault=my%20vault&file=my%20note와 동일합니다.
  • obsidian:///absolute/path/to/my noteobsidian://open?path=%2Fabsolute%2Fpath%2Fto%2Fmy%20note와 동일합니다.

관련 글

 

외부에서 노트를 조작할 수 있는 Advanced URI 플러그인

개요 Advanced URI 플러그인은 외부 애플리케이션에서 옵시디언 노트의 직접적인 조작을 가능하게 하는 플러그인입니다. 이 플러그인은 URI(Uniform Resource Identifier)를 활용하여 외부 앱에서 Obsidian 노

kaminik.tistory.com


 

반응형