UseModWiki소스수정/인터위키이미지 페이지의 소스 보기
마지막으로 [b]
-- Loading page list... --
내용출력
로그인[l]
Diary
[f]
최근변경내역
[r]
페이지목록[i]
횡설수설[2]
게시판[3]
링크
수정할 수 없습니다: UseModWiki소스수정/인터위키이미지 는 읽기 전용 페이지입니다.
== InterWiki 로 된 이미지 화일 처리 == * InterWiki 의 개념을 생각해 볼 때.. 이미지 화일을 인터위키로 적는다는 것 자체가 편법이긴 하지만... 어쨌거나... :-) * "인터위키이름:그림.jpg" 형식으로 적을 경우, 자동으로 그림이 출력되지 않는 문제가 있었다. * [[조프]]님의 패치를 적용 : {{{#!vim perl sub InterPageLink { ### 다음 라인 수정 # my ($id) = @_; my ($id, $useImage) = @_; ### my ($name, $site, $remotePage, $url, $punct); ($id, $punct) = &SplitUrlPunct($id); $name = $id; ($site, $remotePage) = split(/:/, $id, 2); $url = &GetSiteUrl($site); return ("", $id . $punct) if ($url eq ""); $remotePage =~ s/&/&/g; # Unquote common URL HTML $url .= $remotePage; ### 다음 단락 추가 if ($useImage && ($url =~ /^(http:|https:|ftp:).+\.$ImageExtensions$/)) { $url = $1 if ($url =~ /^https?:(.*)/ && $1 !~ /^\/\//); return ("
", $punct); } ### 여기까지 return ("
$name
", $punct); } }}} : 위에서 볼 수 있듯이
InterPageLink
에 두번째 파라메터가 추가되었다. 호출해주는 곳 각각을 적절히 수정해주어야 한다. : {{{#!vim perl sub CommonMarkup { ... ### 다름 라인 수정 # s/$InterLinkPattern/&StoreInterPage($1)/geo; s/$InterLinkPattern/&StoreInterPage($1, $useImage)/geo; ### ... } }}} : {{{#!vim perl sub StoreInterPage { ### 다음 라인 수정 # my ($id) = @_; my ($id, $useImage) = @_; ### my ($link, $extra); ### 다음 라인 수정 # ($link, $extra) = &InterPageLink($id); ($link, $extra) = &InterPageLink($id, $useImage); ### # Next line ensures no empty links are stored $link = &StoreRaw($link) if ($link ne ""); return $link . $extra; } }}} ---- [[위키위키분류]]
UseModWiki소스수정/인터위키이미지
페이지로 돌아가기 |
다른 수정본 보기