1

一切都在问题中:我将如何更改 epydoc 生成的 html 页面 favicon ?

注意:我看到了如何自定义 css 内容,但没有关于自定义输出 html 文件...

非常感谢。

4

1 回答 1

0

好的,所以在进行了一次小头脑风暴(和我自己)之后,我找到了一种方法:

由于我们可以使用 --navlink 选项向 epydoc 注入一些 html(最初设计用于在导航栏中自定义项目的链接),因此我使用 javascript 技巧在文档的标签中动态添加以下内容。

这是javascript代码:

var link = parent.document.createElement('link'); 
link.id = 'dynamic-favicon'; 
link.type = 'image/png'; 
link.rel = 'shortcut icon'; 
link.href = '../logo-fav.png'; parent.document.head.appendChild(link);
parent.document.head = parent.document.head || 
                           parent.document.getElementsByTagName('head')[0];

这是完整的 epydoc 命令行:

epydoc -v --name "My Project" -o ./html \
--css epydoc.css --url http://www.my-project.org --inheritance listed \
--graph all --no-private --docformat epytext \
    --navlink "<a href=\"http://www.my-project.org\"><img src=\"../logo.png\" style=\"margin:10px;\" /></a>
        <script>
            var link = parent.document.createElement('link'); 
            link.id = 'dynamic-favicon'; 
            link.type = 'image/png'; 
            link.rel = 'shortcut icon'; 
            link.href = '../logo-fav.png'; 
            parent.document.head.appendChild(link); 
            parent.document.head = parent.document.head || parent.document.getElementsByTagName('head')[0];
        </script>
        " \
    my_py_module

这可用于自定义整个文档,但仍然很hacky。仍然很奇怪,他们无法在像 epydoc 这样成熟的工具中使用某些模板...

于 2013-02-01T10:47:30.250 回答