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.
- {mdforge-0.2.1 → mdforge-0.2.2}/PKG-INFO +1 -1
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/context.py +14 -6
- {mdforge-0.2.1 → mdforge-0.2.2}/pyproject.toml +5 -5
- {mdforge-0.2.1 → mdforge-0.2.2}/LICENSE +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/README.md +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/_norm.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/_utils.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/container.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/document.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/element.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/_image.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/basic.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/definition.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/lists/item.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/section.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_context.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/flavors.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/variant.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/frame/variants.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_flavors/list/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_params.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_variant.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/_vcell.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/cell.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/table/table.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/block/text.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/__init__.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/basic.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/elements/inline/text.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/exceptions.py +0 -0
- {mdforge-0.2.1 → mdforge-0.2.2}/mdforge/types.py +0 -0
|
@@ -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 =
|
|
401
|
-
|
|
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
|
-
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|