값은 문서 맨 위 #!var 디렉티브로 정하고, 본문에서 {{이름}} 으로 꺼냅니다.
#!var 제품명 AhaWiki
#!var 담당자 홍 길동
= {{제품명}} 계약서
담당: {{담당자}}#!var 는 문서 맨 위에 있어야 합니다. 디렉티브는 #! 로 시작하는 줄이 이어지는 동안만 읽고, #! 아닌 줄이 처음 나오면 거기서 끝납니다. #!read · #!write 같은 다른 디렉티브와 나란히 두면 됩니다.#!var 계약금액 금100,000,000원 은 그대로 들어갑니다. 이름과 값은 양쪽 공백을 떼고 저장합니다.} 만 아니면 무엇이든 이름이 됩니다.{{없는이름}} 은 오류가 아니라 {{없는이름}} 으로 출력됩니다.#!Paper 문서에서는 백틱 안도 치환됩니다 — Paper 가 위키 문법보다 먼저 치환하기 때문입니다.치환은 문서 하나 안에서만 일어납니다. 다른 문서의 변수를 꺼내 쓸 수는 없습니다.
[[[...]]] 블록 안에서도 치환됩니다. 다만 InterpreterPaper 의 class · docId 와 InterpreterGantt 의 defaultEst 는 치환이 아니라, 그 인터프리터가 받은 본문 맨 위의 #!var 줄에서 읽습니다. 블록으로 쓸 때는 [[[#!Gantt 바로 아랫줄에 두고, 바깥 문서의 #!var 는 블록 안 인터프리터에게 가지 않습니다.
2026-09-08 이전에는 [[Set(이름,값)]] · [[Get(이름)]] 매크로가 같은 일을 했습니다. MacroGetMacroSet 참고. 두 체계가 나란히 있었고, 실사용은 #!var 쪽으로 이미 기울어 있었습니다 — 조사 시점에 #!var 는 329곳, Set/Get 은 문서 3장뿐이었습니다. 그 3장을 옮기고 매크로는 제거했습니다.
[[Set]] 은 문서 중간에서도 값을 정할 수 있었지만 #!var 는 맨 위에만 옵니다. 옮긴 문서들은 이미 전부 맨 위에 모아 두고 있어서 실제로 잃은 것은 없었습니다.
Similar pages by cosine similarity. Words after page name are term frequency.