MCPcopy Create free account
hub / github.com/917Dhj/DeepPaperNote / math_render_issues

Function math_render_issues

scripts/lint_note.py:1168–1227  ·  view source on GitHub ↗
(text: str)

Source from the content-addressed store, hash-verified

1166
1167
1168def math_render_issues(text: str) -> list[dict[str, object]]:
1169 issues: list[dict[str, object]] = []
1170 blocks, delimiter_issues = _extract_math_blocks(text)
1171 issues.extend(delimiter_issues)
1172
1173 for block in blocks:
1174 content = str(block["content"])
1175 line_number = int(block["line_number"])
1176 snippet = str(block["snippet"])
1177
1178 if _has_double_escaped_tex_command(content):
1179 issues.append(
1180 {
1181 "line_number": line_number,
1182 "snippet": snippet,
1183 "reason": "double_escaped_tex_command",
1184 }
1185 )
1186 if _find_unbalanced_braces(content):
1187 issues.append(
1188 {
1189 "line_number": line_number,
1190 "snippet": snippet,
1191 "reason": "unbalanced_braces",
1192 }
1193 )
1194 if _has_environment_mismatch(content):
1195 issues.append(
1196 {
1197 "line_number": line_number,
1198 "snippet": snippet,
1199 "reason": "environment_mismatch",
1200 }
1201 )
1202 if _has_left_right_mismatch(content):
1203 issues.append(
1204 {
1205 "line_number": line_number,
1206 "snippet": snippet,
1207 "reason": "left_right_mismatch",
1208 }
1209 )
1210 if _has_invalid_frac_arguments(content):
1211 issues.append(
1212 {
1213 "line_number": line_number,
1214 "snippet": snippet,
1215 "reason": "invalid_frac_arguments",
1216 }
1217 )
1218
1219 deduped: list[dict[str, object]] = []
1220 seen: set[tuple[int, str, str]] = set()
1221 for issue in issues:
1222 key = (int(issue["line_number"]), str(issue["snippet"]), str(issue["reason"]))
1223 if key in seen:
1224 continue
1225 seen.add(key)

Calls 6

_extract_math_blocksFunction · 0.85
_find_unbalanced_bracesFunction · 0.85
_has_left_right_mismatchFunction · 0.85