【问题标题】:How can I generate HTML documents using `godoc`?如何使用 `godoc` 生成 HTML 文档?
【发布时间】:2012-11-11 21:07:00
【问题描述】:

我写了一个小go程序,我想从源代码生成独立的HTML文档,可以在没有godoc服务器的情况下查看。但我找不到任何方法来实现它。如果有人可以帮助我,我将不胜感激。

【问题讨论】:

    标签: go


    【解决方案1】:

    可以通过以下方式生成更好的形式:

    godoc -url "http://localhost:6060/pkg/container/heap/" > page.html 
    

    (我的 godoc 服务器在 :6060 运行,我不确定这是否是先决条件)。

    如果通过调整生成的 HTML 文件以正确引用它,结合在 Go 存储库中找到的原始 CSS 样式,HTML 可能看起来会更好。

    【讨论】:

    • 不需要真正的服务器,godoc -url "/pkg/container/heap/" > page.html 就足够了
    • 有一个更改请求打开以添加对生成静态站点的支持github.com/golang/go/issues/2381#issuecomment-342043987
    • 这是一个非答案。除非 OP 有很多时间和耐心来完成繁琐的任务。 wget -R 会比这更好!
    • 每当我运行godoc -http :6060 时,我都看不到我自己的包的文档。有什么可以在文档中获取我自己的包吗?
    【解决方案2】:

    这可能不会直接回答您的问题,但如果您打算开源您的项目,您实际上不必手动生成 HTML。只要确保你的源代码中正确插入了 cmets,并使用 godoc.org(http://godoc.org/-/about) 来处理它。

    它在 Bitbucket、Github、Launchpad 和 Google Project Hosting 上显示 Go 包的文档。

    例如:http://godoc.org/code.google.com/p/go.crypto/ssh

    【讨论】:

    • 谢谢,当我在 godoc 上找到我的包的文档时,我很惊讶!
    【解决方案3】:

    运行服务器并使用 wget 获取它

    godoc -http=:6060
    

    然后等待它启动(“容器/堆/”与您的应用程序):

    wget -p -k http://localhost:6060/pkg/container/heap/
    

    要下载我使用的所有文档:

    wget -m -k -q -erobots=off --no-host-directories --no-use-server-timestamps http://localhost:6060
    

    【讨论】:

      【解决方案4】:

      (从https://stackoverflow.com/a/63905155/3715832移出)

      如果您想尝试不同的文档样式,可以尝试Golds,这是一个替代的 Go 文档生成工具(和本地文档服务器/代码阅读器)。

      在您的项目目录下,您可以运行以下任意命令为您的 Go 项目生成 HTML 文档:

      • golds -gen -nouses -plainsrc -wdpkgs-listing=promoted ./...
      • golds -gen -nouses -wdpkgs-listing=promoted ./...
      • golds -gen -wdpkgs-listing=promoted ./...

      第一个命令生成最紧凑的文档,最后一个命令生成完整的文档,其大小是紧凑文档的 6 倍。

      顺便说一句,我是Golds的作者。希望这个工具能满足您的需求。

      【讨论】:

        猜你喜欢
        • 2018-08-27
        • 2020-07-01
        • 2019-04-07
        • 2019-04-10
        • 2018-03-02
        • 2020-10-22
        • 2021-09-19
        • 2019-07-22
        • 1970-01-01
        相关资源
        最近更新 更多