아재맛캔디 (14.♡.102.189)
2026년 1월 5일 PM 03:33 · 수정됨(01. 17. 09:53)
안녕하세요~
UPnote 쓰다가 검색이 불편해서 Obsidian 쓰기 시작한지 한달 좀 넘은 초보아재입니다.
이제 메모들은 다 옮겼고, Daily, Weekly 노트를 써보려고 하는데요..
Weekly노트 템플릿을 만드는데서 막혀서... 질문 드립니다.
템플릿에 base파일을 하나 만들어서 링크로 넣었는데요....
base filter에서 이번주에 생성한 노트를 필터링 하려고
file.ctime <= "2026-01-03"
file.ctime >= "2025-12-28"
를 넣어서 Weekly노트를 만들면, 잘 작동합니다.
그래서 템플릿이니까... 날짜 부분을 제목에서 가져오는게 편하니..
첫번째 필터를 아래와 같이 바꾸면 ... 그 부분은 잘 작동합니다.
(제목이 2026-01-03_weekly 같은 형식입니다)
file.ctime <= this.file.name.split("_", 1)
문제는 위 2번째 필터인데요..
이걸 제목에서 날짜(2026-01-03)를 가져와서 일주일 앞으로 바꾸고 싶은데
방법을 모르겠습니다.
Templater 구문이 될까 싶어서
file.ctime >= <% tp.date.now("YYYY-MM-DD", -7, tp.file.title.split("_")[0], "YYYY-MM-DD") %>
이런 식으로도 써 봤는데 에러나서 안되고..
Base 문서를 좀 뒤져보니... 날짜 뒤에 ' - "1d"' 이렇게 쓰는게 있길래..
this.file.name.split("_", 1) - "7d" 혹은 "7day" 혹은 "1w"
이런 것도 안되더라구요...
뭔가 Type이 달라서 안되는 것 같은데... 문서를 살펴봐도 String을 날짜 타입으로 바꾸는 건 못찾겠네요.
혹시 아는 분 계시면.. 방법을 좀 알려주세요.
그럼... _ _)
댓글 (8)
-
냥냥아치
01.11 · 59.♡.163.88
-
아아재맛캔디
→ 냥아치 작성자
01.13 · 14.♡.102.189
@냥아치 님.. 답변 고맙습니다. 내일 아침에 바로 적용해 보겠습니다. -
아아재맛캔디
작성자
01.14 · 14.♡.102.189
@냥아치 님... 몰랐는데, 노트를 동기화해서 새로 받게되면... file.ctime이 동기화해서 받은 시간이 되네요.
그래서 생성시간으로 필터링을 하면, 제가 원하는 1주일간 생성한 노트를 뽑아올 수 없어서..
속성에 created를 만들고 그걸로 date()로 감싸서 정렬을 해봤는데...
역시나 첫번째 필터는 잘 되는데, 2번째 필터에서 작동이 잘 안되네요..
그냥 dataview를 써야 할까 봅니다.
답변 고맙습니다. 그럼... -
냥냥아치
→ 아재맛캔디
01.15 · 211.♡.205.130
원래 대부분의 OS에서 파일의 created time은 관리하기가 쉽지 않습니다. :)
created 속성을 템플릿 weekly 파일이 아니라 1주일간 생성한 노트에 사용하신 것 같은데,
그러면 윗 댓글의 제가 작성한 조건에서 file.ctime만 created로 바꾸면 동작할 것 같습니다.
방금 해봤는데요,
일부 노트에 다음과 같이 created 속성을 추가했습니다.
[https://s3.damoang.net/data/editor/2601/0371b37.png]
그리고 속성 유형은 다음과 같이 날짜로 했고요.
[https://s3.damoang.net/data/editor/2601/0f0e33f.png]
몇 개 노트에 created 속성을 추가한 다음에
(27일 1개, 28일 2개, 1월 2일 1개, 8일 1개 적용)
[https://s3.damoang.net/data/editor/2601/68b9317.png]
다음과 같이 필터를 작성하니 적용되네요.
[https://s3.damoang.net/data/editor/2601/c8d4ce2.png]
참고가 되셨으면 좋겠습니다. :) -
아아재맛캔디
→ 냥아치 작성자
01.15 · 14.♡.102.189
@냥아치 님... 친절한 댓글 정말 고맙습니다.
냥아치님이 올려주신 이미지가... 제가 어제 계속 테스트 해봤던 내용이네요.
결론부터 말씀 드리자면... 제 컴퓨터에선 저 수식이 작동하지 않습니다.
이게 제가 플러그인을 이것저것 막 깔았다 지웠다를 반복해서... 설정이 뭔가 꼬인건지..
윈도우 버전의 에러인지... 저로선 원인을 알수가 없네요.
일단 어제 말씀드린 것 처럼... 첫번째 필터는 잘 작동하는데, 2번째 필터를 넣으면 파일이 하나도 안나옵니다.
[https://s3.damoang.net/data/editor/2601/7dad29e.png]
처음엔 split 함수로 나누면 리스트타입으로 나오니... 그걸 date 타입으로 못바꿔서 에러가 나오는 줄 알았는데..
테스트를 좀 해보니... 두번째 수식에서 나오는 타입은 date 타입이 잘 맞더라구요.
created 속성의 타입은 날짜, 날짜와 시간, 텍스트... 3가지 타입으로 전부 테스트 했습니다.
[https://s3.damoang.net/data/editor/2601/17f501a.png]
방금 아이폰에서 열어봤는데, 아이폰도 똑같이 에러가 나는걸 보면...
맥 버전만 제대로 돌아가는게 아닐까... 추측만 해봅니다. -
냥냥아치
→ 아재맛캔디
01.16 · 211.♡.205.130
저도 type까지 최대한 맞춰서 해봤는데 잘 필터링 되네요.
[https://s3.damoang.net/data/editor/2601/fac875d.png]
각 컬럼별 수식은
- type: (date(this.file.name.split('_')[0])-"6d").isType("date")
- from: (date(this.file.name.split('_')[0])-"6d")
- to: date(this.file.name.split('_')[0]) 입니다.
각 컬럼 별로 찍어봐서 내용에 이상이 없으면 마지막으로 해볼 수 있는 방법으로
마지막 필터의
(date(this.file.name.split('_')[0])-"6d") 식을
(date(this.file.name.split('_')[0])-"6d").format("YYYY-MM-DD") 로 바꿔서 문자열 비교로 해보는 겁니다.
이 마저도 안되면 다른 숨겨진 조건이 있거나
말씀 대로 윈도우 버전의 버그인 것으로 보입니다 :) -
아아재맛캔디
→ 냥아치 작성자
01.16 · 14.♡.102.189
@냥아치 님...
뒤에 format을 붙이니까... 제대로 작동하네요
몇 주를 헤맨걸 한번에 해결했네요.
답변 감사합니다 _ _) -
냥냥아치
→ 아재맛캔디
01.17 · 59.♡.163.88
해결됐다니 다행입니다. {emo:onion-014.gif:50}
아마 OS 별로 Date 처리에 차이가 있나봅니다.
댓글을 작성하려면 이 필요합니다.
본문 내용 대로 12월 28일부터 하려고 6d로 계산했습니다.
```base
views:
- type: table
name: 표
filters:
and:
- file.ctime <= date(this.file.name.split('_')[0])
- file.ctime >= (date(this.file.name.split('_')[0]) - "6d")
```