我想做什么:
我想使用插件中的自定义CSS文件更改标准Trac布局。更具体地说,我想更改我的插件的导航栏链接的外观。
到目前为止我有什么:
我知道导航栏项会自动获得分配给它们的CSS类。这看起来像class="iconPluginname"
。我在名为site.html
的模板文件夹中创建了一个新的HTML文件,如下所示:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:py="http://genshi.edgewall.org/"
py:strip="">
<!--! Add site-specific style sheet -->
<head py:match="head" py:attrs="select('@*')">
${select('*')}
<link rel="stylesheet" type="text/css"
href="${href.chrome('/mypluginname/css/mainnav_icon.css')}" />
</head>
<body py:match="body" py:attrs="select('@*')">
${select('*|text()')}
</body>
</html>
据我所知,Trac在插件文件中搜索名为site.html
的文件,如果找不到,则搜索共享资源,最后搜索Trac文件夹。后一种情况是默认情况。根据我的理解,如果我在模板文件夹中创建文件site.html
并且插件正确加载,它应该自动使用链接样式表并添加模板中所做的任何更改。但是,当我向其添加标题标签时,我的Trac页面的标题没有改变,所以我假设布局甚至没有加载。
除了在模板文件夹中添加site.html
并链接到样式表之外,我还需要做些什么来更改布局或向我的Trac添加自定义样式表?
答案 0 :(得分:2)
如果您想提供自定义网站样式,请将site.html
页面上显示的templates
放在您的环境style.css
目录中,并将自定义网站样式放在htdocs
中您的环境companies_list = dict(zip(code, short_name))
目录。
如果您想通过正在开发的插件添加样式表,请使用TracInterfaceCustomization。