diff options
| author | altaf-creator <dev@altafcreator.com> | 2026-04-30 22:01:53 +0800 |
|---|---|---|
| committer | altaf-creator <dev@altafcreator.com> | 2026-04-30 22:01:53 +0800 |
| commit | db1c6676a13798ee57dbac429a1d5045b60356fb (patch) | |
| tree | 5ff305c09686de50bbcac404c1954e42c26ba494 /packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs | |
| parent | 97fa8f57fbefcbfa6b3e56c31a1e5b60ef1a9e37 (diff) | |
quite a big commit
Diffstat (limited to 'packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs')
| -rw-r--r-- | packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs b/packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs deleted file mode 100644 index aa3728e..0000000 --- a/packages/markdown-it-14.1.0/lib/rules_inline/escape.mjs +++ /dev/null @@ -1,69 +0,0 @@ -// Process escaped chars and hardbreaks - -import { isSpace } from '../common/utils.mjs' - -const ESCAPED = [] - -for (let i = 0; i < 256; i++) { ESCAPED.push(0) } - -'\\!"#$%&\'()*+,./:;<=>?@[]^_`{|}~-' - .split('').forEach(function (ch) { ESCAPED[ch.charCodeAt(0)] = 1 }) - -export default function escape (state, silent) { - let pos = state.pos - const max = state.posMax - - if (state.src.charCodeAt(pos) !== 0x5C/* \ */) return false - pos++ - - // '\' at the end of the inline block - if (pos >= max) return false - - let ch1 = state.src.charCodeAt(pos) - - if (ch1 === 0x0A) { - if (!silent) { - state.push('hardbreak', 'br', 0) - } - - pos++ - // skip leading whitespaces from next line - while (pos < max) { - ch1 = state.src.charCodeAt(pos) - if (!isSpace(ch1)) break - pos++ - } - - state.pos = pos - return true - } - - let escapedStr = state.src[pos] - - if (ch1 >= 0xD800 && ch1 <= 0xDBFF && pos + 1 < max) { - const ch2 = state.src.charCodeAt(pos + 1) - - if (ch2 >= 0xDC00 && ch2 <= 0xDFFF) { - escapedStr += state.src[pos + 1] - pos++ - } - } - - const origStr = '\\' + escapedStr - - if (!silent) { - const token = state.push('text_special', '', 0) - - if (ch1 < 256 && ESCAPED[ch1] !== 0) { - token.content = escapedStr - } else { - token.content = origStr - } - - token.markup = origStr - token.info = 'escape' - } - - state.pos = pos + 1 - return true -} |
