"UseModWiki소스수정/TemplateMacro" 페이지의 변경 내역| -1,4 +1,6 |
| == TemplateMacro 기능 == |
| See also [[다른페이지의내용을포함하여출력하기]] |
| [[/Template]] 기능을 사용할 때, 템플릿페이지의 내용에 comments 나 mysign 같은 전처리 매크로를 넣으면 템플릿페이지를 저장할 때 치환되어 버리므로 사용할 수 없다. 따라서 전처리 매크로가 치환되지 않도록 앞뒤에 다른 문자를 넣거나 해야 되는데 그러면 이번에는 새 페이지를 만들때 이런 문자들이 그대로 복사되므로 다시 지워야 한다. |
| 또 Jof:위키의일기장화프로젝트 를 응용한 [[Diary]] 같은 곳에서 새 페이지를 만들때 페이지 이름을 매번 직접 적어줘야 하는 게 불편하다. |
| -29,10 +31,12 |
| <template_subpagename> |
| * 현재 수정하는 페이지가 [[하위페이지]]일 경우 하위페이지의 이름으로 치환된다. |
| * 하위페이지가 아닐 경우는 공백으로 치환된다. |
| <template_date> |
| * 오늘 날짜를 "년-월-일" 형식으로 표시한다. |
| === wiki.pl 수정 === |
| [[/Template]]에서 추가되었던 함수의 끝을 다시 고친다. |
| {{{perl |
| {{{#!vim perl |
| sub GetTemplatePageText { |
| ... |
| my %temp_Text = split(/$FS3/, $temp_Section{'data'}, -1); |
| -44,7 +48,7 |
| }}} |
| 함수 통채로 추가. 차후에 매크로를 추가하고 싶으면 이 함수에 추가해 준다. |
| {{{perl |
| {{{#!vim perl |
| ### template macro |
| sub TemplateMacroSubst { |
| my ($newpage, $text) = @_; |
| -63,11 +67,15 |
| $text =~ s/<template_pagename>/$newpage/gi; |
| $text =~ s/<template_mainpagename>/$newpage_main/gi; |
| $text =~ s/<template_subpagename>/$newpage_sub/gi; |
| $text =~ s/<template_date>/&CalcDay($Now)/gei; |
| return "$text"; |
| } |
| }}} |
| === 추가 업데이트 내역 === |
| ext1.81 - template_date 매크로 추가 |
| === Notes === |
| ^^고맙습니다. 오늘은 바빠서 적용을 못 시켰고 내일 적용시켜 볼게요. <mysign([[Canday]],2003-10-6 11:42 pm)> |