1

restructuredtext に基づいた単純な Web ページ ジェネレーターを作成しています。このように、ドキュメントにタグを挿入したいと考えています。

=====
Title
=====

:author: Me
:tags: foo, bar

Here we go ...

私が今欲しいもの:

  • ある種の文書ツリーを手に入れる
  • エントリを見つけてtags読み取り、処理し (コマンド ラインでタグを出力するなど)、削除して、残りのツリーをレンダリングします。

したがって、私のプログラムとは異なるものでコンパイルされている場合に備えて、互換性のある再構成テキストを書きたいと思います。

誰かが私にヒントを与えることができますか?ここでこれを見つけましたhttp://svn.python.org/projects/external/docutils-0.6/docutils/examples.pyinternalsメソッドでドキュメント(したがってdomツリー)を取得する方法を示していますが、これが最善ですかまたは、正規表現ベースのアプローチ(行を見つけて削除する)の方がはるかに簡単ですか?ツリーの操作には、変換ツリー → ドキュメントなども含まれます。

4

2 に答える 2

1

私は両方の問題に対して良い解決策があると思います。まず、ディストリビューションcore.py内のファイルはdocutils、doctreeを取得する方法と、それを書き込む方法(たとえば、htmlライターを使用)を示しています。およびを参照publish_from_doctreeしてくださいpublish_doctree。次に、さまざまな方法でドキュメントツリーを操作するdocutils.nodes.SparseNodeVisitorなどのメソッドをサブクラス化して上書きできるものがあります。visit_field

于 2012-09-14T20:43:00.630 に答える
1

これを行うことができるツールがあります。http://docutils.sourceforge.net/docs/user/links.htmlを参照してください。

于 2012-09-14T18:03:46.637 に答える