UseModWiki소스수정/goto매크로버그 페이지의 소스 보기
마지막으로 [b]
-- Loading page list... --
내용출력
로그인[l]
Diary
[f]
최근변경내역
[r]
페이지목록[i]
횡설수설[2]
게시판[3]
링크
수정할 수 없습니다: UseModWiki소스수정/goto매크로버그 는 읽기 전용 페이지입니다.
== # goto 매크로 문제 해결 == * goto 매크로를 사용할 때, 텍스트 필드를 빈 칸으로 두었을 때 에러가 난다. 또한 Go 버튼을 누르지 않고 엔터를 입력할 경우 제대로 동작하지 않는다 * [[Bab2]]님의 패치를 수정, 적용 * 필수 요구 사항: ** [[/RemoveLink함수]] 패치가 적용되어 있어야 한다. * 선택 요구 사항: 없음 * 빈 칸을 입력하거나, 존재하지 않는 페이지를 입력했을 경우는,
$NotFoundPg
환경변수에 지정되어 있는 페이지를 찾아가고, 그 변수가 지정되지 않았다면,
$HomePage
, 즉 첫화면으로 가게 된다. === # wiki.pl 수정 === : {{{#!vim perl sub DoBrowseRequest { ... if ($action eq 'browse') { if ($FreeLinks && (!-f &GetPageFile($id))) { $id = &FreeToNormal($id); } if (($NotFoundPg ne '') && (!-f &GetPageFile($id))) { $id = $NotFoundPg; } ### 추가 if ($id eq '') { $id = $HomePage; } ### &BrowsePage($id) if &ValidIdOrDie($id); return 1; ... } }}}
{{{#!vim perl sub MacroGoto { my ($string) = @_; ############### ### added by gypark ### goto 매크로 개선 $string = &RemoveLink($string); ### ############### return ### 아래 단락을 수정 # "
" . # "
" . # "
"; "
". "
" . " " . "
". "
"; ### ############### } }}}
=== # macros/goto.pl 수정 === {{{#!vim perl sub goto { my ($txt) = @_; $txt =~ s/\&__LT__;goto\((.*?)\)\&__GT__;/&MacroGoto($1)/gei; return $txt; } sub MacroGoto { my ($string) = @_; $string = &RemoveLink($string); return &GetGotoForm($string); } 1; }}} === # 추가 업데이트 내역 === goto 매크로를 쓸 때 인자로 들어가는 스트링이 [[위키네임]]일 경우 문제가 됩니다. 위의 sub MacroGoto 안에 {{{#!vim perl $string = &RemoveLink($string); }}} 을 추가해 주면 됩니다.
ext1.90 * [[/매크로파라메터에이중대괄호허용]]함 * 파라메터에 공백이 들어갔을 경우 (예:
) 첫 단어만 폼에 나오던 문제 해결
ext2.3 * [[/GotoBar개선]]을 위해 추가된 GetGotoForm()함수를 사용하도록 수정함 * 자바스크립트를 사용해서 "wiki.pl/페이지이름" 형태로 URL을 띄우도록 함 === # 의견란 === i tried a link (a la CWIK) as: \\ \\ sub GetPrinterFriendlyLink { \\ my ($id) = @_; \\ my $action; \\ \\ $action = lc(&GetParam('action', '')); \\ \\ if ($action) { \\ return &ScriptLink("action=$action&id=$id&embed=1", T('Printer')); \\ } else { \\ return &ScriptLink("action=browse&id=$id&embed=1", T('Printer')); \\ } \\ } \\ \\ but GetGotoForm of UsemodKr seems "to capture" the action. I have commented in sub GetGotoForm \\ \\ #. &GetHiddenValue("action", "browse") \\ \\ and, for the time being, I don't see drawbacks. \\ \\ Regards.
---- [[위키위키분류]]
UseModWiki소스수정/goto매크로버그
페이지로 돌아가기 |
다른 수정본 보기