每行起始字符偏移。lines[i] 起始于 starts[i]。
(text: str)
| 64 | |
| 65 | |
| 66 | def _line_starts(text: str) -> list[int]: |
| 67 | """每行起始字符偏移。lines[i] 起始于 starts[i]。""" |
| 68 | starts = [0] |
| 69 | for i, ch in enumerate(text): |
| 70 | if ch == "\n": |
| 71 | starts.append(i + 1) |
| 72 | return starts |
| 73 | |
| 74 | |
| 75 | def _classify_lines(lines: list[str]) -> list[str]: |