diff --git a/app/src/protyle/wysiwyg/keydown.ts b/app/src/protyle/wysiwyg/keydown.ts index 1d05aee56..82261962d 100644 --- a/app/src/protyle/wysiwyg/keydown.ts +++ b/app/src/protyle/wysiwyg/keydown.ts @@ -699,6 +699,27 @@ export const keydown = (protyle: IProtyle, editorElement: HTMLElement) => { return; } } + // 行首转义符前删除 https://github.com/siyuan-note/siyuan/issues/6092 + if (range.startOffset === 0 && + previousSibling && previousSibling.parentElement.getAttribute("data-type").indexOf('backslash') > -1 && + previousSibling.nodeType !== 3 && (previousSibling as HTMLElement).outerHTML === "\\" && + !hasPreviousSibling(previousSibling)) { + range.setStartBefore(previousSibling.parentElement); + removeBlock(protyle, nodeElement, range); + event.stopPropagation(); + event.preventDefault(); + return; + } + // 光标位于转义符前 F5 后,rang 和点击后的不同,也需进行判断 + if (range.startOffset === 1 && range.startContainer.nodeType !== 3 && + range.startContainer.parentElement.getAttribute("data-type").indexOf('backslash') > -1 && + !hasPreviousSibling(range.startContainer.parentElement)) { + range.setStartBefore(range.startContainer.parentElement); + removeBlock(protyle, nodeElement, range); + event.stopPropagation(); + event.preventDefault(); + return; + } const imgSelectElement = protyle.wysiwyg.element.querySelector(".img--select"); if (protyle.wysiwyg.element.querySelector(".protyle-wysiwyg--select")) { removeBlock(protyle, nodeElement, range);