Homemade Source/Dataview snippets

[Dataviewjs] 랜덤노트 출력하기

반응형

랜덤 노트 5개를 추출해서 테이블 목록으로 출력해주는 dataviewjs snippet입니다.

예시

Dataview Snippet

```dataviewjs
const FOLDER_PATH = "폴더명";
const NUM_FILES = 5;

let filesInFolder = Array.from(dv.pages().where(p => p.file.folder === FOLDER_PATH));
let randomFiles = [];

for (let i = 0; i < NUM_FILES && filesInFolder.length > 0; i++) {
    let randomIndex = Math.floor(Math.random() * filesInFolder.length);
    randomFiles.push(filesInFolder[randomIndex]);
    filesInFolder.splice(randomIndex, 1);
}

dv.table(["File"], randomFiles.map(f => [f.file.link]));
```

const FOLDER_PATH = "폴더명";
const NUM_FILES = 5;

폴더명과 출력숫자를 변경하시면 원하는 폴더에서 숫자만큼 출력해줍니다.

 

```dataviewjs
const FOLDER_PATH = "폴더명"; 
const NUM_FILES = 5;

let filesInFolder = Array.from(dv.pages().where(p => p.file.folder === FOLDER_PATH));
let randomFiles = [];

for (let i = 0; i < NUM_FILES && filesInFolder.length > 0; i++) {
    let randomIndex = Math.floor(Math.random() * filesInFolder.length);
    randomFiles.push(filesInFolder[randomIndex]);
    filesInFolder.splice(randomIndex, 1);
}

dv.list(randomFiles.map(f => f.file.link));
```

리스트 스타일로 출력해주는 dataviewjs snippet입니다.

Templater Snippet

 

[Templater] 랜덤노트 출력하기

랜덤문서를 출력하는 templater snippet입니다. const noOfNotes = 5 여기엔 출력할 숫자를, FROM "폴더명" 폴더명이나 태그명(ex. FROM #태그명)을 입력해주세요 (폴더명은 대소문자를 구분합니다.) 필요한 곳

kaminik.tistory.com


반응형