aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorHsieh Chin Fan <pham@topo.tw>2024-10-17 10:39:38 +0800
committerHsieh Chin Fan <pham@topo.tw>2024-10-17 10:40:00 +0800
commit4aebafbfd91fa936a8057ec3a392514020132bbf (patch)
treed4e453a60066b1098ddbd73df47af6dae521ebfe
parentd91501af0d3860da1022e960199115c33b4a63a6 (diff)
feat: set data attribute for editor to disable HTML update
-rw-r--r--src/editor.mjs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/editor.mjs b/src/editor.mjs
index c258c3d..d56ad4b 100644
--- a/src/editor.mjs
+++ b/src/editor.mjs
@@ -64,6 +64,8 @@ const validateAnchorName = anchorName =>
64 * @param {RefLink} refLink - The reference link to append 64 * @param {RefLink} refLink - The reference link to append
65 */ 65 */
66const appendRefLink = (cm, refLink) => { 66const appendRefLink = (cm, refLink) => {
67 editor.dataset.update = 'false'
68
67 const { ref, link, title } = refLink 69 const { ref, link, title } = refLink
68 let refLinkString = `\n[${ref}]: ${link} "${title ?? ''}"` 70 let refLinkString = `\n[${ref}]: ${link} "${title ?? ''}"`
69 const lastLineIsRefLink = cm.getLine(cm.lastLine()).match(refLinkPattern) 71 const lastLineIsRefLink = cm.getLine(cm.lastLine()).match(refLinkPattern)
@@ -507,11 +509,13 @@ updateDumbyMap(() => {
507 509
508// Re-render HTML by editor content 510// Re-render HTML by editor content
509cm.on('change', (_, change) => { 511cm.on('change', (_, change) => {
510 if (change.origin?.match(/\+input|\+delete|paste/)) { 512 if (editor.dataset?.update !== 'false') {
511 textArea.dataset.scrollLine = cm.getCursor().line 513 textArea.dataset.scrollLine = cm.getCursor().line
512 updateDumbyMap(() => { 514 updateDumbyMap(() => {
513 updateCMScrollLine(cm) 515 updateCMScrollLine(cm)
514 }) 516 })
517 } else {
518 delete editor.dataset.update
515 } 519 }
516 addClassToCodeLines() 520 addClassToCodeLines()
517 completeForCodeBlock(change) 521 completeForCodeBlock(change)