====== 네임스페이스 ====== [[DokuWiki]]에서 페이지들을 분류하기 위해 "네임스페이스(이름 공간)"을 사용할 수 있습니다. ===== 네임스페이스 생성 ===== 네임스페이스를 따로 만들 필요가 없습니다; 단순히 [[pagename|페이지 이름]]안에 콜론 문자('':'')들과 같이 사용해서 새로운 페이지를 만들면 됩니다. 마지막 콜론문자 뒤에 오는 항목은 페이지 이름 자신이고 다른 부분들은 네임스페이스들입니다. 페이지 이름에 사용되는 모든 네임스페이스들은 존재하지 않는 경우에는 DokuWiki는 자동으로 네임스페이스들을 만듭니다. ^예:^^ |example|현재 네임스페이스 내 페이지 "example".| |:example|root 네임스페이스 내 페이지 "example".| |wiki:example| 네임스페이스 "wiki" 내 페이지 "example".\\ 네임스페이스 "wiki"는 root네임스페이스 아래에 위치.| |ns1:ns2:example| 네임스페이스 "ns2" 내 페이지 "example".\\ 네임스페이스 "ns2"는 ns1네임스페이스 아래에 위치.\\ 네임스페이스 "ns1"는 root네임스페이스 아래에 위치.| |:ns1:ns2:example|위 행과 동일.| |.ns1:ns2:example| 네임스페이스 "ns2" 내 페이지 "example".\\ 네임스페이스 "ns2"는 ns1네임스페이스 아래에 위치.\\ 네임스페이스 "ns1"는 현재 네임스페이스 아래에 위치.| |.ns1:ns2:|네임스페이스 "ns2" 내 페이지 "start".\\ 네임스페이스 "ns2"는 ns1네임스페이스 아래에 위치.\\ 네임스페이스 "ns1"는 현재 네임스페이스 아래에 위치.| FIXME: %%[..namespace:]%% -- 상위 네임스페이스 -- 만일 다른 것과 마찬가지로 공식적으로 사용되는 것이라면 문서에 공식적으로 설명해야 하지 않나요? FIXME: 현재 네임스페이스가 언제나 ':'라면 첫 예는 잘못 이해될 수도 있을 것 같은데요. 문서를 수정해 주세요! >현재 네임스페이스는 참조하려는 페이지에 해당되기 때문에 예제는 정상적입니다. FIXME: sidebar에서 현재 네임스페이스에서의 상대 경로를 지정하고 싶은데 적용이 안되는군요? 혹시 해보신분? ===== 네임스페이스 삭제 ===== 네임스페이스 내 모든 문서들이 삭제되면 네임스페이스는 논리적으로 더 이상 존재할 필요가 없습니다. DokuWiki는 보통 빈 디렉토리는 삭제합니다. ===== 네임스페이스의 이름을 바꾸는 방법은? ===== [[http://www.isection.co.uk/doku.php|페이지 이동 플러그인]]을 사용하여 이전 네임스페이스에서 새로운 네임스페이스로 페이지들 각각을 옮길 수 있습니다. 만일 본인 요구에 부합되는지 보려면 플러그인 문서를 꼼꼼히 읽어 보시기 바랍니다. 수작업이 더 어렵습니다: * 아래 디렉토리들에서 네임스페이스에 해당하는 디렉토리 이름을 변경합니다: * ''data/pages'' * ''data/media'' (있는 경우에만) * ''data/meta''에서 네임스페이스를 위한 메타 데이타들을 삭제 * ''data/attic''에서 네임스페이스를 위한 attic 데이타들을 삭제(하거나 이전 버전을 보관하고 싶다면 다른 곳에 옮겨 놓습니다.) 예를 들어 unix 호스트에서 작업을 한다면: * ''mv /dokuwiki_base/data/pages/old_namespace /dokuwiki_base/data/pages/new_namespace'' * ''mv /dokuwiki_base/data/media/old_namespace /dokuwiki_base/data/media/new_namespace'' * ''rm -Rf /dokuwiki_base/data/meta/old_namespace'' * ''rm -Rf /dokuwiki_base/data/attic/old_namespace'' ''old_namespace'' 와(또는) ''new_namespace'' 단어들이 비-라틴 문자셋(예: 그리스나 러시아)이라면 인코딩될 필요가 있다는 것을 주의하기 바랍니다. * //변경된// 네임스페이스내의 페이지들에 대한 모든 링크들은 고쳐져야 합니다.(직접 페이지를 편집해서) (변경하기 전에 각 페이지들의 백-링크들을 살펴보면 발견할 수 있습니다.) * 새로운 네임스페이스 내의 모든 페이지들을 열어봅니다. 이 작업은 변경된 네임스페이스 내의 빠진 색인 정보나 메타 데이타를 만들어 줍니다. 어찌 되었든, 아직도 많은 것들이 남아 있습니다. -- 예를 들면 ''data/changes.log'', 캐쉬된 여러가지 파일들(''.idx''파일을 포함해서). 단지 아래처럼(unix에서 동작) ''빈 상태''에서 시작하는 것도 가능하지만, 이 작업은 모든 기록 정보(예를 들어 ''최근에 바뀐 것'')를 잃어버린다는 것을 주의하기 바랍니다: * ''cat /dev/null > /dokuwiki_base/data/changes.log'' * ''rm -Rf /dokuwiki_base/data/attic/*'' * ''rm -Rf /dokuwiki_base/data/cache/?'' * ''rm -Rf /dokuwiki_base/data/cache/*.idx'' * ''rm -Rf /dokuwiki_base/data/cache/purgefile'' * 위키의 모든 페이지를 열어봅니다. 이 것은 복잡하게 얽힌 작업입니다.(실제 해야 하는 것보다 많은 것들을 빠뜨렸을지도 모릅니다.) 수작업을 했을 때 발생하는 문제를 피하기 위해 전체 캐쉬와 이전 버전을 지우거나 위키 전체의 검색-색인을 (재)생성하는 몇가지 [[plugins|플러그인]]을 사용할 수 있습니다. ===== 네임스페이스 기본 연결 ===== colon문자(':')와 함께 linkid로 끝나는 네임스페이스의 기본 파일로 링크를 하는 것이 가능합니다. %%[[foo:bar:]]%% 페이지에 연결하는 링크는 실제 파일의 존재에 달려있습니다. 예를 들어 %%[[foo:bar:]]%%는 다음 페이지들을 검사합니다: foo:bar:$conf['start'] foo:bar:bar foo:bar 페이지가 존재하는지 위 순서대로 검사하고 존재하는 페이지중 처음 페이지로 연결을 시도합니다. 여러 페이지에 대한 연결은 하지 않습니다. :!: **이 기능은 오로지 2006-09-28 RC1 이상 버전에서 동작합니다.** ===== 번역 ===== //english version: dokuwiki-2006-11-06. // //Add your email here if you created translated or modified whole or part of this page.// * //[[bootmeta@zoo.com|jk Lee]] - real mail domain is gmail, not zoo.com for spam filtering 2007-2-6 created//