termrender 0.4.0__tar.gz → 0.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. {termrender-0.4.0 → termrender-0.5.0}/CHANGELOG.md +8 -0
  2. {termrender-0.4.0 → termrender-0.5.0}/PKG-INFO +1 -1
  3. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/layout.py +2 -1
  4. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/table.py +3 -1
  5. {termrender-0.4.0 → termrender-0.5.0}/.github/workflows/publish.yml +0 -0
  6. {termrender-0.4.0 → termrender-0.5.0}/.gitignore +0 -0
  7. {termrender-0.4.0 → termrender-0.5.0}/CLAUDE.md +0 -0
  8. {termrender-0.4.0 → termrender-0.5.0}/LICENSE +0 -0
  9. {termrender-0.4.0 → termrender-0.5.0}/README.md +0 -0
  10. {termrender-0.4.0 → termrender-0.5.0}/design.json +0 -0
  11. {termrender-0.4.0 → termrender-0.5.0}/pyproject.toml +0 -0
  12. {termrender-0.4.0 → termrender-0.5.0}/requirements.json +0 -0
  13. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/CLAUDE.md +0 -0
  14. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/__init__.py +0 -0
  15. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/__main__.py +0 -0
  16. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/blocks.py +0 -0
  17. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/emit.py +0 -0
  18. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/parser.py +0 -0
  19. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/py.typed +0 -0
  20. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/CLAUDE.md +0 -0
  21. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/__init__.py +0 -0
  22. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/borders.py +0 -0
  23. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/code.py +0 -0
  24. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/columns.py +0 -0
  25. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/divider.py +0 -0
  26. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/mermaid.py +0 -0
  27. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/panel.py +0 -0
  28. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/quote.py +0 -0
  29. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/text.py +0 -0
  30. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/renderers/tree.py +0 -0
  31. {termrender-0.4.0 → termrender-0.5.0}/src/termrender/style.py +0 -0
  32. {termrender-0.4.0 → termrender-0.5.0}/tests/__init__.py +0 -0
  33. {termrender-0.4.0 → termrender-0.5.0}/tests/test_column_alignment.py +0 -0
  34. {termrender-0.4.0 → termrender-0.5.0}/tests/test_myst_gaps.py +0 -0
  35. {termrender-0.4.0 → termrender-0.5.0}/tests/test_variable_colons.py +0 -0
@@ -1,6 +1,14 @@
1
1
  # CHANGELOG
2
2
 
3
3
 
4
+ ## v0.5.0 (2026-04-06)
5
+
6
+ ### Features
7
+
8
+ - **table**: Render horizontal separator lines between data rows
9
+ ([`3e4c74a`](https://github.com/CaptainCrouton89/termrender/commit/3e4c74a10d63470f2eb2ec096bb47cf41f0b7f70))
10
+
11
+
4
12
  ## v0.4.0 (2026-04-05)
5
13
 
6
14
  ### Features
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: termrender
3
- Version: 0.4.0
3
+ Version: 0.5.0
4
4
  Summary: Rich terminal rendering of directive-flavored markdown
5
5
  Project-URL: Homepage, https://github.com/CaptainCrouton89/termrender
6
6
  Project-URL: Repository, https://github.com/CaptainCrouton89/termrender
@@ -136,7 +136,8 @@ def resolve_height(block: Block) -> None:
136
136
  max(len(wrap_text(r[i], col_widths[i])) for i in range(n_cols))
137
137
  for r in rr
138
138
  ) if rr else 0
139
- block.height = header_h + data_h + 3 # top border + header sep + bottom border
139
+ row_seps = max(len(rr) - 1, 0) # horizontal lines between data rows
140
+ block.height = header_h + data_h + 3 + row_seps # top border + header sep + bottom border + row seps
140
141
 
141
142
  elif bt == BlockType.MERMAID:
142
143
  source = block.attrs.get("source", "") or _plain_text(block.text)
@@ -151,7 +151,9 @@ def render(block: Block, color: bool) -> list[str]:
151
151
  lines.append(separator("┌", "┬", "┐"))
152
152
  lines.extend(render_multiline_row(wrapped_headers, is_header=True))
153
153
  lines.append(separator("├", "┼", "┤"))
154
- for wr in wrapped_rows:
154
+ for idx, wr in enumerate(wrapped_rows):
155
+ if idx > 0:
156
+ lines.append(separator("├", "┼", "┤"))
155
157
  lines.extend(render_multiline_row(wr, is_header=False))
156
158
  lines.append(separator("└", "┴", "┘"))
157
159
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes