【问题标题】:restructuredtext: use directives for metadatarestructuredtext:对元数据使用指令
【发布时间】:2012-09-14 17:51:28
【问题描述】:

我正在编写一个基于重组文本的简单网页生成器,我想将标签放入文档中,就像这样。

=====
Title
=====

:author: Me
:tags: foo, bar

Here we go ...

我现在想要的:

  • 拥有某种文档树
  • 找到tags 条目,读取它,处理它(如在命令行上打印标签),删除它并渲染剩余的树。

所以我想编写兼容的重组文本,以防它使用与我的程序不同的东西进行编译。

谁能给我一个提示?我在http://svn.python.org/projects/external/docutils-0.6/docutils/examples.py 找到了这个internals 方法,显示了如何获取文档(以及因此 dom 树),但这是最好的方法还是基于正则表达式的方法(查找行,删除它们)容易很多?使用树还会涉及转换树 → 文档等。

【问题讨论】:

    标签: python restructuredtext


    【解决方案1】:

    有一些工具可以为您做到这一点。见http://docutils.sourceforge.net/docs/user/links.html

    【讨论】:

    • 抱歉,问题不够精确。我知道如何将 rst 转换为 html,我想拥有我的 tags 行并在渲染之前删除 ot。但我认为研究 Nabu 的来源可能是最接近我的解决方案的事情。
    【解决方案2】:

    我认为我对这两个问题都有一个很好的解决方案。首先,docutils 发行版中的core.py 文件显示了如何获取文档树以及如何编写它(例如使用 html 编写器),请参阅publish_from_doctreepublish_doctree。然后是docutils.nodes.SparseNodeVisitor,它可以继承和覆盖visit_field等方法,以各种方式操作文档树。

    【讨论】:

      猜你喜欢
      • 2012-12-23
      • 2023-03-24
      • 1970-01-01
      • 2018-12-31
      • 2016-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多