类 AbstractHtmlDSetRender

  • 所有已实现的接口:
    NutDSetRender
    直接已知子类:
    LocalHtmlDSetRender

    public abstract class AbstractHtmlDSetRender
    extends Object
    implements NutDSetRender
    渲染给定的文档集到一个目标目录(非线程安全)

    本函数假设源目录的结构如下:

     SRC-HOME
          _tmpl/         # 「选」输出的模板目录
              doc.html   # 文档输出模板,其中占位符与所有 Meta 同名。文档内容占位符为 ${main}
              index.html # 索引页模板,其中主要内容占位符为 ${indexes}
          css/           # 资源目录是否 copy 声明在 zdoc.conf 里
          js/            # 属性名为 "copy-paths"
          emptydir/      # 其他目录如果没有文档,则会被无视
          some/          # 文档可以是多级目录,总之会被解析器解析好的
              xxx.md
              yyy.md
          aaa.md
          bbb.md
          zdoc.conf      # 「选」整体配置文件
     
    !注意 如果没有声明模板,函数会采用下面两个默认模板:
    • org/nutz/plugins/zdoc/html/dft_tmpl_doc.html
    • org/nutz/plugins/zdoc/html/dft_tmpl_index.html

    一个 zdoc.conf 的例子

     #------------------------------------------
     # 集合的标题
     title=这是本集合的整体标题
     #------------------------------------------
     # 集合的作者,多个作者半角逗号隔开
     authors=xiaobai,xiaohei
     #------------------------------------------
     # 关键是下面的路径,如果没声明,则全查
     # 每行格式为  路径 [: 标题]
     paths:
     a/b/c   : 一个集合
     bbb.md  : 一个文档
     # 结束
     #------------------------------------------
     # 要 copy 的资源路径,单行的话,路径用半角逗号分隔
     # 多行的话,一行一个路径好了。
     # 如果没有声明这个属性,默认为 css,js,media,image
     copy-paths=css,js,media,image
     #------------------------------------------
     # 针对每个文档集所在目录,需要 copy 哪些资源文件
     # 用一个正则表达式来声明,默认为 ^.+[.](png|jpe?g|gif)$
     copy-set-rs=^.+[.](png|jpe?g|gif)$
     #------------------------------------------
     # 指明模板目录名,默认为 _tmpl
     tmpl-dir=_tmpl
     #------------------------------------------
     # 指明输出的索引页名称,默认为 tree.html
     # 如果值为 "none" 则表示不输出索引页
     index-name=tree.html
     
    • 构造器详细资料

      • AbstractHtmlDSetRender

        public AbstractHtmlDSetRender()
    • 方法详细资料

      • loadTmpl

        protected abstract org.nutz.lang.tmpl.Tmpl loadTmpl​(String tmplDirName,
                                                            String tmplName,
                                                            String dftTmplName)
      • copyToTarget

        protected abstract void copyToTarget​(String ph,
                                             String regex)
      • writeToTarget

        protected abstract void writeToTarget​(String ph,
                                              String html)
      • copyResource

        protected abstract void copyResource​(String rsph)
      • checkTarget

        protected abstract void checkTarget​(String target)
      • loadTmpl

        protected abstract org.nutz.lang.tmpl.Tmpl loadTmpl​(String tmplPath)
      • checkPrimerObj

        protected abstract void checkPrimerObj​(NutDSet ds)