====== 命名空间 ======
----
当把一个页面(词条)看作文件时,一个命名空间就相当于一个目录或者文件夹。
在本维基中,您可以采用命名空间来将页面分类。
命名空间的命名规则与页面命名规则相同,请参考[[wiki:页面名|页面名]]。
本维基包含以下三个顶级的命名空间: wiki、playground和user。
其中wiki用于放正式的词条,playground用于[[playground:playground|测试练习]],user用于放[[user:start|注册用户]]可访问内容。
下面给出词条(页面)c和词条(页面)d的结构,其中b是命名空间名,不是[[页面名]]。
根级命名空间
|
+-- 'wiki' 命名空间
| |
| +-- 'b' 命名空间
| | |
| | +-- 'c' 页面名
| |
| +-- 'd' 页面名
|
|
+-- 'playground' 命名空间
|
|
+-- 'user' 命名空间
----
====== 命名空间的名词解释 ======
命名空间:\\
其实就是本维基网站的data/pages下建立的目录\\
如果你不使用命名空间.那么你所有建立的页面都到保存在data/pages下,变得非常难以管理.\\
根目录:\\
指的是本维基网站下data/pages的路径为根目录.所有页面中创建目录和文档都会保存到这里面.\\
^ 例子: |如果.你要建立一个叫 example 的页面 |
| example | 表示当前目录下建立了一个的"example"页面。 |
| :example | 表示根目录(这里的根目录表示data/pages)下建立了一个叫做"example"页面。 |
| wiki:example | 表示在"wiki"目录下建立了一个叫的"example"的页面。 |
|:::|(如果根目录下没有叫wiki的目录\\ 会自动在建立一个叫wiki的目录.不需要去服务器上添加) |
|test:wiki:example | 表示在"test/wiki"目录下建立了一个叫的"example"的页面。 |
|:::|(如果根目录下没有叫test的目录或test目录下没有wiki目录\\ 会自动在建立这两层的目录test/wiki.不需要去服务器上添加) |
|.wiki:example |表示当前目录下的wiki目录里建立了一个叫example的页面|
|:::|(假如你现在在根目录的test目录下\\ 那就会在test目录下建立一个wiki目录.再在wiki目录里建立一个example页面) |
----
===== 创建命名空间 =====
你不需要独立地创建[[wiki:命名空间|命名空间]],只需简单地在[[wiki:页面名|页面名]]中使用冒号就可以创建。在最后一个冒号之后的语言符号(token)就是页面本身的名字,其他的语言符号都是命名空间。本维基会自动创建页面用到的、不存在的所有命名空间。
^ 例子: ||
| example | 表示当前命名空间的"example"页面。 |
| :example | 表示根部命名空间的"example"页面。 |
| wiki:example | 表示命名空间"wiki"中的页面"example"。命名空间"wiki"位于根部命名空间之下。 |
| ns1:ns2:example | 表示命名空间ns2中的"example"页面。命名空间ns2位于命名空间ns1下面;命名空间ns1位于根部命名空间下。 |
| :ns1:ns2:example | 同上。 |
| .ns1:ns2:example | 表示名命名空间ns2下的"example"页面。命名空间ns2位于命名空间ns1下面;命名空间ns1位于当前命名空间下。 |
| .ns1:ns2: | 表示命名空间ns2的"开始"页面。命名空间ns2位于命名空间ns1下面;命名空间ns1位于当前命名空间下。 |
同样,%%[..namespace:]%% -- 表示上级命名空间,——这应该记载在文档中。
----
===== 删除命名空间 =====
命名空间内的所有页面都被移除之时,该命名空间逻辑上不再存在。本维基通常也会删除这个刚清空的文件夹。
----
===== 命名空间默认链接 =====
对于以冒号结尾的链接ID(linked)%%[[foo:bar:]]%%,可能指向命名空间下的默认文件。
链接指向哪个页面,取决于所存在的特定名字的文件。对于%%[[foo:bar:]]%%,会检测以下页面:
foo:bar:$conf['start']
foo:bar:bar
foo:bar
系统按照上面的顺序检测页面,并会链接到最先找到的页面。对于这些链接,不会在链接中检查多种格式(autoplural linking)。
----