UseModWiki소스수정/단축키 페이지의 소스 보기
마지막으로 [b]
-- Loading page list... --
내용출력
로그인[l]
Diary
[f]
최근변경내역
[r]
페이지목록[i]
횡설수설[2]
게시판[3]
링크
수정할 수 없습니다: UseModWiki소스수정/단축키 는 읽기 전용 페이지입니다.
== 탐색을 편하게 하기 위한 단축키 추가 (optional) == * 마우스를 최대한 사용하지 않고 탭키와 엔터키를 사용하여 서핑을 할 수 있도록 [[UseModWiki단축키]]들을 추가함 * 부작용: ** 딱히 문제가 생기지는 않으나, 소스 코드 내에서 제공하는 링크 생성 함수들(
GetSearchLink, ScriptLink, GetPageLink, GetEditLink
등)을 사용하지 않고 직접 html 코드를 뿌리기 때문에, 일관성을 떨어뜨리고, 차후에 소스 코드를 다시 수정할 때 복잡해질 우려가 있다. === 검색란에 Alt+S 단축키 할당 === * Alt+S 를 누르면 상단메뉴 검색란에 커서가 옮겨가도록 수정 * 겸사겸사, 검색란 왼쪽에 있는 "Search:" 라는 문자열도 [[UseModWiki번역화일]]의 적용을 받도록 하였다. : {{{#!vim perl sub GetSearchForm { my ($result); ### 다음 부분을 변경 # $result = "Search:
" # . $q->textfield(-name=>'search', -size=>12) # . &GetHiddenValue("dosearch", 1); $result = T('Search:') . "
" . &GetHiddenValue("dosearch", 1); ### return $result; } }}} === 사이트 로고 이미지에 Alt+W 할당 === * Alt+W 를 누르면 로고 이미지가 선택되고, 그 상태에서 엔터키를 누르면 홈페이지 대문으로 이동한다. : {{{#!vim perl sub GetHeader { ... if ((!$embed) && ($LogoUrl ne "")) { $logoImage = "img src=\"$LogoUrl\" alt=\"$altText\" border=0"; if (!$LogoLeft) { $logoImage .= " align=\"right\""; } ### 다음 라인을 아래와 같이 바꾼다 # $header = &ScriptLink($HomePage, "<$logoImage>"); $header = "
<$logoImage>
"; ### } if ($id ne '') { ... } }}} === 페이지 상단에 Alt+Z 할당 === * 상단에 "Bottom" 이라는 링크를 추가 * Alt+Z 를 누르면 그 링크로 이동하고, 엔터키를 누르면 페이지 제일 마지막에 있는 "Top" 링크로 이동 * 로고 이미지로 가는 단축키가 있으니 굳이 이 링크가 필요할까 싶긴 한데, 반대로 마우스로만 서핑하는 경우 클릭 한 번에 페이지 끝으로 이동할 방법이 있어야겠기에 추가하였다. 썩 좋은 미관은 아니군. : {{{#!vim perl sub GetHeader { ... $result .= $q->h1($header . $title); } ### 다음 라인 추가 $result .= "\n
". T('Bottom') . "
\n"; ### if (&GetParam("toplinkbar", 1)) { # Later consider smaller size? ... } }}} === 페이지 하단에 Alt+X 할당 === * 하단에 "Top" 이라는 링크를 추가 * Alt+X 를 누르면 이 링크로 이동하고, 엔터키를 누르면 페이지 상단의 "Bottom" 링크로 이동한다. * [[Bab2]] 님의 제보로 (감사합니다), $FooterNote 를 사용자가 따로 설정해 둔 경우 제대로 동작하지 않는 문제가 있다는 것을 발견하고 수정했음. * $FooterNote 에 align=right 속성을 가진 이미지 등이 올 경우 Top 링크가 이미지와 같은 라인에 포함되어 버릴 수 있다. $FooterNote 의 내용을 <p align=right>내용</p> 와 같이 적어넣으면 해결된다. : {{{#!vim perl sub GetMinimumFooter { # 함수의 본문을 통채로 바꾼다. # if ($FooterNote ne '') { # return T($FooterNote) . $q->end_html; # Allow local translations # } # return $q->end_html; my $result = ''; if ($FooterNote ne '') { $result .= T($FooterNote); # Allow local translations } $result .= "\n
" . T('Top') . "
\n" . $q->end_html; return $result; } }}} === 텍스트 편집영역에 Alt+I 할당 === * 페이지를 수정할 때나, 관리자 모드에서 링크관리 등을 할 때 Alt+I 를 누르면 텍스트 편집영역으로 커서가 이동한다. * edit conflict 가 발생할 때는, 편집영역이 두 개가 나타난다. (저장될 텍스트, 자신이 입력한 텍스트) 이 때 두 편집 영역에 동시에 같은 단축키가 할당되는 문제가 있다. 그런데 Internet Explorer 에서 테스트해봤더니, Alt+I 를 누를 때마다 커서가 양쪽 창을 번갈아가며 이동하길래, 차라리 잘 됐다..고 생각하고 넘어가기로 했다. :-) : {{{#!vim perl sub GetTextArea { my ($name, $text, $rows, $cols) = @_; ### 이건 부등호 처리문제 패치에서 적용한 라인 $text =~ s/(\&)/\&/g; ### 아래의 두 return 문에 accesskey 값을 추가한다. # if (&GetParam("editwide", 1)) { # return $q->textarea(-name=>$name, -default=>$text, # -rows=>$rows, -columns=>$cols, -override=>1, # -style=>'width:100%', -wrap=>'virtual'); # } # return $q->textarea(-name=>$name, -default=>$text, # -rows=>$rows, -columns=>$cols, -override=>1, # -wrap=>'virtual'); if (&GetParam("editwide", 1)) { return $q->textarea(-accesskey=>'i', -name=>$name, -default=>$text, -rows=>$rows, -columns=>$cols, -override=>1, -style=>'width:100%', -wrap=>'virtual'); } return $q->textarea(-accesskey=>'i', -name=>$name, -default=>$text, -rows=>$rows, -columns=>$cols, -override=>1, -wrap=>'virtual'); ### } }}} ---- [[위키위키분류]]
UseModWiki소스수정/단축키
페이지로 돌아가기 |
다른 수정본 보기