2011-05-09 85 views
1

我正在使用trac管理一个项目。我有structured pages hierarchically,他们看起来从标题索引此摘录显示:Trac,维基页面继承

0.9 
    0.9 (this is a page) 
    Xyz 
    0.9/XyzFaq   (this is a page) 
    0.9/XyzReleaseNotes (this is a page) 
    0.9/XyzRoadmap  (this is a page) 

称为0.9该网页包含此标记:

= Xyz version 0.9 main page = 

Status: DEVELOPMENT 

[[TitleIndex(0.9)]] 

我想那会子页从其父继承项目的发展状况。有没有办法做到这一点?

谢谢

回答

3

这与the macro system很容易做到。如果你想有一个现成的宏观,看IncludeMacro,这会工作,如:

  1. 在被称为维基页面Status/0.9刚才的文字DEVELOPMENT
  2. 在所有页面下方0.9/有一个线Status: [[Include(Status/0.9)]]

如果这很麻烦,编写自己的宏很简单。基本上只需从简单的字符串处理中获取当前页面名称的父维基页面名称,然后打开维基页面并用正则表达式搜索Status:行。

+0

感谢这个解决方案,使用正则表达式很酷。尽管对于我的简单情况,我刚刚结束使用PageTemplates。这也非常简单。 – Paolo 2011-05-09 21:57:23

+0

如果继承的文本经常更改,则您的方法更加灵活。使用PageTemplates时,更改不会自动反映在子页面上(至少我是这么认为的)。 – Paolo 2011-05-09 22:08:18

+0

@Guandalino:是的,PageTemplates只是定义页面的初始静态内容。 – dancek 2011-05-10 10:29:12