Pārlūkot izejas kodu

:art: Supports disabling Markdown `~~` syntax input https://github.com/siyuan-note/siyuan/issues/12641

Daniel 9 mēneši atpakaļ
vecāks
revīzija
1ab7e16888

+ 8 - 6
app/appearance/langs/de_DE.json

@@ -44,18 +44,20 @@
   "autoLaunchMode0": "Nicht automatisch starten",
   "autoLaunchMode1": "Automatisch nach dem Booten starten",
   "autoLaunchMode2": "Automatisch starten und die Hauptoberfläche minimieren nach dem Booten",
+  "editorMarkdownInlineStrikethrough": "Markdown Inline-Durchstreichsyntax",
+  "editorMarkdownInlineStrikethroughTip": "Nach der Aktivierung wird die Eingabe der Inline-Durchstreichsyntax <code class='fn__code'>~~foo~~</code> unterstützt",
   "editorMarkdownInlineSup": "Markdown Inline-Hochstellungssyntax",
-  "editorMarkdownInlineSupTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>^foo^</code> Inline-Hochstellungssyntax unterstützt.",
+  "editorMarkdownInlineSupTip": "Nach der Aktivierung wird die Eingabe der Inline-Hochstellungssyntax <code class='fn__code'>^foo^</code> unterstützt",
   "editorMarkdownInlineSub": "Markdown Inline-Tiefstellungssyntax",
-  "editorMarkdownInlineSubTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>~foo~</code> Inline-Tiefstellungssyntax unterstützt.",
+  "editorMarkdownInlineSubTip": "Nach der Aktivierung wird die Eingabe der Inline-Tiefstellungssyntax <code class='fn__code'>~foo~</code> unterstützt",
   "editorMarkdownInlineTag": "Markdown Inline-Tag-Syntax",
-  "editorMarkdownInlineTagTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>#foo#</code> Inline-Tag-Syntax unterstützt.",
+  "editorMarkdownInlineTagTip": "Nach der Aktivierung wird die Eingabe der Inline-Tag-Syntax <code class='fn__code'>#foo#</code> unterstützt",
   "editorMarkdownInlineMath": "Markdown Inline-Formelsyntax",
-  "editorMarkdownInlineMathTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>$foo$</code> Inline-Formelsyntax unterstützt.",
+  "editorMarkdownInlineMathTip": "Nach der Aktivierung wird die Eingabe der Inline-Formelsyntax <code class='fn__code'>$foo$</code> unterstützt",
   "editorMarkdownInlineAsterisk": "Markdown Inline-Asterisk-Syntax",
-  "editorMarkdownInlineAsteriskTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>*foo*</code> Kursivsatz- und <code class='fn__code'>**foo**</code> Fettschrift-Syntax unterstützt.",
+  "editorMarkdownInlineAsteriskTip": "Nach der Aktivierung wird die Eingabe der Inline-Asterisk-Syntax <code class='fn__code'>*foo*</code> und <code class='fn__code'>**foo**</code> unterstützt",
   "editorMarkdownInlineUnderscore": "Markdown Inline-Unterstreichungssyntax",
-  "editorMarkdownInlineUnderscoreTip": "Nach der Aktivierung wird die Eingabe von <code class='fn__code'>_foo_</code> Kursivsatz- und <code class='fn__code'>__foo__</code> Fettschrift-Syntax unterstützt.",
+  "editorMarkdownInlineUnderscoreTip": "Nach der Aktivierung wird die Eingabe der Inline-Unterstreichungssyntax <code class='fn__code'>_foo_</code> und <code class='fn__code'>__foo__</code> unterstützt",
   "currentNotebook": "Aktuelles Notizbuch",
   "containerBlockTip1": "Die Aktivierung von Containerblöcken führt zu doppelten Suchergebnissen.",
   "containerBlockTip2": "Die Aktivierung von Dokumentenblöcken unterstützt derzeit nur die Suche nach Dokumenttiteln.",

+ 8 - 6
app/appearance/langs/en_US.json

@@ -44,18 +44,20 @@
   "autoLaunchMode0": "Do not launch automatically",
   "autoLaunchMode1": "Auto launch after booting",
   "autoLaunchMode2": "Auto launch and minimize the main interface after booting",
+  "editorMarkdownInlineStrikethrough": "Markdown inline strikethrough syntax",
+  "editorMarkdownInlineStrikethroughTip": "After enabling, the <code class='fn__code'>~~foo~~</code> inline strikethrough syntax input will be supported",
   "editorMarkdownInlineSup": "Markdown inline superscript syntax",
-  "editorMarkdownInlineSupTip": "After enabling, <code class='fn__code'>^foo^</code> inline superscript syntax input will be supported",
+  "editorMarkdownInlineSupTip": "After enabling, the <code class='fn__code'>^foo^</code> inline superscript syntax input will be supported",
   "editorMarkdownInlineSub": "Markdown inline subscript syntax",
-  "editorMarkdownInlineSubTip": "After enabling, <code class='fn__code'>~foo~</code> inline subscript syntax input will be supported",
+  "editorMarkdownInlineSubTip": "After enabling, the <code class='fn__code'>~foo~</code> inline subscript syntax input will be supported",
   "editorMarkdownInlineTag": "Markdown inline tag syntax",
-  "editorMarkdownInlineTagTip": "After enabling, <code class='fn__code'>#foo#</code> inline tag input syntax will be supported",
+  "editorMarkdownInlineTagTip": "After enabling, the <code class='fn__code'>#foo#</code> inline tag syntax input will be supported",
   "editorMarkdownInlineMath": "Markdown inline formula syntax",
-  "editorMarkdownInlineMathTip": "After enabling, <code class='fn__code'>$foo$</code> inline formula syntax input will be supported",
+  "editorMarkdownInlineMathTip": "After enabling, the <code class='fn__code'>$foo$</code> inline formula syntax input will be supported",
   "editorMarkdownInlineAsterisk": "Markdown inline asterisk syntax",
-  "editorMarkdownInlineAsteriskTip": "After enabling, <code class='fn__code'>*foo*</code> italic syntax and <code class='fn__code'>**foo**</code> bold syntax input will be supported",
+  "editorMarkdownInlineAsteriskTip": "After enabling, the <code class='fn__code'>*foo*</code> italic syntax and the <code class='fn__code'>**foo**</code> bold syntax input will be supported",
   "editorMarkdownInlineUnderscore": "Markdown inline underline syntax",
-  "editorMarkdownInlineUnderscoreTip": "After enabling, <code class='fn__code'>_foo_</code> italic syntax and <code class='fn__code'>__foo__</code> bold syntax input will be supported",
+  "editorMarkdownInlineUnderscoreTip": "After enabling, the <code class='fn__code'>_foo_</code> italic syntax and the <code class='fn__code'>__foo__</code> bold syntax input will be supported",
   "currentNotebook": "Current Notebook",
   "containerBlockTip1": "Enabling container blocks will result in duplicate search results",
   "containerBlockTip2": "Enabling document blocks currently only supports searching for document titles",

+ 3 - 1
app/appearance/langs/es_ES.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "No iniciar automáticamente",
   "autoLaunchMode1": "Inicio automático después del arranque",
   "autoLaunchMode2": "Iniciar automáticamente y minimizar la interfaz principal después del arranque",
+  "editorMarkdownInlineStrikethrough": "Sintaxis de tachado en línea de Markdown",
+  "editorMarkdownInlineStrikethroughTip": "Una vez habilitado, se admitirá la entrada de sintaxis de tachado en línea <code class='fn__code'>~~foo~~</code>",
   "editorMarkdownInlineSup": "Sintaxis de superíndice en línea de Markdown",
   "editorMarkdownInlineSupTip": "Después de habilitar, se admitirá la entrada de sintaxis de superíndice en línea <code class='fn__code'>^foo^</code>",
   "editorMarkdownInlineSub": "Sintaxis del subíndice en línea de Markdown",
@@ -53,7 +55,7 @@
   "editorMarkdownInlineMath": "Sintaxis de fórmula en línea de Markdown",
   "editorMarkdownInlineMathTip": "Después de habilitar, se admitirá la entrada de sintaxis de fórmula en línea <code class='fn__code'>$foo$</code>",
   "editorMarkdownInlineAsterisk": "Sintaxis de asterisco en línea de Markdown",
-  "editorMarkdownInlineAsteriskTip": "Después de habilitar, se admitirá la entrada de sintaxis <code class='fn__code'>*foo*</code> en cursiva y <code class='fn__code'>**foo**</code> en negrita" ,
+  "editorMarkdownInlineAsteriskTip": "Después de habilitar, se admitirá la entrada de sintaxis <code class='fn__code'>*foo*</code> en cursiva y <code class='fn__code'>**foo**</code> en negrita",
   "editorMarkdownInlineUnderscore": "Sintaxis de subrayado en línea de Markdown",
   "editorMarkdownInlineUnderscoreTip": "Después de habilitar, se admitirá la sintaxis <code class='fn__code'>_foo_</code> en cursiva y <code class='fn__code'>__foo__</code> en negrita",
   "currentNotebook": "Cuaderno actual",

+ 3 - 1
app/appearance/langs/fr_FR.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "Ne pas lancer automatiquement",
   "autoLaunchMode1": "Lancement automatique après le démarrage",
   "autoLaunchMode2": "Lancement automatique et minimisation de l'interface principale après le démarrage",
+  "editorMarkdownInlineStrikethrough": "Syntaxe de ligne barrée Markdown",
+  "editorMarkdownInlineStrikethroughTip": "Une fois activé, la saisie de la syntaxe de ligne barrée <code class='fn__code'>~~foo~~</code> sera prise en charge",
   "editorMarkdownInlineSup": "Syntaxe exposant Markdown en ligne",
   "editorMarkdownInlineSupTip": "Après l'activation, la saisie de la syntaxe en exposant <code class='fn__code'>^foo^</code> en ligne sera prise en charge",
   "editorMarkdownInlineSub": "Syntaxe d'indice en ligne Markdown",
@@ -53,7 +55,7 @@
   "editorMarkdownInlineMath": "Syntaxe de formule en ligne Markdown",
   "editorMarkdownInlineMathTip": "Après l'activation, la saisie de la syntaxe de formule en ligne <code class='fn__code'>$foo$</code> sera prise en charge",
   "editorMarkdownInlineAsterisk": "Syntaxe d'astérisque en ligne Markdown",
-  "editorMarkdownInlineAsteriskTip": "Après l'activation, la syntaxe <code class='fn__code'>*foo*</code> italique et la syntaxe <code class='fn__code'>**foo**</code> en gras seront prises en charge" ,
+  "editorMarkdownInlineAsteriskTip": "Après l'activation, la syntaxe <code class='fn__code'>*foo*</code> italique et la syntaxe <code class='fn__code'>**foo**</code> en gras seront prises en charge",
   "editorMarkdownInlineUnderscore": "Syntaxe de soulignement en ligne Markdown",
   "editorMarkdownInlineUnderscoreTip": "Après l'activation, la syntaxe <code class='fn__code'>_foo_</code> italique et la syntaxe <code class='fn__code'>__foo__</code> gras seront prises en charge",
   "currentNotebook": "Carnet actuel",

+ 3 - 1
app/appearance/langs/he_IL.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "אל תצא אוטומטית",
   "autoLaunchMode1": "צא אוטומטית לאחר אתחול",
   "autoLaunchMode2": "צא אוטומטית ומזער את הממשק העיקרי לאחר אתחול",
+  "editorMarkdownInlineStrikethrough": "תחביר קו חוצה בשורת Markdown",
+  "editorMarkdownInlineStrikethroughTip": "לאחר ההפעלה, ייתמך קלט תחביר קו חוצה בשורת <code class='fn__code'>~~foo~~</code>",
   "editorMarkdownInlineSup": "תחביר עליון בתוך Markdown",
   "editorMarkdownInlineSupTip": "לאחר הפעלה, <code class='fn__code'>^foo^</code> תחביר עליון פנימי יתמוך בקלט",
   "editorMarkdownInlineSub": "תחביר תת-מצבה בתוך Markdown",
@@ -55,7 +57,7 @@
   "editorMarkdownInlineAsterisk": "שימוש בתחביר כוכבית פנימית ב-Markdown",
   "editorMarkdownInlineAsteriskTip": "לאחר הפעלה, <code class='fn__code'>*foo*</code> תחביר נטוי ו <code class='fn__code'>**foo**</code> תחביר מודגש יתמוך בקלט",
   "editorMarkdownInlineUnderscore": "שימוש בתחביר קו תחתון פנימי ב-Markdown",
-  "editorMarkdownInlineUnderscoreTip": "לאחר הפעלה, <code class='fn__code'>_foo_</code> תחביר נטוי ו <code class='fn__code'>__foo__</code> תחביר מודגש יתמוך בקלט",
+  "editorMarkdownInlineUnderscoreTip": "לאחר הפעלה, <code class='fn__code'>_foo_</code> תחביר נטוי ו <code class='fn__code'>__foo__</code> תחביר מודגש יתמוך בקלט"
   "currentNotebook": "מחברת נוכחית",
   "containerBlockTip1": "הפעלת בלוקים יחידתיים תוביל לתוצאות חיפוש כפולות",
   "containerBlockTip2": "הפעלת בלוקי מסמכים תומכת כרגע רק בחיפוש הכותרות של המסמכים",

+ 3 - 1
app/appearance/langs/it_IT.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "Non avviare automaticamente",
   "autoLaunchMode1": "Avvio automatico dopo l'accensione",
   "autoLaunchMode2": "Avvio automatico e minimizzazione dell'interfaccia principale dopo l'accensione",
+  "editorMarkdownInlineStrikethrough": "Sintassi di barratura in linea di Markdown",
+  "editorMarkdownInlineStrikethroughTip": "Dopo l'attivazione, sarà supportato l'inserimento della sintassi di barratura in linea <code class='fn__code'>~~foo~~</code>",
   "editorMarkdownInlineSup": "Sintassi Markdown per apice in linea",
   "editorMarkdownInlineSupTip": "Dopo l'abilitazione, verrà supportato l'input della sintassi per apice in linea <code class='fn__code'>^foo^</code>",
   "editorMarkdownInlineSub": "Sintassi Markdown per pedice in linea",
@@ -55,7 +57,7 @@
   "editorMarkdownInlineAsterisk": "Sintassi asterisco in linea Markdown",
   "editorMarkdownInlineAsteriskTip": "Dopo aver attivato, saranno supportate la sintassi in corsivo <code class='fn__code'>*foo*</code> e la sintassi in grassetto <code class='fn__code'>**foo**</code>",
   "editorMarkdownInlineUnderscore": "Sintassi underscore in linea Markdown",
-  "editorMarkdownInlineUnderscoreTip": "Dopo aver attivato, saranno supportate la sintassi in corsivo <code class='fn__code'>_foo_</code> e la sintassi in grassetto <code class='fn__code'>__foo__</code>",
+  "editorMarkdownInlineUnderscoreTip": "Dopo aver attivato, saranno supportate la sintassi in corsivo <code class='fn__code'>_foo_</code> e la sintassi in grassetto <code class='fn__code'>__foo__</code>"
   "currentNotebook": "Taccuino corrente",
   "containerBlockTip1": "L'abilitazione dei blocchi contenitore comporterà risultati di ricerca duplicati",
   "containerBlockTip2": "L'abilitazione dei blocchi documento attualmente supporta solo la ricerca per titoli di documento",

+ 3 - 1
app/appearance/langs/ja_JP.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "自動的に起動しない",
   "autoLaunchMode1": "システムの起動後に自動的に起動する",
   "autoLaunchMode2": "システムの起動後にインターフェースを最小化して自動的に起動する",
+  "editorMarkdownInlineStrikethrough": "Markdown 行内取り消し線の構文",
+  "editorMarkdownInlineStrikethroughTip": "<code class='fn__code'>~~foo~~</code> 形式のインライン取り消し線構文を有効にします",
   "editorMarkdownInlineSup": "Markdown インライン上付き文字構文",
   "editorMarkdownInlineSupTip": "<code class='fn__code'>^foo^</code> 形式のインライン上付き文字構文を有効にします",
   "editorMarkdownInlineSub": "Markdown インライン下付き文字構文",
@@ -55,7 +57,7 @@
   "editorMarkdownInlineAsterisk": "Markdown インラインアスタリスク構文",
   "editorMarkdownInlineAsteriskTip": "<code class='fn__code'>*foo*</code> 形式の斜体構文と <code class='fn__code'>**foo**</code> 形式の太字構文を有効にします",
   "editorMarkdownInlineUnderscore": "Markdown インライン下線構文",
-  "editorMarkdownInlineUnderscoreTip": "<code class='fn__code'>_foo_</code> 形式の斜体構文と <code class='fn__code'>__foo__</code> 形式の太字構文を有効にします",
+  "editorMarkdownInlineUnderscoreTip": "<code class='fn__code'>_foo_</code> 形式の斜体構文と <code class='fn__code'>__foo__</code> 形式の太字構文を有効にします"
   "currentNotebook": "現在のノートブック",
   "containerBlockTip1": "コンテナブロックを有効にすると重複した検索結果が表示されます",
   "containerBlockTip2": "ドキュメントブロックはタイトルの検索のみをサポートしています",

+ 2 - 0
app/appearance/langs/pl_PL.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "Nie uruchamiaj automatycznie",
   "autoLaunchMode1": "Uruchom automatycznie po włączeniu",
   "autoLaunchMode2": "Uruchom automatycznie i zminimalizuj główny interfejs po włączeniu",
+  "editorMarkdownInlineStrikethrough": "Markdown składnia przekreślenia",
+  "editorMarkdownInlineStrikethroughTip": "Po włączeniu będzie obsługiwane wprowadzanie składni przekreślenia <code class='fn__code'>~~foo~~</code>",
   "editorMarkdownInlineSup": "Składnia Markdown dla indeksów dolnych w tekście",
   "editorMarkdownInlineSupTip": "Po włączeniu zostanie obsługiwana składnia indeksów dolnych w formacie <code class='fn__code'>^foo^</code>",
   "editorMarkdownInlineSub": "Składnia Markdown dla indeksów górnych w tekście",

+ 3 - 1
app/appearance/langs/ru_RU.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "Не запускать автоматически",
   "autoLaunchMode1": "Автозапуск после загрузки",
   "autoLaunchMode2": "Автозапуск и минимизация главного интерфейса после загрузки",
+  "editorMarkdownInlineStrikethrough": "Markdown синтаксис зачёркивания",
+  "editorMarkdownInlineStrikethroughTip": "После включения будет поддерживаться ввод синтаксиса зачёркивания <code class='fn__code'>~~foo~~</code>",
   "editorMarkdownInlineSup": "Markdown синтаксис для надстрочного индекса",
   "editorMarkdownInlineSupTip": "После включения будет поддерживаться ввод надстрочного индекса <code class='fn__code'>^foo^</code>",
   "editorMarkdownInlineSub": "Markdown синтаксис для подстрочного индекса",
@@ -1556,5 +1558,5 @@
     "246": "Название документа не может содержать / и было заменено на _",
     "247": "Файл [%s] больше максимального ограничения [%s] и был проигнорирован для загрузки в облако",
     "248": "Целевой заголовок находится в контейнерном блоке и не может использоваться как пункт сброса"
-	}
+  }
 }

+ 2 - 0
app/appearance/langs/zh_CHT.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "不自動啟動",
   "autoLaunchMode1": "開機自動啟動",
   "autoLaunchMode2": "開機後自動啟動並最小化主介面",
+  "editorMarkdownInlineStrikethrough": "Markdown 行級刪除線語法",
+  "editorMarkdownInlineStrikethroughTip": "啟用後將支持 <code class='fn__code'>~~foo~~</code> 行級刪除線語法輸入",
   "editorMarkdownInlineSup": "Markdown 行級上標語法",
   "editorMarkdownInlineSupTip": "啟用後將支援 <code class='fn__code'>^foo^</code> 行級上標語法輸入",
   "editorMarkdownInlineSub": "Markdown 行級下標語法",

+ 2 - 0
app/appearance/langs/zh_CN.json

@@ -44,6 +44,8 @@
   "autoLaunchMode0": "不自动启动",
   "autoLaunchMode1": "开机后自动启动",
   "autoLaunchMode2": "开机后自动启动并最小化主界面",
+  "editorMarkdownInlineStrikethrough": "Markdown 行级删除线语法",
+  "editorMarkdownInlineStrikethroughTip": "启用后将支持 <code class='fn__code'>~~foo~~</code> 行级删除线语法输入",
   "editorMarkdownInlineSup": "Markdown 行级上标语法",
   "editorMarkdownInlineSupTip": "启用后将支持 <code class='fn__code'>^foo^</code> 行级上标语法输入",
   "editorMarkdownInlineSub": "Markdown 行级下标语法",

+ 10 - 1
app/src/config/editor.ts

@@ -319,6 +319,14 @@ export const editor = {
     </div>
     <span class="fn__space"></span>
     <input class="b3-switch fn__flex-center" id="editorMarkdownInlineMath" type="checkbox"${window.siyuan.config.editor.markdown.inlineMath ? " checked" : ""}/>
+</label>
+<label class="fn__flex b3-label">
+    <div class="fn__flex-1">
+        ${window.siyuan.languages.editorMarkdownInlineStrikethrough}
+        <div class="b3-label__text">${window.siyuan.languages.editorMarkdownInlineStrikethroughTip}</div>
+    </div>
+    <span class="fn__space"></span>
+    <input class="b3-switch fn__flex-center" id="editorMarkdownInlineStrikethrough" type="checkbox"${window.siyuan.config.editor.markdown.inlineStrikethrough ? " checked" : ""}/>
 </label>`;
     },
     bindEvent: () => {
@@ -353,7 +361,8 @@ export const editor = {
                     inlineSup: (editor.element.querySelector("#editorMarkdownInlineSup") as HTMLInputElement).checked,
                     inlineSub: (editor.element.querySelector("#editorMarkdownInlineSub") as HTMLInputElement).checked,
                     inlineTag: (editor.element.querySelector("#editorMarkdownInlineTag") as HTMLInputElement).checked,
-                    inlineMath: (editor.element.querySelector("#editorMarkdownInlineMath") as HTMLInputElement).checked
+                    inlineMath: (editor.element.querySelector("#editorMarkdownInlineMath") as HTMLInputElement).checked,
+                    inlineStrikethrough: (editor.element.querySelector("#editorMarkdownInlineStrikethrough") as HTMLInputElement).checked
                 },
                 allowHTMLBLockScript: (editor.element.querySelector("#allowHTMLBLockScript") as HTMLInputElement).checked,
                 justify: (editor.element.querySelector("#justify") as HTMLInputElement).checked,

+ 10 - 1
app/src/mobile/settings/editor.ts

@@ -20,7 +20,8 @@ const setEditor = (modelMainElement: Element) => {
         inlineSup: (modelMainElement.querySelector("#editorMarkdownInlineSup") as HTMLInputElement).checked,
         inlineSub: (modelMainElement.querySelector("#editorMarkdownInlineSub") as HTMLInputElement).checked,
         inlineTag: (modelMainElement.querySelector("#editorMarkdownInlineTag") as HTMLInputElement).checked,
-        inlineMath: (modelMainElement.querySelector("#editorMarkdownInlineMath") as HTMLInputElement).checked
+        inlineMath: (modelMainElement.querySelector("#editorMarkdownInlineMath") as HTMLInputElement).checked,
+        inlineStrikethrough: (modelMainElement.querySelector("#editorMarkdownInlineStrikethrough") as HTMLInputElement).checked
     };
     window.siyuan.config.editor.allowHTMLBLockScript = (modelMainElement.querySelector("#allowHTMLBLockScript") as HTMLInputElement).checked;
     window.siyuan.config.editor.dynamicLoadBlocks = dynamicLoadBlocks;
@@ -312,6 +313,14 @@ export const initEditor = () => {
     </div>
     <span class="fn__space"></span>
     <input class="b3-switch fn__flex-center" id="editorMarkdownInlineMath" type="checkbox"${window.siyuan.config.editor.markdown.inlineMath ? " checked" : ""}/>
+</label>
+<label class="fn__flex b3-label">
+    <div class="fn__flex-1">
+       ${window.siyuan.languages.editorMarkdownInlineStrikethrough}
+        <div class="b3-label__text">${window.siyuan.languages.editorMarkdownInlineStrikethroughTip}</div>
+    </div>
+    <span class="fn__space"></span>
+    <input class="b3-switch fn__flex-center" id="editorMarkdownInlineStrikethrough" type="checkbox"${window.siyuan.config.editor.markdown.inlineStrikethrough ? " checked" : ""}/>
 </label>`,
         bindEvent(modelMainElement: HTMLElement) {
             modelMainElement.querySelector("#clearHistory").addEventListener("click", () => {

+ 1 - 0
app/src/protyle/render/setLute.ts

@@ -31,6 +31,7 @@ export const setLute = (options: ILuteOptions) => {
     lute.SetSub(window.siyuan.config.editor.markdown.inlineSub);
     lute.SetTag(window.siyuan.config.editor.markdown.inlineTag);
     lute.SetInlineMath(window.siyuan.config.editor.markdown.inlineMath);
+    lute.SetGFMStrikethrough(window.siyuan.config.editor.markdown.inlineStrikethrough);
     lute.SetGFMStrikethrough1(false);
     lute.SetSpin(true);
     lute.SetProtyleWYSIWYG(true);

+ 1 - 0
app/src/protyle/util/reload.ts

@@ -32,6 +32,7 @@ export const reloadProtyle = (protyle: IProtyle, focus: boolean, updateReadonly?
     protyle.lute.SetSub(window.siyuan.config.editor.markdown.inlineSub);
     protyle.lute.SetTag(window.siyuan.config.editor.markdown.inlineTag);
     protyle.lute.SetInlineMath(window.siyuan.config.editor.markdown.inlineMath);
+    protyle.lute.SetGFMStrikethrough(window.siyuan.config.editor.markdown.inlineStrikethrough);
     protyle.lute.SetGFMStrikethrough1(false);
     addLoading(protyle);
     if (protyle.options.backlinkData) {

+ 4 - 0
app/src/types/config.d.ts

@@ -312,6 +312,10 @@ declare namespace Config {
          * Whether to enable the inline math
          */
         inlineMath: boolean;
+        /**
+         * Whether to enable the inline strikethrough
+         */
+        inlineStrikethrough: boolean;
     }
 
     /**

+ 2 - 0
app/src/types/protyle.d.ts

@@ -206,6 +206,8 @@ declare class Lute {
 
     public SetInlineMath(enable: boolean): void;
 
+    public SetGFMStrikethrough(enable: boolean): void;
+
     public SetGFMStrikethrough1(enable: boolean): void;
 
     public SetMark(enable: boolean): void;

+ 16 - 12
kernel/util/lute.go

@@ -26,21 +26,23 @@ import (
 
 // MarkdownSettings 运行时 Markdown 配置。
 var MarkdownSettings = &Markdown{
-	InlineAsterisk:   true,
-	InlineUnderscore: true,
-	InlineSup:        true,
-	InlineSub:        true,
-	InlineTag:        true,
-	InlineMath:       true,
+	InlineAsterisk:      true,
+	InlineUnderscore:    true,
+	InlineSup:           true,
+	InlineSub:           true,
+	InlineTag:           true,
+	InlineMath:          true,
+	InlineStrikethrough: true,
 }
 
 type Markdown struct {
-	InlineAsterisk   bool `json:"inlineAsterisk"`   // 是否启用行级 * 语法
-	InlineUnderscore bool `json:"inlineUnderscore"` // 是否启用行级 _ 语法
-	InlineSup        bool `json:"inlineSup"`        // 是否启用行级上标
-	InlineSub        bool `json:"inlineSub"`        // 是否启用行级下标
-	InlineTag        bool `json:"inlineTag"`        // 是否启用行级标签
-	InlineMath       bool `json:"inlineMath"`       // 是否启用行级公式
+	InlineAsterisk      bool `json:"inlineAsterisk"`      // 是否启用行级 * 语法
+	InlineUnderscore    bool `json:"inlineUnderscore"`    // 是否启用行级 _ 语法
+	InlineSup           bool `json:"inlineSup"`           // 是否启用行级上标
+	InlineSub           bool `json:"inlineSub"`           // 是否启用行级下标
+	InlineTag           bool `json:"inlineTag"`           // 是否启用行级标签
+	InlineMath          bool `json:"inlineMath"`          // 是否启用行级公式
+	InlineStrikethrough bool `json:"inlineStrikethrough"` // 是否启用行级删除线
 }
 
 func NewLute() (ret *lute.Lute) {
@@ -61,6 +63,7 @@ func NewLute() (ret *lute.Lute) {
 	ret.SetSub(MarkdownSettings.InlineSub)
 	ret.SetTag(MarkdownSettings.InlineTag)
 	ret.SetInlineMath(MarkdownSettings.InlineMath)
+	ret.SetGFMStrikethrough(MarkdownSettings.InlineStrikethrough)
 	ret.SetInlineMathAllowDigitAfterOpenMarker(true)
 	ret.SetGFMStrikethrough1(false)
 	ret.SetFootnotes(false)
@@ -96,6 +99,7 @@ func NewStdLute() (ret *lute.Lute) {
 	ret.SetSub(MarkdownSettings.InlineSub)
 	ret.SetTag(MarkdownSettings.InlineTag)
 	ret.SetInlineMath(MarkdownSettings.InlineMath)
+	ret.SetGFMStrikethrough(MarkdownSettings.InlineStrikethrough)
 	ret.SetGFMStrikethrough1(false)
 	return
 }