mdforge 0.2.1__tar.gz → 0.2.2__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 (37) hide show
  1. {mdforge-0.2.1 → mdforge-0.2.2}/PKG-INFO +1 -1
  2. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/context.py +14 -6
  3. {mdforge-0.2.1 → mdforge-0.2.2}/pyproject.toml +5 -5
  4. {mdforge-0.2.1 → mdforge-0.2.2}/LICENSE +0 -0
  5. {mdforge-0.2.1 → mdforge-0.2.2}/README.md +0 -0
  6. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/__init__.py +0 -0
  7. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/_norm.py +0 -0
  8. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/_utils.py +0 -0
  9. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/container.py +0 -0
  10. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/document.py +0 -0
  11. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/element.py +0 -0
  12. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/__init__.py +0 -0
  13. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/_image.py +0 -0
  14. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/__init__.py +0 -0
  15. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/basic.py +0 -0
  16. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/__init__.py +0 -0
  17. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/definition.py +0 -0
  18. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/item.py +0 -0
  19. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/section.py +0 -0
  20. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/__init__.py +0 -0
  21. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_context.py +0 -0
  22. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/flavors.py +0 -0
  23. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/__init__.py +0 -0
  24. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/variant.py +0 -0
  25. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/variants.py +0 -0
  26. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/list/__init__.py +0 -0
  27. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_params.py +0 -0
  28. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_variant.py +0 -0
  29. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_vcell.py +0 -0
  30. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/cell.py +0 -0
  31. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/table.py +0 -0
  32. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/text.py +0 -0
  33. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/__init__.py +0 -0
  34. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/basic.py +0 -0
  35. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/text.py +0 -0
  36. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/exceptions.py +0 -0
  37. {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: mdforge
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Pythonic multi-flavor Markdown generator
5
5
  Author: mm21
6
6
  Author-email: mm21.dev@gmail.com
@@ -179,6 +179,7 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
179
179
 
180
180
  yield self.__render_sep_line(
181
181
  section.middle_sep,
182
+ vrow=vrow,
182
183
  seg_overrides=seg_overrides,
183
184
  corner_overrides=corner_overrides,
184
185
  )
@@ -253,6 +254,7 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
253
254
  def __render_sep_line(
254
255
  self,
255
256
  sep: SeparatorConfig,
257
+ vrow: list[VirtualCell] | None = None,
256
258
  do_align: bool = False,
257
259
  seg_overrides: list[str | None] | None = None,
258
260
  corner_overrides: list[bool] | None = None,
@@ -325,6 +327,7 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
325
327
  inner_corner,
326
328
  col_idx,
327
329
  seg_overrides_,
330
+ vrow=vrow,
328
331
  )
329
332
 
330
333
  # end with right corner
@@ -380,6 +383,7 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
380
383
  inner_corner: str,
381
384
  col_idx: int,
382
385
  seg_overrides: list[str | None],
386
+ vrow: list[VirtualCell] | None = None,
383
387
  ):
384
388
  """
385
389
  Get separator line segment, either a solid line or dangling content
@@ -397,8 +401,12 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
397
401
  )
398
402
 
399
403
  # check if this segment spans to the next one
400
- span_next = all(
401
- seg is not None for seg in [seg_override, next_seg_override]
404
+ span_next = (
405
+ seg_override is not None
406
+ and next_seg_override is not None
407
+ and
408
+ # check if they're from the same origin cell
409
+ ((vrow[col_idx].cell is vrow[col_idx + 1].cell) if vrow else False)
402
410
  )
403
411
 
404
412
  # adjust width if necessary to reach next corner
@@ -412,7 +420,10 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
412
420
 
413
421
  # append next corner if necessary
414
422
  if not is_last_col and not span_next:
415
- seg += inner_corner
423
+ if seg_override is not None and next_seg_override is not None:
424
+ seg += self.variant.cell_sep.strip()
425
+ else:
426
+ seg += inner_corner
416
427
 
417
428
  if next_seg_override is not None:
418
429
  # next segment will be overridden with dangling content, so
@@ -663,9 +674,6 @@ class FrameRenderContext(BaseRenderContext[FrameTableVariant]):
663
674
  # skip if not origin cell, we would have already counted it
664
675
  continue
665
676
 
666
- # content for spanned cells has not yet been set
667
- assert not vcell.content_is_set
668
-
669
677
  # get total width of this cell and add height of resulting content
670
678
  width = self.__get_spanned_width(vrow, vcell)
671
679
  heights.append(
@@ -14,15 +14,11 @@ classifiers = [
14
14
  "Programming Language :: Python :: 3.12",
15
15
  "Programming Language :: Python :: 3.13"
16
16
  ]
17
- dependencies = [
18
- "pyrollup>=0.1.0,<0.2.0",
19
- "pyyaml>=6.0.2,<7.0.0"
20
- ]
21
17
  description = "Pythonic multi-flavor Markdown generator"
22
18
  name = "mdforge"
23
19
  readme = "README.md"
24
20
  requires-python = ">=3.12,<4.0"
25
- version = "0.2.1"
21
+ version = "0.2.2"
26
22
 
27
23
  [project.urls]
28
24
  homepage = "https://github.com/mm21/mdforge"
@@ -34,6 +30,10 @@ requires = ["poetry-core>=1.0.0"]
34
30
  [tool.poetry]
35
31
  packages = [{include = "mdforge"}]
36
32
 
33
+ [tool.poetry.dependencies]
34
+ pyrollup = "^0.1.0"
35
+ pyyaml = "^6.0.2"
36
+
37
37
  [tool.poetry.group.dev.dependencies]
38
38
  autoflake = "^2.3.1"
39
39
  black = "^24.8.0"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes