변경사항 (가장 최근의 "소소한 수정"부터)
(다른 변경사항 없음)
-3,7 +3,7 |
* name 과 time 자리에 들어갈 수 있는 값에 대해 조건이 복잡하다. 잘못된 값을 넣어 예상하지 못한 출력이 나오는 것을 막아보고자 함이니, 이 매크로를 직접 사용하지 말고 <mysign> 를 사용하는 것을 권장한다. |
* 이런, mysign(name,time) 을 임의로 작성하는 것을 최대한 막으려고 엄격하게 검사를 시켰더니만, $UseAmPm 변수가 0일 경우 (am, pm 을 쓰지 않고 24시간제로 표시) 제대로 치환이 되지 않는 문제가 있었다. 정규표현식을 수정하여 해결. |
: |
{{{perl |
{{{#!vim perl |
sub MacroSubst { |
... |
# 원래 소스 코드에는 < 와 > 로 적혀 있는 것을, {{{ }}} 태그 사용을 위하여 |
-17,7 +17,7 |
} |
}}} |
: 적당한 위치에 MacroMySign 함수 전체를 삽입한다 |
{{{perl |
{{{#!vim perl |
sub MacroMySign { |
my ($author, $timestamp) = @_; |
return "\n<div align=\"right\">-- $author <small>$timestamp</small></div>\n"; |
<mysign(name,time)> 매크로 도입
- 게시판 등에서 <mysign(name,time)> 의 형태로 적으면, 우측으로 정렬되는 서명을 출력한다.
- name 과 time 자리에 들어갈 수 있는 값에 대해 조건이 복잡하다. 잘못된 값을 넣어 예상하지 못한 출력이 나오는 것을 막아보고자 함이니, 이 매크로를 직접 사용하지 말고 <mysign> 를 사용하는 것을 권장한다.
- 이런, mysign(name,time) 을 임의로 작성하는 것을 최대한 막으려고 엄격하게 검사를 시켰더니만, $UseAmPm 변수가 0일 경우 (am, pm 을 쓰지 않고 24시간제로 표시) 제대로 치환이 되지 않는 문제가 있었다. 정규표현식을 수정하여 해결.
-
sub MacroSubst {
...
$txt =~ s/\&__LT__;goto\((.*)\)\&__GT__;/&MacroGoto($1)/gei;
$txt =~ s/\&__LT__;history\((.*)\)\&__GT__;/&MacroHistory($1)/gei;
$txt =~ s/\&__LT__;mysign\(([^,]+),(\d+-\d+-\d+ \d+:\d+.*)\)\&__GT__;/&MacroMySign($1, $2)/gei;
return $txt;
}
- 적당한 위치에 MacroMySign 함수 전체를 삽입한다
sub MacroMySign {
my ($author, $timestamp) = @_;
return "\n<div align=\"right\">-- $author <small>$timestamp</small></div>\n";
}
위키위키분류