옵시디언 활용/Templater

Templater 기초: 확장 명령어

반응형

문서 내용에 변수 사용

<%* const name = "홍길동"; %>
안녕하세요, <%= name %>님!

외부 스크립트 실행하기

<%* await tp.user.executeExternalScript("스크립트 경로"); %>

문서 내 특정 단어 카운트하기

<%*
   const content = await tp.file.content(); 
   const count = (content.match(/단어/g) || []).length; 
%>

'단어'가 문서에 <%= count %>번 나타납니다.

파일 내용 삽입하기

<%* await tp.file.include("[[파일명]]") %>

이 명령어는 지정된 파일의 내용을 현재 문서에 삽입합니다.

조건문 사용하기

<%* if (조건) { %>
   조건이 참일 때 실행될 코드
<%* } else { %>
   조건이 거짓일 때 실행될 코드
<%* } %>

예시
<%* if (tp.file.title.includes("회의록")) { %>
   이 문서는 회의록입니다.
<%* } else { %>
   이 문서는 일반 문서입니다.
<%* } %>

조건에 따라 다른 동작을 수행하도록 스크립트를 작성할 수 있습니다.

반복문 사용하기

<%* for (let i = 0; i < 반복횟수; i++) { %>
   반복될 코드
<%* } %>

지정된 횟수만큼 코드를 반복 실행합니다.

매크로 정의 및 사용하기

<%* 
tp.user.매크로이름 = function() { return "값" } 
%> 

<% tp.user.매크로이름() %>

사용자 정의 매크로를 정의하고, 이를 문서 내에서 사용할 수 있습니다.

텍스트 조작

대문자로 변환: <% tp.string.uppercase("your text") %>  
소문자로 변환: <% tp.string.lowercase("Your Text") %>  

사용자 입력 받기

<%* let userResponse = await tp.system.prompt("당신의 이름은 무엇인가요?") %>
안녕하세요, <%= userResponse %>님!

이 명령어는 사용자에게 팝업 창을 통해 질문을 하고 입력을 받을 수 있게 해줍니다. 반환된 값은 변수에 저장하거나 직접 사용할 수 있습니다.

<%*
let options = ["옵션1", "옵션2", "옵션3"];
let choice = await tp.system.suggester(options, options);
tR += "선택된 옵션: " + choice;
%>

tp.system.suggester(options, displayOptions) 함수를 사용하여 사용자에게 선택 목록을 제공하고 선택을 받을 수 있습니다. options는 실제 값이고 displayOptions은 사용자에게 보여질 값입니다.

마크다운을 HTML로 변환하기

<%*
const markdown = "이것은 **마크다운** 문법으로 작성된 문장입니다.";
const html = tp.markdown.html(markdown);
tR += html;
%>

이 코드는 마크다운 형식의 문자열을 HTML로 변환하고, 변환된 HTML을 문서에 추가합니다.

파일 생성

<% await tp.file.create_new("파일명", "폴더경로") %>

새로운 파일을 지정한 폴더 경로에 생성합니다. 파일명과 폴더 경로를 지정할 수 있습니다.

파일 복사

<% await tp.file.copy("destination/path") %>

폴더 내 모든 파일 이름 가져오기

<%*
const files = await tp.system.list("문서");
tR += "폴더 내 파일들: " + files.join(", ");
%>

이 스크립트는 문서 폴더 내 모든 파일의 이름을 가져와서 목록으로 출력합니다.

변수 선언 및 사용

<%* let 변수명 = "값"; %>
<%* tR += 변수명; %>

let을 사용하여 변수를 선언하고 값을 할당할 수 있습니다. tR을 사용하여 템플릿 결과에 값을 추가할 수 있습니다.

JavaScript 코드 실행

<%* await tp.user.yourCustomFunction() %>

tp.user를 통해 사용자 정의 JavaScript 함수를 실행할 수 있습니다. 이를 통해 복잡한 로직이나 데이터 처리를 템플릿 내에서 직접 수행할 수 있습니다.

파일의 내용을 클립보드에 복사하기

<% tp.file.clipboard() %>

 

반응형