jlevy / jlevy/chopdiff

Typed ListInfo / Paragraph.list_info

Open
#20 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
27
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Surfaced during [pprose](https://github.com/jlevy/practical-prose) structural-metrics work after the chopdiff 0.3.1 upgrade. Not blocking — pprose has a clean workaround — but landing this consolidates the data into one object.

**Need:** Ordered-vs-unordered, start index, nesting depth, and total item count for a list block, in one object.

**Proposed API:**

```python
Paragraph.list_info -> ListInfo | None

class ListInfo:
ordered: bool
start: int | None
max_depth: int
item_count: int
```

**pprose workaround today:** Derive from `block_type` (`list` vs `ordered_list`) plus `collect(kinds={list_item})` / `base_blocks()` depths.

**Priority:** Lowest of the pprose upstream requests — the workaround is clean.

_Tracked in pprose as `pp-tg93`._

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.