Skip to main content
지식 관리·옵시디언

옵시디언 Bases this 필터: 단독·삽입·사이드바의 기준 파일 구분하기

같은 Base와 같은 지정 뷰라도 단독 탭·삽입 노트·사이드바에서 this가 가리키는 파일이 다를 수 있습니다. 격리된 데스크톱 시험 볼트의 행·화면·원본을 대조해 기준 파일의 변화와 기본/지정 뷰 차이를 분리합니다. 모바일·Sync·다중 창으로 일반화하지 않습니다.

GTGem.tipsPublished
읽는 시간 : 약 7분 소요
하나의 Bases 파일을 단독 탭, 노트 삽입, 메인 노트 옆 사이드바에서 보는 세 가지 문맥의 추상 삽화

같은 .base인데 단독 탭에서는 한 행, 다른 노트에 삽입하면 두 행, 사이드바에서는 다시 목록이 달라지나요? 원본 노트가 사라졌다고 결론 내리기 전에 열린 위치의 기준 파일(this)과 선택된 뷰를 따로 확인하세요. Obsidian 공식 문서에서 this는 메인 영역의 단독 Base에서는 Base 파일, 노트에 삽입하면 삽입한 노트, 사이드바에서는 메인 영역의 활성 파일을 가리킵니다. 뷰마다 필터가 다르면 같은 문맥에서도 결과가 달라집니다. 아래 행 수는 2026년 10월 9일 격리 시험 볼트의 관측값이며 독자의 볼트에서 그대로 재현된다는 뜻이 아닙니다. Bases 구문·뷰 안내를 근거로 하고, 앱 화면·원본·해시를 대조한 결과를 분리해 적었습니다.

행의 file과 기준 파일 this는 무엇이 다른가요?

Bases의 각 행에 있는 file은 그 행의 후보 파일입니다. this는 Base가 지금 표시되는 맥락의 기준 파일입니다. file.folder == this.file.folder는 행 파일의 폴더와 기준 파일의 폴더가 정확히 같은지 비교합니다. Base를 저장한 폴더 하나를 모든 화면에 고정하는 조건이 아닙니다.

이 글의 시험 환경은 macOS 27.0 (26A428)의 격리 Obsidian 데스크톱 창에 표시된 1.14.4, 코어 Bases 활성 상태였습니다. 검증은 2026-10-09 약 06:55~07:07 KST에 새 독립 프로필과 this-context-vault에서 진행됐습니다. 앱 번들의 Info.plist에는 1.13.7이 표시됐으나 시험 대상으로 연 창의 표시는 1.14.4였으므로 여기서는 창 표시 버전을 사용합니다. 시험 담당자는 .base와 Markdown 노트를 로컬에 직접 작성하고, 격리 Electron의 CDP에서 Obsidian workspace API로 탭과 사이드바를 열었습니다. 손으로 설정 UI를 눌러 만들었다는 뜻이 아닙니다. 실제 앱 캡처, 표시 행의 DOM 기록, 원본 파일과 해시를 맞춰 봤습니다. 사용자 업무 볼트·Sync는 사용하지 않았습니다.

설정 파일 Config/Context.base의 전역 필터는 file.ext == "md"와 Boolean 속성 sample_demo == true입니다. 시험 자료 노트 여섯 개만 이 조건을 충족하고 호스트 노트 두 개는 false입니다. 첫 뷰 All candidates에는 추가 폴더 필터가 없고, 둘째 뷰 By context에만 아래 조건을 더했습니다. 진단 열 formula.context_folder는 this.file.folder를 화면에 표시한 것입니다.

filters:
  and:
    - file.ext == "md"
    - sample_demo == true
formulas:
  context_folder: this.file.folder
views:
  - type: table
    name: All candidates
    order:
      - file.name
      - file.folder
      - formula.context_folder
  - type: table
    name: By context
    filters:
      and:
        - file.folder == this.file.folder
    order:
      - file.name
      - file.folder
      - formula.context_folder

이 코드는 실제 검증 파일을 읽기 편하게 옮긴 것이지, 기존 볼트에 그대로 붙여 넣으라는 뜻이 아닙니다. 사용자의 속성 이름과 Boolean 타입, 폴더 구조가 다르면 먼저 맞춰야 합니다. 특히 file.inFolder(...)처럼 하위 폴더까지 포함하는 조건과 위의 정확한 문자열 일치를 같은 필터로 바꿔 쓰지 마세요.

단독 탭과 노트 삽입에서는 어느 파일이 기준인가요?

동일한 Config/Context.base의 By context를 메인 영역에서 단독으로 열었을 때 기준 파일은 Config/Context.base, 기준 폴더는 Config였습니다. 화면에는 Config/Base-control.md 한 행이 보였습니다. 여기서 Base-control은 sample_demo: true인 자료 노트이지 설정 .base 파일 자체가 아닙니다.

삽입할 때는 호스트를 바꿨습니다. Area-A/Host-A.md와 Area-B/Host-B.md에 모두 같은 ![[Config/Context.base#By context]]를 넣었습니다. A를 열면 기준 폴더 Area-A에서 A-1.md, A-2.md 두 행이, B를 열면 Area-B에서 B-1.md 한 행이 실제 표에 나타났습니다. A 아래의 Area-A/Sub/Sub-1.md는 후보 자료에 포함되지만 Area-A/Sub가 Area-A와 같지 않아 A의 지정 뷰에서는 빠졌습니다. 원본이 삭제돼서 빠진 것이 아닙니다.

같은 Base의 표시 위치 기준 파일·폴더 (this.file.folder) 선택 뷰 실제 표시된 자료 행
메인 단독 탭 Config/Context.base · Config By context Config/Base-control.md (1)
Area-A/Host-A.md에 삽입 Host-A · Area-A By context Area-A/A-1.md, Area-A/A-2.md (2)
Area-B/Host-B.md에 삽입 Host-B · Area-B By context Area-B/B-1.md (1)

표시 행은 격리 시험 볼트의 실제 화면과 원본 파일을 대조했습니다.

격리 Obsidian의 Config/Context.base 단독 탭에서 By context 뷰의 Base-control 한 행과 context_folder Config가 보이는 실제 화면
C2 실측. 메인 단독 Base의 By context 뷰: Base-control 1행, 기준 폴더 Config. 2026-10-09 격리 Obsidian 데스크톱 창 표시 1.14.4, macOS 27.0. 화면 일부를 가독성을 위해 잘랐으며 실제 제품 화면입니다.

실측 화면 원본 크기로 보기

격리 Obsidian의 Host-A 삽입 By context 뷰에서 A-1과 A-2 두 행, context_folder Area-A가 나타난 실제 화면
C3 실측 A. 같은 Base를 Area-A/Host-A.md에 삽입했을 때 A-1·A-2 두 행. 위 C2와 같은 By context 뷰를 사용했습니다. 격리 Obsidian 창 표시 1.14.4, macOS 27.0. 화면 일부 크롭.

실측 화면 원본 크기로 보기

격리 Obsidian의 Host-B 삽입 By context 뷰에서 B-1 한 행, context_folder Area-B가 나타난 실제 화면
C3 실측 B. 같은 Base·같은 지정 뷰를 Area-B/Host-B.md에 삽입했을 때 B-1 한 행. 격리 Obsidian 창 표시 1.14.4, macOS 27.0. 화면 일부 크롭.

실측 화면 원본 크기로 보기

여섯 행이 뜬다면 this가 잘못된 건가요?

아닐 수 있습니다. 같은 Host-A에서 지정 뷰 삽입 ![[Config/Context.base#By context]]은 A-1·A-2 두 행을 보여 주었지만, 뷰 이름이 없는 ![[Config/Context.base]]는 첫 뷰 All candidates를 열어 여섯 자료 행을 보였습니다. 두 표의 context_folder 열은 모두 Area-A였습니다. 기준 파일은 같은데 적용된 뷰의 필터가 다른 사례입니다.

첫 뷰의 여섯 행은 A-1, A-2, B-1, Base-control, O-1, Sub-1입니다. 이 뷰에는 추가 폴더 비교 조건이 없으므로 file.folder 값은 각기 달라도 표시됩니다. 뷰 이름을 지정하지 않은 삽입이 첫 뷰를 사용한다는 규칙은 Obsidian의 Views 안내와 일치합니다. 예상보다 목록이 넓다면 필터를 지우기 전에 실제 선택 뷰의 이름과 삽입 구문에 #By context가 있는지 확인하세요. C4에서는 Host-A에 기본 뷰 삽입 줄을 의도적으로 추가했으며, 그 수정은 호스트 노트에만 해당합니다. Base 설정과 여섯 자료 노트가 바뀌었다는 결과로 해석하지 않았습니다.

같은 Host-A 노트에서 By context 뷰 2행과 All candidates 기본 뷰 6행이 나란히 세로로 보이고 context_folder는 모두 Area-A인 실제 화면
C4 실측. 같은 Host-A 문맥에서 지정 뷰 By context는 2행, 첫 기본 뷰 All candidates는 6행입니다. 기준 파일 변화가 아니라 뷰 필터 차이입니다. 아래쪽 우측의 앱 상태 바는 원본 화면의 일부입니다. 격리 Obsidian 창 표시 1.14.4, macOS 27.0; 표가 읽히도록 크롭.

실측 화면 원본 크기로 보기

사이드바의 목록은 무엇을 따라 바뀌었나요?

같은 Base의 By context를 오른쪽 사이드바에 표시하고 메인 영역의 활성 노트만 Host-A → Host-B → Host-A로 바꿨습니다. 사이드바 표의 행은 A-1·A-2(기준 Area-A) → B-1(Area-B) → 다시 A-1·A-2(Area-A)였습니다. 사이드바에는 .base 자체를 기준으로 한 고정 목록이 아니라 메인 활성 파일을 참조하는 this가 적용됐다는 공식 설명과 맞는 시험 결과입니다. 사이드바에서 처음 Base를 열었을 때 다른 사이드바 탭이 보였으므로 시험 담당자는 해당 Base 탭을 화면에 드러낸 뒤 기록했습니다. 사이드바 이름이 잘린 캡처만 보지 않고 .base 원문과 앱 뷰 상태도 대조했습니다.

메인 활성 파일 오른쪽에서 선택한 뷰 기준 폴더 사이드바에서 실제 본 행
Area-A/Host-A.md By context Area-A A-1, A-2 (2)
Area-B/Host-B.md By context Area-B B-1 (1)
다시 Area-A/Host-A.md By context Area-A A-1, A-2 (2)

시험 캡처에는 메인 노트와 오른쪽 표가 함께 보입니다.

격리 앱에서 메인 Host-A가 활성일 때 오른쪽 By context 사이드바에 A-1·A-2 두 행과 Area-A 폴더가 보이는 실제 화면
C5-1 실측. 메인 활성 파일 Host-A, 오른쪽 By context: A-1·A-2 두 행. 격리 Obsidian 창 표시 1.14.4, macOS 27.0. 좁은 사이드바 뷰 이름은 화면 자체에서 잘렸으므로 .base 원문과 앱 상태로 대조했습니다. 화면 일부 크롭.

실측 화면 원본 크기로 보기

격리 앱에서 메인 Host-B가 활성일 때 오른쪽 By context 사이드바에 B-1 한 행과 Area-B 폴더가 보이는 실제 화면
C5-2 실측. 메인 활성 파일을 Host-B로 바꾸자 오른쪽 By context에 B-1 한 행이 보였습니다. 격리 Obsidian 창 표시 1.14.4, macOS 27.0. 좁은 사이드바 뷰 이름은 잘림; 원문·상태 대조. 화면 일부 크롭.

실측 화면 원본 크기로 보기

메인 Host-A로 돌아왔을 때 오른쪽 By context 사이드바가 다시 A-1·A-2 두 행과 Area-A 폴더를 보여 주는 격리 앱 실제 화면
C5-3 실측. 메인 활성 파일을 Host-A로 되돌린 뒤 오른쪽 By context가 A-1·A-2 두 행으로 돌아왔습니다. 격리 Obsidian 창 표시 1.14.4, macOS 27.0. 좁은 사이드바 뷰 이름은 잘림; 원문·상태 대조. 화면 일부 크롭.

실측 화면 원본 크기로 보기

표가 달라졌을 때 어디부터 확인하나요?

  1. 메인에서 실제 활성화된 파일과 Base가 단독·삽입·사이드바 중 어디에 보이는지 적으세요. 삽입이라면 삽입 구문을 확인합니다.
  2. 표시된 뷰 이름과 .base 안의 뷰 순서를 확인하세요. #뷰 이름이 없으면 첫 뷰가 나올 수 있습니다. 기본/지정 뷰의 차이를 this의 오류라고 부르지 마세요.
  3. 한 행의 file.folder와 현재 문맥의 this.file.folder를 따로 놓고 비교하세요. 이 글의 정확한 폴더 일치 예에서는 하위 폴더의 파일이 자동 포함되지 않습니다.
  4. 화면에서 사라져도 원본 파일이 남아 있는지 격리 사본에서 확인하세요. 오늘 시험에서는 C4의 호스트 수정 이후 기준과 재열기 후를 비교했을 때 .base와 여섯 자료를 포함한 볼트 파일 9개의 SHA-256이 모두 일치했습니다. 따라서 그 구간의 목록 변화는 원본 자료를 지우거나 다시 쓴 결과가 아닙니다. C4에서 Host-A에 한 줄을 추가한 사실까지 ‘전혀 변경 없음’으로 뭉뚱그리지 않습니다.
  5. 오래된 화면값이 의심되면 기준 파일·뷰·실제 행을 다시 확인하세요. 시험 중 메인 단독 All candidates로 돌아왔을 때 O-1의 context_folder 진단값이 잠시 Area-A로 남았고, By context로 전환했다가 다시 All candidates로 돌아오니 Config로 표시됐습니다. 원인은 확인하지 못했습니다. 즉시 갱신이나 일정한 지연 시간을 약속하는 근거가 아닙니다.

업무 볼트의 필터를 통째로 풀거나 노트를 이동하기보다, 소규모 격리 볼트/복제본에서 자료 두세 개와 호스트 노트로 먼저 구분해 보세요. 이 시험은 단일 메인 pane의 macOS 데스크톱 코어 Bases와 노트 미리보기 삽입에 한정됩니다. Canvas·모바일·여러 메인 pane·Sync·커뮤니티 뷰의 동작을 확인한 결과가 아닙니다. 고정 폴더 범위와 전역/뷰 조건의 교집합이 궁금하다면 기존 Bases 필터 범위 안내가 다른 질문을 다룹니다.

공식 근거: Obsidian Help: Bases syntax, Views (2026-10-09 확인). 앱 관측 근거: 같은 날짜의 격리 볼트 Config/Context.base, C1~C6 화면·행 기록과 보존 해시.

In this article

Stay in the loop
Ready to think more clearly about the tools that matter?
New practical notes, no noise. Keep the useful ideas close.
Subscribe