Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e45f54c

Browse files
Merge pull request #5307 from plotly/update-script
Exclude code blocks that aren't run
2 parents a07ea45 + 2e38a9a commit e45f54c

File tree

2 files changed

+21
-13
lines changed

2 files changed

+21
-13
lines changed

‎bin/check-all-md.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
from pathlib import Path
22
import os
3-
import re
43
import sys
4+
from run_markdown import _parse_md
55

6-
PAT = re.compile(r"^```python\n(.+?)\n```", re.MULTILINE | re.DOTALL)
76
TMP_FILE = "tmp.py"
87

98
for filename in sys.argv[1:]:
109
content = Path(filename).read_text()
11-
blocks = PAT.findall(content)
12-
for i, b in enumerate(blocks):
13-
Path(TMP_FILE).write_text(b.strip())
10+
blocks = _parse_md(content)
11+
for i, block in enumerate(blocks):
12+
Path(TMP_FILE).write_text(block["code"].strip())
1413
sys.stdout.write(f"\n{'=' * 40}\n{filename}: {i}\n")
1514
sys.stdout.flush()
1615
sys.stdout.write(f"{'-' * 40}\n")

‎bin/run_markdown.py

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -162,17 +162,26 @@ def _parse_md(content):
162162
blocks = []
163163
current_block = None
164164
in_code_block = False
165+
in_region_block = False
165166

166167
for i, line in enumerate(lines):
168+
# Check for region start/end markers
169+
if "<!-- #region" in line:
170+
in_region_block = True
171+
elif "<!-- #endregion" in line:
172+
in_region_block = False
173+
167174
# Start of Python code block
168-
if line.strip().startswith("```python"):
169-
in_code_block = True
170-
current_block = {
171-
"start_line": i,
172-
"end_line": None,
173-
"code": [],
174-
"type": "python",
175-
}
175+
elif line.strip().startswith("```python"):
176+
# Only process code blocks that are NOT inside region blocks
177+
if not in_region_block:
178+
in_code_block = True
179+
current_block = {
180+
"start_line": i,
181+
"end_line": None,
182+
"code": [],
183+
"type": "python",
184+
}
176185

177186
# End of code block
178187
elif line.strip() == "```" and in_code_block:

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /