ShellessWiki

No Shell Just a Ghost World

用户工具

站点工具


zh:namespaces

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
zh:namespaces [2025/11/24 13:03] – 移除 - 外部编辑 (未知日期) 127.0.0.1zh:namespaces [2025/11/24 15:22] (当前版本) admin
行 1: 行 1:
 +====== 命名空间 ======
 +
 +当把一个页面(Page)比作文件时,一个命名空间(namespace)就相当于一个目录或者文件夹。在[[some:shellesswiki]]中,您可以采用命名空间来将页面分类。命名空间的命名规则与页面命名规则相同,请参考[[some:pagenames]]。
 +
 +
 +====== 命名空间的名词解释 ======
 +//以下内容为heiljsf对caii的翻译进行的解释。//
 +
 +命名空间:\\ 
 +其实就是 ShellessWiki 的 data/pages 下建立的目录\\ 
 +如果你不使用命名空间.那么你所有建立的页面都到保存在data/pages下,变得非常难以管理.\\ 
 +根目录:\\ 
 +指的是 ShellessWiki 下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页面)          |
 +
 +其余操作请参照 caii的翻译
 +
 +
 +{{some:newpage}}
 +
 +
 +===== 删除命名空间 =====
 +
 +命名空间内的所有页面都被移除之时,该命名空间逻辑上不再存在。ShelllessWiki 通常也会删除这个刚清空的文件夹。
 +,,,
 +
 +
 +
 +======= 如何重命名命名空间 =====
 +
 +你可以使用[[http://www.isection.co.uk/doku.php|PageMove插件]]将每个页面从旧的命名空间移动到新的命名空间。请参考相关文档了解这是否满足你的需要。
 +
 +手动的方式稍困难些:
 +  * 重命名表示命名空间的文件夹,这些文件夹在:
 +    * ''data/pages''
 +    * ''data/media'' (如果存在)
 +  * 移除该命名空间在 ''data/meta''下的元数据
 +  * 移除该命名空间在''data/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'' 等词语。
 +
 +  * (通过编辑链接)纠正指向//已移除//命名空间下所有页面的链接(在移除命名空间之前,你可以通过反向链接(backlink)发现需要修改的链接)。
 +
 +  * 浏览新命名空间下的每个页面,这会创建已经丢失的已移除的命名空间下的页面的索引信息和元数据。
 +
 +但是,你依然留下大量无用信息,例如''data/changes.log''中、cache下的各种文件(包括''.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''
 +  * 浏览你wiki的每一个页面
 +
 +我知道这很费解(可能我忘记/弄乱一些你认为应该做的事情)。所有的都是[[some:pita]]。你可以使用一些可重建整个wiki的搜索索引、删除整个cache和/或旧版wiki从而避免手动操作的[[doku>plugins|插件]]。
 +
 +
 +{{indexmenu>#1|navbar msort}}
 +
 +{{some:newpage}}
 +