如何向 Kotlin Dokka 文档添加页脚?

Posted

技术标签:

【中文标题】如何向 Kotlin Dokka 文档添加页脚?【英文标题】:How can I add a footer to Kotlin Dokka docs? 【发布时间】:2019-09-21 12:19:34 【问题描述】:

我正在寻找一种在所有 Dokka 生成的文档的页脚中包含文本的方法。我没有看到 Dokka 的 Gradle 或 Maven 插件宣传此选项。

这可能吗?你能指点我的样本吗?

【问题讨论】:

【参考方案1】:

dokka 包中有两种实例方法——一种用于footer,一种用于header

fun appendFooter(to:)  

fun appendHeader(to:, title:, basePath:)  

这是real code 的样子:

package org.jetbrains.dokka

import java.io.File

interface htmlTemplateService 

    fun appendHeader(to: StringBuilder, title: String?, basePath: File)
    fun appendFooter(to: StringBuilder)

    companion object 

        fun default(css: String? = null): HtmlTemplateService 
            return object : HtmlTemplateService 

                override fun appendFooter(to: StringBuilder) 
                    if (!to.endsWith('\n')) 
                        to.append('\n')
                    
                    to.appendln("</BODY>")
                    to.appendln("</HTML>")
                
                override fun appendHeader(to: StringBuilder, title: String?, basePath: File) 
                    to.appendln("<HTML>")
                    to.appendln("<HEAD>")
                    to.appendln("<meta charset=\"UTF-8\">")
                    if (title != null) 
                        to.appendln("<title>$title</title>")
                    
                    if (css != null) 
                        val cssPath = basePath.resolve(css)
                        to.appendln("<link rel=\"stylesheet\" href=\"$cssPath\">")
                    
                    to.appendln("</HEAD>")
                    to.appendln("<BODY>")
                
            
        
    
 

我认为即使在dokka.playground 中它也必须工作。

希望这会有所帮助。

【讨论】:

我不确定我在看什么。您的第一个链接指向提交日志,第二个链接指向测试文件。您包含的代码是一个带有伴随对象的接口 - 如何从 gradle 调用它? 主链接是第一个(第二个链接只是一个示例,显示您可以在 Dokka 游乐场测试此代码)。而且,老实说,我不知道如何从 gradle 中调用它......这就是我在 Dokka 的页脚上能找到的全部内容。 很抱歉,这不符合赏金标准:|感谢您的帮助。

以上是关于如何向 Kotlin Dokka 文档添加页脚?的主要内容,如果未能解决你的问题,请参考以下文章

无法让 dokka 在 gradle/android 项目上生成 kotlin 文档

Kotlin-为Android项目生成Doc文档

使用Dokka为Kotlin代码生成KDoc

如何使用 dokka 生成用于存储库上传的 javadoc jar?

如何在 c# 中使用互操作添加不可编辑的页脚

如何向 UITableViewController 添加粘性页脚?