DokuWiki에서 페이지들을 분류하기 위해 “네임스페이스(이름 공간)“을 사용할 수 있습니다.
네임스페이스를 따로 만들 필요가 없습니다; 단순히 페이지 이름안에 콜론 문자(:)들과 같이 사용해서 새로운 페이지를 만들면 됩니다. 마지막 콜론문자 뒤에 오는 항목은 페이지 이름 자신이고 다른 부분들은 네임스페이스들입니다. 페이지 이름에 사용되는 모든 네임스페이스들은 존재하지 않는 경우에는 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”는 현재 네임스페이스 아래에 위치. |
: [..namespace:] – 상위 네임스페이스 – 만일 다른 것과 마찬가지로 공식적으로 사용되는 것이라면 문서에 공식적으로 설명해야 하지 않나요?
: 현재 네임스페이스가 언제나 ':'라면 첫 예는 잘못 이해될 수도 있을 것 같은데요. 문서를 수정해 주세요!
현재 네임스페이스는 참조하려는 페이지에 해당되기 때문에 예제는 정상적입니다.
: sidebar에서 현재 네임스페이스에서의 상대 경로를 지정하고 싶은데 적용이 안되는군요? 혹시 해보신분?
네임스페이스 내 모든 문서들이 삭제되면 네임스페이스는 논리적으로 더 이상 존재할 필요가 없습니다. DokuWiki는 보통 빈 디렉토리는 삭제합니다.
페이지 이동 플러그인을 사용하여 이전 네임스페이스에서 새로운 네임스페이스로 페이지들 각각을 옮길 수 있습니다. 만일 본인 요구에 부합되는지 보려면 플러그인 문서를 꼼꼼히 읽어 보시기 바랍니다.
수작업이 더 어렵습니다:
data/pagesdata/media (있는 경우에만)data/meta에서 네임스페이스를 위한 메타 데이타들을 삭제data/attic에서 네임스페이스를 위한 attic 데이타들을 삭제(하거나 이전 버전을 보관하고 싶다면 다른 곳에 옮겨 놓습니다.)예를 들어 unix 호스트에서 작업을 한다면:
mv /dokuwiki_base/data/pages/old_namespace /dokuwiki_base/data/pages/new_namespacemv /dokuwiki_base/data/media/old_namespace /dokuwiki_base/data/media/new_namespacerm -Rf /dokuwiki_base/data/meta/old_namespacerm -Rf /dokuwiki_base/data/attic/old_namespace
old_namespace 와(또는) new_namespace 단어들이 비-라틴 문자셋(예: 그리스나 러시아)이라면 인코딩될 필요가 있다는 것을 주의하기 바랍니다.
어찌 되었든, 아직도 많은 것들이 남아 있습니다. – 예를 들면 data/changes.log, 캐쉬된 여러가지 파일들(.idx파일을 포함해서).
단지 아래처럼(unix에서 동작) 빈 상태에서 시작하는 것도 가능하지만, 이 작업은 모든 기록 정보(예를 들어 최근에 바뀐 것)를 잃어버린다는 것을 주의하기 바랍니다:
cat /dev/null > /dokuwiki_base/data/changes.logrm -Rf /dokuwiki_base/data/attic/*rm -Rf /dokuwiki_base/data/cache/?rm -Rf /dokuwiki_base/data/cache/*.idxrm -Rf /dokuwiki_base/data/cache/purgefile이 것은 복잡하게 얽힌 작업입니다.(실제 해야 하는 것보다 많은 것들을 빠뜨렸을지도 모릅니다.) 수작업을 했을 때 발생하는 문제를 피하기 위해 전체 캐쉬와 이전 버전을 지우거나 위키 전체의 검색-색인을 (재)생성하는 몇가지 플러그인을 사용할 수 있습니다.
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.