Modify valid rst text to fit within given width
Project description
Installation
>>> sudo pip install reflowrst
Usage
Example:
>>> from reflowrst import reflow >>> text = '''
================= Restructured Text ================= Title ===== This is a paragraph and it will need to be wrapped because it is too long. * Viris congue ad sit. Cu eum eros dignissim, nisl erroribus gubergren at eam. [#footnote]_ 1. this enumerated list starts with 1 2. this number is out of order and will be corrected (the first enumerator in the enumerated list sets the order for all the rest) 3. this is the third item. +------------------------------+----------+----------+----------+ | Header row, column 1 (header | | | | | rows optional) | Header 2 | Header 3 | Header 4 | | | | | | +==============================+==========+==========+==========+ | body row 1, column 1 | column 2 | column 3 | column 4 | +------------------------------+----------+----------+----------+ | body row 2 | Cells may span columns. | +------------------------------+----------+---------------------+ | body row 3 | Cells | - Table cells | +------------------------------+ may span | - contain | | body row 4 | rows. | - body elements. | +------------------------------+----------+---------------------+ .. [#footnote] This is an example of a footnote. It might have a really long amount of text that goes with it that will need to be reflowed. '''
>>> print(reflow(text, 47))
>>>
================= Restructured Text ================= Title ===== This is a paragraph and it will need to be wrapped because it is too long. * Viris congue ad sit. Cu eum eros dignissim, nisl erroribus gubergren at eam. [#footnote]_ 1. this enumerated list starts with 1 2. this number is out of order and will be corrected (the first enumerator in the enumerated list sets the order for all the rest) 3. this is the third item. +-------------+----------+--------+--------+ | Header row, | | | | | column 1 | | Header | Header | | (header | Header 2 | 3 | 4 | | rows | | | | | optional) | | | | +=============+==========+========+========+ | body row 1, | column 2 | column | column | | column 1 | | 3 | 4 | +-------------+----------+--------+--------+ | body row 2 | Cells may span columns. | +-------------+----------+-----------------+ | body row 3 | Cells | - Table cells | | | may span | - contain | +-------------+ rows. | - body | | body row 4 | | elements. | +-------------+----------+-----------------+ .. [#footnote] This is an example of a footnote. It might have a really long amount of text that goes with it that will need to be reflowed.
You can also get the longest possible form of the rst text by using 0 for the space. For example:
>>> paragraph = '\n'.join(['line 1', 'line 2']) >>> print(reflow(paragraph, 0))
line 1 line 2
Todo
☑ Titles
☐ Transitions
☑ Paragraphs
☑ Bullet Lists
☑ Enumerated Lists
☑ Definitions
☑ Fields
☑ Options
☐ Literal Blocks
☐ Quoted Literal Blocks
☐ Line Blocks
☑ Block Quotes
☐ Doctest Blocks
☑ Grid Tables
☐ Simple Tables
☑ Footnotes
☐ Citations
☑ Hyperlink Targets
☑ Directives
☑ Substitution Definitions
☐ Comments
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
reflowrst-1.0.9.tar.gz
(41.9 kB
view hashes)