UseModWiki소스수정/Index화면색인 페이지의 소스 보기
마지막으로 [b]
-- Loading page list... --
내용출력
로그인[l]
Diary
[f]
최근변경내역
[r]
페이지목록[i]
횡설수설[2]
게시판[3]
링크
수정할 수 없습니다: UseModWiki소스수정/Index화면색인 는 읽기 전용 페이지입니다.
== Index 의 페이지 목록을 제목의 첫글자별로 구분 == * 상단 메뉴의 index 를 클릭했을때 기존에 페이지들이 알파벳 순으로 출력되는 것을 개선하여, 첫글자에 따라 A,B,...,가,나,... 등으로 색인을 나눔. * Jof:UseModWiki소스수정/위키목차 를 적용함 * 여기에 다시 추가로, 목록 상단에 각 머리글자로 한 번에 이동할 수 있도록 링크를 추가함 * [[주인장]]이 직접 고침. perl 에 대해 전혀 모른 상태에서 기존 소스만 보고 고친 탓에 지저분하다. * 부작용 : 알려진 것 없음 * 이 두 패치를 동시에 적용하면 다음과 같다. : {{{#!vim perl # 다음의 함수를 통채로 바꿈 sub PrintPageList { my ($pagename); my $count = 0; my $titleIsPrinted = 0; my @han = qw(가 나 다 라 마 바 사 아 자 차 카 타 파 하); my @indexTitle = (0, "A".."Z"); push (@indexTitle, @han, "기타"); my @indexSearch=("A".."Z"); push (@indexSearch, @han, "豈"); print "
", Ts('%s pages found:', ($#_ + 1)), "
\n"; # 상단에 앵커를 가리키는 인덱스 나열 my $count2 = 0; print("\n|"); while ( $count2 <= $#indexTitle ) { if ($count2 == 27) { print("
\n|"); } print("
"); print(" $indexTitle[$count2] "); print("
|"); $count2++; } print "
"; $count2 = 0; foreach $pagename(@_) { next if (&PageIsHidden($pagename)); until ( $pagename lt @indexSearch[$count] && ($count == 0 || $pagename ge @indexSearch[$count-1]) ) { $count++; $titleIsPrinted = 0; last if $count > 40; } if (!$titleIsPrinted) { # 페이지가 없는 색인의 앵커 처리 while ( $count2 <= ($count - 1) ) { print "\n
"; print "
"; $count2++; } print $q->h3("
$indexTitle[$count]
"); $count2 = $count + 1; $titleIsPrinted=1; } print ".... " if ($pagename =~ m|/|); print &GetPageLink($pagename); if (&UserIsAdmin()) { if (-f &GetLockedPageFile($pagename)) { print " " . T('(locked)'); } print " | " . &ScriptLink("action=pagelock&set=1&id=" . $pagename, T('lock')); print " | " . &ScriptLink("action=pagelock&set=0&id=" . $pagename, T('unlock')); if (defined($HiddenPage{$pagename})) { print " | " . T('(hidden)'); } print " | " . &ScriptLink("action=pagehide&set=1&id=" . $pagename, T('hide')); print " | " . &ScriptLink("action=pagehide&set=0&id=" . $pagename, T('unhide')); } print $q->br; print "\n"; } } }}} === 추가 업데이트 내역 === ext1.74g - <toc>매크로 출력과 일관성있게 하기 위하여, gotop.gif 아이콘을 없애고 각 색인항목 글자 자체를 클릭하면 목차로 이동하도록 고침. 위의 함수는 지금까지의 모든 수정이 반영된 형태이고, 이번 수정에서 바뀐 부분은 아래와 같다. {{{#!vim diff diff -u -r1.271 -r1.273 --- wiki.pl 14 Feb 2005 03:55:06 -0000 1.271 +++ wiki.pl 19 Feb 2005 06:28:42 -0000 1.273 @@ -6488,7 +6488,7 @@ my @indexSearch=("A".."Z"); push (@indexSearch, @han, "豈"); - print "
", Ts('%s pages found:', ($#_ + 1)), "
\n"; + print "
", Ts('%s pages found:', ($#_ + 1)), "
\n"; ############### ### replaced by gypark @@ -6548,10 +6548,7 @@ $count2++; } # 앵커를 삽입 - print "\n
"; - print $q->h3($indexTitle[$count] - . "
"); + print $q->h3("
$indexTitle[$count]
"); $count2 = $count + 1; ### gypark 의 색인 패치 ############### }}} ext1.90b - "A", "B", ... ,"가", "나", ... ,"하"라는 이름의 페이지가 있을 경우 index 출력이 엉망이 되는 문제 수정
=== 사용자 의견 ===
---- [[위키위키분류]]
UseModWiki소스수정/Index화면색인
페이지로 돌아가기 |
다른 수정본 보기