From 688750c61181bd09bfa7585d774d846582679a97 Mon Sep 17 00:00:00 2001 From: Kazuya Takei Date: Wed, 1 May 2024 21:32:42 +0900 Subject: [PATCH] doc: Write readme by Japanese --- README.rst | 4 ++ README_ja.rst | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 README_ja.rst diff --git a/README.rst b/README.rst index a11edf6..33b1115 100644 --- a/README.rst +++ b/README.rst @@ -10,6 +10,10 @@ Text splitter in reStructuredText by BudouX. +.. note:: + + `日本語での説明があります。 `_ + Example ======= diff --git a/README_ja.rst b/README_ja.rst new file mode 100644 index 0000000..89d7a87 --- /dev/null +++ b/README_ja.rst @@ -0,0 +1,116 @@ +========== +rst-budoux +========== + +reStructuredTextのテキストを分かち書きするライブラリです。 + +.. raw:: html + +
+ +
+ +概要 +==== + +reStructuredTextをパースしたdoctreeに手を加えて、日本語文を分かち書きされた状態に変換します。 + +具体的には +---------- + +このようなreStructuredTextのソースを用意します。 + +.. code:: rst + + Example from BudouX + =================== + + あなたに寄り添う最先端のテクノロジー。 + + +docutilsの ``rst2pseudoxml`` を使うと、内部ではこのような構成としてパースしていることが分かります。 + +.. code:: console + + $ run rst2pseudoxml examples/budoux-sample-text.rst + + + Example from BudouX + <paragraph> + あなたに寄り添う最先端のテクノロジー。 + +``rst-budoux`` を用いた ``rst-budoux2pseudoxml`` を使うと、分かち書きを行った下記のような構成に編集します。 + +.. code:: console + + $ run rst-budoux2pseudoxml examples/budoux-sample-text.rst + <document ids="example-from-budoux" names="example\ from\ budoux" source="examples/budoux-sample-text.rst" title="Example from BudouX"> + <title> + Example from BudouX + <paragraph> + あなたに + <word-break> + 寄り添う + <word-break> + 最先端の + <word-break> + テクノロジー。 + +機能 +==== + +コア機能としては、 +「BudouXのパーサーに従ってテキストを分かち書きされた状態に分割する」 +「分割された間に【区切り可能】であることを示すノードの挿入する」 +という2点のみです。 + +もちろん、自身を含めてこれだけだと不便ではあるため、次のものを同梱しています。 + +* 動作を参照可能にするCLIツール。 +* Sphinx拡張。 + +使い方 +====== + +.. note:: ここは予定を書いています。 + +インストール +------------ + +.. code:: console + + pip install rst-budoux + +ライブラリとしての利用法 +------------------------ + +.. code:: python + + import budoux + from rst_budoux import parse_all_sentences + + document = func(...) + + # docutilsのdoctreeを生成するコードからdoctreeを受け取った後の実装例 + parser = budoux.load_default_japanese_parser() + document = parse_all_sentences(parser, document) + + ... + +Sphinxを経由しての利用例 +------------------------ + +.. code:: python + + extensions = [ + ..., + "rst_budoux.sphinx", + ] + + budoux_html_separator = "<wbr>" + buxoux_html_append_style = """ + body { + word-break: keep-all; + overflow-wrap: anywhere; + } + """