Alir3z4 / Alir3z4/html2text

WRAP_LIST_ITEMS setting is not respected

Offen
#352 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
2.2k
Forks
296
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

- Version 2020.1.16
- Python version 3.8.7

```python
body = """
1. Error exercitationem debitis magni tenetur dolorum inventore ex. Voluptatibus possimus voluptas quibusdam vel facere eaque sit. Et et hic totam aliquam et ut numquam. Omnis qui consectetur reiciendis. Deserunt qui aut mollitia qui. Dolores omnis aut facere sint et rerum.
2. Modi excepturi velit ab fuga dignissimos qui. Et dolorem ut quam consequatur. Quia repellat deleniti et aut quae in. Cum quidem maiores sint suscipit nobis ipsam.
3. Et tenetur sapiente velit. Neque culpa perspiciatis et molestias voluptatem officia rem. Dolorem reprehenderit recusandae nostrum voluptatem nihil et modi neque. Libero et tempore odit. Saepe quo dolorum voluptas. Aliquam illo nam eos qui eum.
"""
h = html2text.HTML2Text()
h.body_width = 80
h.wrap_list_items = True
print(h.handle(body))
```

Should normally render

```text
1. Error exercitationem debitis magni tenetur dolorum inventore ex.
Voluptatibus possimus voluptas quibusdam vel facere eaque sit. Et et hic totam
aliquam et ut numquam. Omnis qui consectetur reiciendis. Deserunt qui aut
mollitia qui. Dolores omnis aut facere sint et rerum.

2. Modi excepturi velit ab fuga dignissimos qui. Et dolorem ut quam
consequatur. Quia repellat deleniti et aut quae in. Cum quidem maiores sint
suscipit nobis ipsam.

3. Et tenetur sapiente velit. Neque culpa perspiciatis et molestias voluptatem
officia rem. Dolorem reprehenderit recusandae nostrum voluptatem nihil et modi
neque. Libero et tempore odit. Saepe quo dolorum voluptas. Aliquam illo nam eos
qui eum.
```

But instead it return unwrapped text

I suggest changing `skipwrap()` end of function to:

```python
# If the text begins with a single -, *, or +, followed by a space,
# or an integer, followed by a ., followed by a space (in either
# case optionally proceeded by whitespace), it's a list; don't wrap,
# unless explicitly specified.
return bool(
config.RE_ORDERED_LIST_MATCHER.match(stripped)
or config.RE_UNORDERED_LIST_MATCHER.match(stripped)
) and not wrap_list_items
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.