(raw)
| 256 | |
| 257 | // Paste/drop pipeline: strip ```python fence, normalise CRLF+tabs, smart-dedent common indent, enforce `MAX_LINES`. |
| 258 | const insertNormalized = (raw) => { |
| 259 | const norm = unwrapFence(raw).replace(/\r\n?/g, '\n').replace(/\t/g, ' '.repeat(TAB_SIZE)); |
| 260 | insertAtCaret(dedentCommon(norm)); |
| 261 | }; |
| 262 | |
| 263 | // listeners |
| 264 | // One AbortController so destroy() detaches every listener below (jar.destroy sheds only CodeJar's). |
no test coverage detected