MDit 0.0.0.dev2__tar.gz → 0.0.0.dev3__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.
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/PKG-INFO +9 -9
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/pyproject.toml +9 -9
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/PKG-INFO +9 -9
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/requires.txt +8 -8
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/element.py +28 -13
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/protocol.py +1 -1
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/renderable.py +3 -2
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/target/__init__.py +17 -2
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/README.md +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/setup.cfg +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/SOURCES.txt +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/dependency_links.txt +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/not-zip-safe +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/MDit.egg-info/top_level.txt +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/__init__.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/container.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/data/__init__.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/data/file.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/data/schema.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/display.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/document.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/generate.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/parse.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/render.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/target/md.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/target/rich.py +0 -0
- {mdit-0.0.0.dev2 → mdit-0.0.0.dev3}/src/mdit/template.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: MDit
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev3
|
|
4
4
|
Requires-Python: >=3.10
|
|
5
5
|
Requires-Dist: sphinx<8
|
|
6
6
|
Requires-Dist: myst-parser<4,>3
|
|
@@ -13,15 +13,15 @@ Requires-Dist: linkify-it-py
|
|
|
13
13
|
Requires-Dist: readme-renderer
|
|
14
14
|
Requires-Dist: cmarkgfm
|
|
15
15
|
Requires-Dist: zundler
|
|
16
|
-
Requires-Dist: PkgData
|
|
17
|
-
Requires-Dist: PySerials
|
|
18
|
-
Requires-Dist: PyLinks
|
|
19
|
-
Requires-Dist: PyBadger
|
|
20
|
-
Requires-Dist: PyColorIt
|
|
21
16
|
Requires-Dist: IPython
|
|
22
17
|
Requires-Dist: jupyterlab_myst
|
|
23
|
-
Requires-Dist: PyProtocol
|
|
24
|
-
Requires-Dist: HTMP
|
|
25
|
-
Requires-Dist: ansi-sgr
|
|
26
18
|
Requires-Dist: pygments
|
|
27
19
|
Requires-Dist: rich
|
|
20
|
+
Requires-Dist: PkgData==0.0.0.dev3
|
|
21
|
+
Requires-Dist: PySerials==0.0.0.dev7
|
|
22
|
+
Requires-Dist: PyLinks==0.0.0.dev27
|
|
23
|
+
Requires-Dist: PyBadger==0.0.0.dev8
|
|
24
|
+
Requires-Dist: PyColorIt==0.0.0.dev5
|
|
25
|
+
Requires-Dist: ProtocolMan==0.0.0.dev2
|
|
26
|
+
Requires-Dist: HTMP==0.0.0.dev3
|
|
27
|
+
Requires-Dist: ANSI-SGR==0.0.0.dev9
|
|
@@ -17,7 +17,7 @@ namespaces = true
|
|
|
17
17
|
# ----------------------------------------- Project Metadata -------------------------------------
|
|
18
18
|
#
|
|
19
19
|
[project]
|
|
20
|
-
version = "0.0.0.
|
|
20
|
+
version = "0.0.0.dev3"
|
|
21
21
|
name = "MDit"
|
|
22
22
|
requires-python = ">=3.10"
|
|
23
23
|
dependencies = [
|
|
@@ -32,16 +32,16 @@ dependencies = [
|
|
|
32
32
|
"readme-renderer",
|
|
33
33
|
"cmarkgfm",
|
|
34
34
|
"zundler",
|
|
35
|
-
"PkgData",
|
|
36
|
-
"PySerials",
|
|
37
|
-
"PyLinks",
|
|
38
|
-
"PyBadger",
|
|
39
|
-
"PyColorIt",
|
|
40
35
|
"IPython",
|
|
41
36
|
"jupyterlab_myst",
|
|
42
|
-
"PyProtocol",
|
|
43
|
-
"HTMP",
|
|
44
|
-
"ansi-sgr",
|
|
45
37
|
"pygments",
|
|
46
38
|
"rich",
|
|
39
|
+
"PkgData == 0.0.0.dev3",
|
|
40
|
+
"PySerials == 0.0.0.dev7",
|
|
41
|
+
"PyLinks == 0.0.0.dev27",
|
|
42
|
+
"PyBadger == 0.0.0.dev8",
|
|
43
|
+
"PyColorIt == 0.0.0.dev5",
|
|
44
|
+
"ProtocolMan == 0.0.0.dev2",
|
|
45
|
+
"HTMP == 0.0.0.dev3",
|
|
46
|
+
"ANSI-SGR == 0.0.0.dev9",
|
|
47
47
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: MDit
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev3
|
|
4
4
|
Requires-Python: >=3.10
|
|
5
5
|
Requires-Dist: sphinx<8
|
|
6
6
|
Requires-Dist: myst-parser<4,>3
|
|
@@ -13,15 +13,15 @@ Requires-Dist: linkify-it-py
|
|
|
13
13
|
Requires-Dist: readme-renderer
|
|
14
14
|
Requires-Dist: cmarkgfm
|
|
15
15
|
Requires-Dist: zundler
|
|
16
|
-
Requires-Dist: PkgData
|
|
17
|
-
Requires-Dist: PySerials
|
|
18
|
-
Requires-Dist: PyLinks
|
|
19
|
-
Requires-Dist: PyBadger
|
|
20
|
-
Requires-Dist: PyColorIt
|
|
21
16
|
Requires-Dist: IPython
|
|
22
17
|
Requires-Dist: jupyterlab_myst
|
|
23
|
-
Requires-Dist: PyProtocol
|
|
24
|
-
Requires-Dist: HTMP
|
|
25
|
-
Requires-Dist: ansi-sgr
|
|
26
18
|
Requires-Dist: pygments
|
|
27
19
|
Requires-Dist: rich
|
|
20
|
+
Requires-Dist: PkgData==0.0.0.dev3
|
|
21
|
+
Requires-Dist: PySerials==0.0.0.dev7
|
|
22
|
+
Requires-Dist: PyLinks==0.0.0.dev27
|
|
23
|
+
Requires-Dist: PyBadger==0.0.0.dev8
|
|
24
|
+
Requires-Dist: PyColorIt==0.0.0.dev5
|
|
25
|
+
Requires-Dist: ProtocolMan==0.0.0.dev2
|
|
26
|
+
Requires-Dist: HTMP==0.0.0.dev3
|
|
27
|
+
Requires-Dist: ANSI-SGR==0.0.0.dev9
|
|
@@ -9,15 +9,15 @@ linkify-it-py
|
|
|
9
9
|
readme-renderer
|
|
10
10
|
cmarkgfm
|
|
11
11
|
zundler
|
|
12
|
-
PkgData
|
|
13
|
-
PySerials
|
|
14
|
-
PyLinks
|
|
15
|
-
PyBadger
|
|
16
|
-
PyColorIt
|
|
17
12
|
IPython
|
|
18
13
|
jupyterlab_myst
|
|
19
|
-
PyProtocol
|
|
20
|
-
HTMP
|
|
21
|
-
ansi-sgr
|
|
22
14
|
pygments
|
|
23
15
|
rich
|
|
16
|
+
PkgData==0.0.0.dev3
|
|
17
|
+
PySerials==0.0.0.dev7
|
|
18
|
+
PyLinks==0.0.0.dev27
|
|
19
|
+
PyBadger==0.0.0.dev8
|
|
20
|
+
PyColorIt==0.0.0.dev5
|
|
21
|
+
ProtocolMan==0.0.0.dev2
|
|
22
|
+
HTMP==0.0.0.dev3
|
|
23
|
+
ANSI-SGR==0.0.0.dev9
|
|
@@ -153,7 +153,7 @@ class Admonition(Element):
|
|
|
153
153
|
self.title_bold = title_bold
|
|
154
154
|
self.title_tight = title_tight
|
|
155
155
|
self.emoji = emoji or self.EMOJI[type]
|
|
156
|
-
self.config_rich = config_rich or PanelConfig(
|
|
156
|
+
self.config_rich = config_rich or _mdit.target.rich.PanelConfig(
|
|
157
157
|
title_style=_mdit.target.rich.StyleConfig(
|
|
158
158
|
bgcolor=self.COLOR[type],
|
|
159
159
|
color=(255, 255, 255),
|
|
@@ -172,7 +172,7 @@ class Admonition(Element):
|
|
|
172
172
|
title = self.title.source(target=target, filters=filters).strip()
|
|
173
173
|
body = self.body.source(target=target, filters=filters).strip()
|
|
174
174
|
footer = self.footer.source(target=target, filters=filters).strip()
|
|
175
|
-
content = f"{body}\n\n---\n\n{footer}"
|
|
175
|
+
content = f"{body}\n\n---\n\n{footer}" if footer else body
|
|
176
176
|
if target.directive_admo:
|
|
177
177
|
return self._str_admo(title=title, content=content, target=target, filters=filters)
|
|
178
178
|
if target.alerts:
|
|
@@ -708,9 +708,9 @@ class Directive(Element):
|
|
|
708
708
|
def __init__(
|
|
709
709
|
self,
|
|
710
710
|
name: Stringable,
|
|
711
|
-
args: MDContainer | None = None,
|
|
711
|
+
args: MDContainer | Stringable | None = None,
|
|
712
712
|
options: dict[Stringable, Stringable | list[Stringable] | None] | None = None,
|
|
713
|
-
content: MDContainer | None = None,
|
|
713
|
+
content: MDContainer | Stringable | None = None,
|
|
714
714
|
target_configs: TargetConfigs = None,
|
|
715
715
|
target_default: str = "sphinx",
|
|
716
716
|
):
|
|
@@ -747,10 +747,21 @@ class Directive(Element):
|
|
|
747
747
|
return f"{"\n".join(option_lines)}\n"
|
|
748
748
|
|
|
749
749
|
target = self._resolve_target(target)
|
|
750
|
-
|
|
750
|
+
if isinstance(self.content, _MDITRenderable):
|
|
751
|
+
content = self.content.source(target=target, filters=filters).strip()
|
|
752
|
+
elif not self.content:
|
|
753
|
+
content = ""
|
|
754
|
+
else:
|
|
755
|
+
content = str(self.content).strip()
|
|
756
|
+
content = f"\n{content}\n\n" if content else ""
|
|
751
757
|
fence = target.fence * self.code_fence_count
|
|
752
|
-
|
|
753
|
-
|
|
758
|
+
if isinstance(self.args, _MDITRenderable):
|
|
759
|
+
args = self.args.source(target=target, filters=filters).strip()
|
|
760
|
+
elif not self.args:
|
|
761
|
+
args = ""
|
|
762
|
+
else:
|
|
763
|
+
args = str(self.args).strip()
|
|
764
|
+
start_line = f"{fence}{{{self.name}}} {args}".strip()
|
|
754
765
|
opts = options()
|
|
755
766
|
return f"{start_line}\n{opts}{content}{fence}"
|
|
756
767
|
|
|
@@ -804,9 +815,9 @@ class DropDown(Element):
|
|
|
804
815
|
self.classes_container = classes_container or []
|
|
805
816
|
self.classes_title = classes_title or []
|
|
806
817
|
self.classes_body = classes_body or []
|
|
807
|
-
self.config_rich = config_rich or PanelConfig(
|
|
818
|
+
self.config_rich = config_rich or _mdit.target.rich.PanelConfig(
|
|
808
819
|
title_style=_mdit.target.rich.StyleConfig(
|
|
809
|
-
bgcolor=self.COLOR[color],
|
|
820
|
+
bgcolor=self.COLOR[color or "muted"],
|
|
810
821
|
color="#fff" if color != "light" else "#212529",
|
|
811
822
|
bold=True,
|
|
812
823
|
),
|
|
@@ -825,7 +836,7 @@ class DropDown(Element):
|
|
|
825
836
|
title = self.title.source(target=target, filters=filters).strip()
|
|
826
837
|
content = self.body.source(target=target, filters=filters).strip()
|
|
827
838
|
footer = self.footer.source(target=target, filters=filters).strip()
|
|
828
|
-
content_full = f"{content}\n\n---\n\n{footer}"
|
|
839
|
+
content_full = f"{content}\n\n---\n\n{footer}" if footer else content
|
|
829
840
|
if target.directive_dropdown:
|
|
830
841
|
options = {
|
|
831
842
|
"open": self.opened,
|
|
@@ -850,6 +861,10 @@ class DropDown(Element):
|
|
|
850
861
|
details_content = [_htmp.element.summary(title), _htmp.elementor.markdown(content)]
|
|
851
862
|
return str(_htmp.element.details(details_content, {"open": self.opened}))
|
|
852
863
|
|
|
864
|
+
@property
|
|
865
|
+
def code_fence_count(self) -> int:
|
|
866
|
+
return max(self.body.code_fence_count, 2) + 1
|
|
867
|
+
|
|
853
868
|
|
|
854
869
|
class FieldListItem(Element):
|
|
855
870
|
def __init__(
|
|
@@ -1469,8 +1484,8 @@ class Table(Element):
|
|
|
1469
1484
|
rows = []
|
|
1470
1485
|
for row, _ in self.rows:
|
|
1471
1486
|
cells = [cell for cell, _ in row]
|
|
1472
|
-
rows.append(unordered_list(
|
|
1473
|
-
table_content = unordered_list(
|
|
1487
|
+
rows.append(unordered_list(cells))
|
|
1488
|
+
table_content = unordered_list(rows)
|
|
1474
1489
|
return directive(
|
|
1475
1490
|
name="list-table",
|
|
1476
1491
|
args=self.caption,
|
|
@@ -3409,7 +3424,7 @@ def unordered_list_item(
|
|
|
3409
3424
|
|
|
3410
3425
|
|
|
3411
3426
|
def unordered_list(
|
|
3412
|
-
content: Sequence[UnOrderedListItem | ContainerContentInputType | MDContainer] | MDContainer,
|
|
3427
|
+
content: Sequence[UnOrderedListItem | ContainerContentInputType | MDContainer] | MDContainer = None,
|
|
3413
3428
|
classes: list[Stringable] | None = None,
|
|
3414
3429
|
name: Stringable | None = None,
|
|
3415
3430
|
tight: bool = True,
|
|
@@ -62,7 +62,8 @@ class Renderable:
|
|
|
62
62
|
def _source_md(self, target: MDTargetConfig, filters: str | list[str] | None = None) -> str:
|
|
63
63
|
return ""
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
@staticmethod
|
|
66
|
+
def _count_code_fence(content: str) -> int:
|
|
67
|
+
pattern = _re.compile(r'^\s{0,3}(`{3,}|~{3,}|:{3,})', _re.MULTILINE)
|
|
67
68
|
matches = pattern.findall(str(content))
|
|
68
69
|
return max(len(match) for match in matches) if matches else 0
|
|
@@ -130,9 +130,24 @@ def sphinx(
|
|
|
130
130
|
"extensions": [
|
|
131
131
|
'myst_parser',
|
|
132
132
|
'sphinx_design',
|
|
133
|
-
'sphinx_togglebutton'
|
|
133
|
+
'sphinx_togglebutton',
|
|
134
|
+
],
|
|
135
|
+
"myst_enable_extensions": [
|
|
136
|
+
"amsmath",
|
|
137
|
+
"attrs_inline",
|
|
138
|
+
"colon_fence",
|
|
139
|
+
"deflist",
|
|
140
|
+
"dollarmath",
|
|
141
|
+
"fieldlist",
|
|
142
|
+
"html_admonition",
|
|
143
|
+
"html_image",
|
|
144
|
+
"linkify",
|
|
145
|
+
"replacements",
|
|
146
|
+
"smartquotes",
|
|
147
|
+
"strikethrough",
|
|
148
|
+
"substitution",
|
|
149
|
+
"tasklist",
|
|
134
150
|
],
|
|
135
|
-
"myst_enable_extensions": ["colon_fence"],
|
|
136
151
|
"html_theme": "pydata_sphinx_theme",
|
|
137
152
|
"html_title": "",
|
|
138
153
|
}
|
|
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
|