From a58916c6791428838570107a80615b3890a0e970 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Sun, 18 Aug 2024 21:38:19 +0800 Subject: [PATCH] :art: fix https://github.com/siyuan-note/siyuan/issues/12174 --- app/src/protyle/wysiwyg/keydown.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/src/protyle/wysiwyg/keydown.ts b/app/src/protyle/wysiwyg/keydown.ts index cea74a41d..2d6b76e76 100644 --- a/app/src/protyle/wysiwyg/keydown.ts +++ b/app/src/protyle/wysiwyg/keydown.ts @@ -1591,16 +1591,18 @@ export const keydown = (protyle: IProtyle, editorElement: HTMLElement) => { } }); } - const insertElement = document.createElement("span"); let language = nodeElement.querySelector(".protyle-action__language").textContent; if (!window.hljs.getLanguage(language)) { language = "plaintext"; } - insertElement.innerHTML = window.hljs.highlight(text.substr(0, text.length - 1), { + wbrElement.insertAdjacentHTML("afterend", window.hljs.highlight(text.substr(0, text.length - 1), { language, ignoreIllegals: true - }).value; - range.insertNode(insertElement); + }).value + "
"); + range.setStart(wbrElement.nextSibling, 0); + const brElement = wbrElement.parentElement.querySelector("br") + range.setEnd(brElement.previousSibling, brElement.previousSibling.textContent.length); + brElement.remove(); updateTransaction(protyle, nodeElement.getAttribute("data-node-id"), nodeElement.outerHTML, oldHTML); wbrElement.remove(); return;