From ee5eb01c5292892ec9156223d4b3a5749cd6e8b5 Mon Sep 17 00:00:00 2001 From: Achuan-2 Date: Thu, 25 Sep 2025 16:54:01 +0800 Subject: [PATCH] :art: The embed block of a heading supports hiding the heading itself --- app/appearance/langs/ar_SA.json | 6 +++- app/appearance/langs/de_DE.json | 6 +++- app/appearance/langs/en_US.json | 6 +++- app/appearance/langs/es_ES.json | 6 +++- app/appearance/langs/fr_FR.json | 6 +++- app/appearance/langs/he_IL.json | 6 +++- app/appearance/langs/it_IT.json | 6 +++- app/appearance/langs/ja_JP.json | 6 +++- app/appearance/langs/pl_PL.json | 6 +++- app/appearance/langs/pt_BR.json | 6 +++- app/appearance/langs/ru_RU.json | 6 +++- app/appearance/langs/zh_CHT.json | 6 +++- app/appearance/langs/zh_CN.json | 6 +++- app/src/config/editor.ts | 13 +++++++++ app/src/mobile/settings/editor.ts | 11 +++++++ app/src/protyle/gutter/index.ts | 39 +++++++++++++++++-------- app/src/protyle/render/blockRender.ts | 6 ++-- app/src/types/config.d.ts | 7 +++++ kernel/api/search.go | 4 +-- kernel/conf/editor.go | 2 ++ kernel/model/block.go | 42 +++++++++++++++++++++------ kernel/model/blockinfo.go | 17 +++++++++-- kernel/model/render.go | 34 ++++++++++++++++++++-- 23 files changed, 208 insertions(+), 45 deletions(-) diff --git a/app/appearance/langs/ar_SA.json b/app/appearance/langs/ar_SA.json index 9c9cb883e..0f3e39c22 100644 --- a/app/appearance/langs/ar_SA.json +++ b/app/appearance/langs/ar_SA.json @@ -674,7 +674,11 @@ "turnToDynamic": "نص المرساة الديناميكي", "sizeLimit": "الحد الأقصى", "trafficStat": "إحصاءات حركة المرور", - "hideHeadingBelowBlocks": "إخفاء الكتل تحت العنوان", + "headingEmbedMode": "إعدادات تضمين كتلة العنوان", + "headingEmbedModeTip": "تعيين نمط عرض كتلة العنوان في الكتلة المضمنة", + "showHeadingWithBlocks": "إظهار العنوان مع الكتل أدناه", + "showHeadingOnlyTitle": "إظهار العنوان فقط", + "showHeadingOnlyBlocks": "إظهار الكتل تحت العنوان فقط", "matchDiacritics": "مطابقة علامات التشكيل", "copyHPath": "نسخ المسار المقروء", "justify": "محاذاة من الجانبين", diff --git a/app/appearance/langs/de_DE.json b/app/appearance/langs/de_DE.json index 971070d69..4d954979c 100644 --- a/app/appearance/langs/de_DE.json +++ b/app/appearance/langs/de_DE.json @@ -674,7 +674,11 @@ "turnToDynamic": "Dynamischer Ankertext", "sizeLimit": "Limit", "trafficStat": "Verkehrsstatistiken", - "hideHeadingBelowBlocks": "Blöcke unter der Überschrift ausblenden", + "headingEmbedMode": "Überschrift-Block-Einbettungseinstellungen", + "headingEmbedModeTip": "Stellen Sie den Anzeigestil von Überschrift-Blöcken in eingebetteten Blöcken ein", + "showHeadingWithBlocks": "Überschrift mit Blöcken darunter anzeigen", + "showHeadingOnlyTitle": "Nur Überschrift anzeigen", + "showHeadingOnlyBlocks": "Nur Blöcke unter der Überschrift anzeigen", "matchDiacritics": "Diakritika abgleichen", "copyHPath": "Lesbaren Pfad kopieren", "justify": "Rechtsfertigen", diff --git a/app/appearance/langs/en_US.json b/app/appearance/langs/en_US.json index 8da46964b..dabd89227 100644 --- a/app/appearance/langs/en_US.json +++ b/app/appearance/langs/en_US.json @@ -674,7 +674,11 @@ "turnToDynamic": "Dynamic anchor text", "sizeLimit": "Limit", "trafficStat": "Traffic statistics", - "hideHeadingBelowBlocks": "Hide blocks below heading", + "headingEmbedMode": "Heading block embed settings", + "showHeadingWithBlocks": "Show heading with blocks below", + "showHeadingOnlyTitle": "Show heading only", + "showHeadingOnlyBlocks": "Show only blocks below heading", + "headingEmbedModeTip": "Set the display style of heading blocks in embed blocks", "matchDiacritics": "Match Diacritics", "copyHPath": "Copy readable path", "justify": "Justify", diff --git a/app/appearance/langs/es_ES.json b/app/appearance/langs/es_ES.json index 075e63424..624a3b8e9 100644 --- a/app/appearance/langs/es_ES.json +++ b/app/appearance/langs/es_ES.json @@ -674,7 +674,11 @@ "turnToDynamic": "Texto de anclaje dinámico", "sizeLimit": "Límite", "trafficStat": "Estadísticas de tráfico", - "hideHeadingBelowBlocks": "Ocultar bloques por debajo del encabezamiento", + "headingEmbedMode": "Configuración de incrustación de bloque de encabezado", + "headingEmbedModeTip": "Establecer el estilo de visualización de los bloques de encabezado en los bloques incrustados", + "showHeadingWithBlocks": "Mostrar encabezado con bloques debajo", + "showHeadingOnlyTitle": "Mostrar solo el encabezado", + "showHeadingOnlyBlocks": "Mostrar solo bloques debajo del encabezado", "matchDiacritics": " Hacer coincidir los diacríticos", "copyHPath": "Copiar ruta legible", "justify": "Justificar", diff --git a/app/appearance/langs/fr_FR.json b/app/appearance/langs/fr_FR.json index 5565a13a7..0aff37dd7 100644 --- a/app/appearance/langs/fr_FR.json +++ b/app/appearance/langs/fr_FR.json @@ -674,7 +674,11 @@ "turnToDynamic": "Texte d'ancrage dynamique", "sizeLimit": "Limite", "trafficStat": "Statistiques de trafic", - "hideHeadingBelowBlocks": "Masquer les blocs sous l'en-tête", + "headingEmbedMode": "Paramètres d'intégration de bloc de titre", + "showHeadingWithBlocks": "Afficher l'en-tête avec les blocs en dessous", + "showHeadingOnlyTitle": "Afficher uniquement l'en-tête", + "showHeadingOnlyBlocks": "Afficher uniquement les blocs sous l'en-tête", + "headingEmbedModeTip": "Définir le style d'affichage des blocs de titre dans les blocs intégrés", "matchDiacritics": "Respecter les accents et diacritiques", "copyHPath": "Copier le chemin lisible", "justify": "Justifier", diff --git a/app/appearance/langs/he_IL.json b/app/appearance/langs/he_IL.json index 686a75a65..0b8846624 100644 --- a/app/appearance/langs/he_IL.json +++ b/app/appearance/langs/he_IL.json @@ -674,7 +674,11 @@ "turnToDynamic": "טקסט עוגן דינמי", "sizeLimit": "מגבלה", "trafficStat": "סטטיסטיקות תעבורה", - "hideHeadingBelowBlocks": "החבא בלוקים מתחת לכותרת", + "headingEmbedMode": "הגדרות הטמעת בלוק כותרת", + "headingEmbedModeTip": "הגדר את סגנון התצוגה של בלוקי כותרת בבלוקים מוטמעים", + "showHeadingWithBlocks": "הצג כותרת עם בלוקים מתחתיה", + "showHeadingOnlyTitle": "הצג כותרת בלבד", + "showHeadingOnlyBlocks": "הצג רק בלוקים מתחת לכותרת", "matchDiacritics": "התאם טעמים", "copyHPath": "העתק נתיב קריא", "justify": "התאם", diff --git a/app/appearance/langs/it_IT.json b/app/appearance/langs/it_IT.json index a6a0d69b5..5510b114d 100644 --- a/app/appearance/langs/it_IT.json +++ b/app/appearance/langs/it_IT.json @@ -674,7 +674,11 @@ "turnToDynamic": "Testo ancora dinamico", "sizeLimit": "Limite", "trafficStat": "Statistiche traffico", - "hideHeadingBelowBlocks": "Nascondi blocchi sotto l'intestazione", + "headingEmbedMode": "Impostazioni incorporamento blocco intestazione", + "headingEmbedModeTip": "Imposta lo stile di visualizzazione dei blocchi di intestazione nei blocchi incorporati", + "showHeadingWithBlocks": "Mostra intestazione con blocchi sottostanti", + "showHeadingOnlyTitle": "Mostra solo intestazione", + "showHeadingOnlyBlocks": "Mostra solo blocchi sotto l'intestazione", "matchDiacritics": "Corrispondenza con diacritici", "copyHPath": "Copia percorso leggibile", "justify": "Giustifica", diff --git a/app/appearance/langs/ja_JP.json b/app/appearance/langs/ja_JP.json index 96d7a608d..a51c59a3a 100644 --- a/app/appearance/langs/ja_JP.json +++ b/app/appearance/langs/ja_JP.json @@ -674,7 +674,11 @@ "turnToDynamic": "動的アンカーテキスト", "sizeLimit": "制限", "trafficStat": "トラフィック統計", - "hideHeadingBelowBlocks": "見出し以下のブロックを非表示にする", + "headingEmbedMode": "見出しブロック埋め込み設定", + "headingEmbedModeTip": "見出しブロックの埋め込みブロック内での表示スタイルを設定", + "showHeadingWithBlocks": "見出しと下のブロックを表示", + "showHeadingOnlyTitle": "見出しのみ表示", + "showHeadingOnlyBlocks": "見出し下のブロックのみ表示", "matchDiacritics": "ダイアクリティカルマークを一致させる", "copyHPath": "パスをコピー", "justify": "両端揃え", diff --git a/app/appearance/langs/pl_PL.json b/app/appearance/langs/pl_PL.json index 963045f4c..151b03a5e 100644 --- a/app/appearance/langs/pl_PL.json +++ b/app/appearance/langs/pl_PL.json @@ -674,7 +674,11 @@ "turnToDynamic": "Dynamiczny tekst zakotwiczenia", "sizeLimit": "Limit", "trafficStat": "Statystyki ruchu", - "hideHeadingBelowBlocks": "Ukryj bloki poniżej nagłówka", + "headingEmbedMode": "Ustawienia osadzania bloku nagłówka", + "headingEmbedModeTip": "Ustaw styl wyświetlania bloków nagłówkowych w blokach osadzonych", + "showHeadingWithBlocks": "Pokaż nagłówek z blokami poniżej", + "showHeadingOnlyTitle": "Pokaż tylko nagłówek", + "showHeadingOnlyBlocks": "Pokaż tylko bloki poniżej nagłówka", "matchDiacritics": "Dopasuj diakrytyki", "copyHPath": "Kopiuj czytelną ścieżkę", "justify": "Wyrównanie", diff --git a/app/appearance/langs/pt_BR.json b/app/appearance/langs/pt_BR.json index b1a0e6bec..d7be0a38c 100644 --- a/app/appearance/langs/pt_BR.json +++ b/app/appearance/langs/pt_BR.json @@ -674,7 +674,11 @@ "turnToDynamic": "Texto âncora dinâmico", "sizeLimit": "Limite", "trafficStat": "Estatísticas de tráfego", - "hideHeadingBelowBlocks": "Ocultar blocos abaixo do título", + "headingEmbedMode": "Configurações de incorporação de bloco de cabeçalho", + "headingEmbedModeTip": "Definir o estilo de exibição dos blocos de cabeçalho nos blocos incorporados", + "showHeadingWithBlocks": "Mostrar título com blocos abaixo", + "showHeadingOnlyTitle": "Mostrar apenas o título", + "showHeadingOnlyBlocks": "Mostrar apenas blocos abaixo do título", "matchDiacritics": "Corresponder Diacríticos", "copyHPath": "Copiar caminho legível", "justify": "Justificar", diff --git a/app/appearance/langs/ru_RU.json b/app/appearance/langs/ru_RU.json index 6a6cdefa7..8fbf3a80b 100644 --- a/app/appearance/langs/ru_RU.json +++ b/app/appearance/langs/ru_RU.json @@ -674,7 +674,11 @@ "turnToDynamic": "Динамический анкорный текст", "sizeLimit": "Лимит", "trafficStat": "Статистика трафика", - "hideHeadingBelowBlocks": "Скрыть блоки ниже заголовка", + "headingEmbedMode": "Настройки встраивания блока заголовка", + "headingEmbedModeTip": "Установить стиль отображения блока заголовка во встроенном блоке", + "showHeadingWithBlocks": "Показать заголовок с блоками ниже", + "showHeadingOnlyTitle": "Показать только заголовок", + "showHeadingOnlyBlocks": "Показать только блоки ниже заголовка", "matchDiacritics": "Совпадение диакритики", "copyHPath": "Скопировать читаемый путь", "justify": "Выровнять", diff --git a/app/appearance/langs/zh_CHT.json b/app/appearance/langs/zh_CHT.json index 9ff140cd7..667e84fb9 100644 --- a/app/appearance/langs/zh_CHT.json +++ b/app/appearance/langs/zh_CHT.json @@ -674,7 +674,11 @@ "turnToDynamic": "動態錨文字", "sizeLimit": "上限", "trafficStat": "流量統計", - "hideHeadingBelowBlocks": "隱藏標題下方的塊", + "headingEmbedMode": "標題塊嵌入設定", + "headingEmbedModeTip": "設定標題塊在嵌入塊中的顯示樣式", + "showHeadingWithBlocks": "顯示標題與下方的區塊", + "showHeadingOnlyTitle": "僅顯示標題", + "showHeadingOnlyBlocks": "僅顯示標題下方的區塊", "matchDiacritics": "符合變音符號", "copyHPath": "複製可讀路徑", "justify": "兩側對齊", diff --git a/app/appearance/langs/zh_CN.json b/app/appearance/langs/zh_CN.json index addda041b..b94ebbc3b 100644 --- a/app/appearance/langs/zh_CN.json +++ b/app/appearance/langs/zh_CN.json @@ -674,7 +674,11 @@ "turnToDynamic": "动态锚文本", "sizeLimit": "上限", "trafficStat": "流量统计", - "hideHeadingBelowBlocks": "隐藏标题下方的块", + "headingEmbedMode": "标题块嵌入设置", + "showHeadingWithBlocks": "显示标题与下方的块", + "showHeadingOnlyTitle": "仅显示标题", + "showHeadingOnlyBlocks": "仅显示标题下方的块", + "headingEmbedModeTip": "设置标题块在嵌入块中的显示样式", "matchDiacritics": "匹配变音符号", "copyHPath": "复制可读路径", "justify": "两侧对齐", diff --git a/app/src/config/editor.ts b/app/src/config/editor.ts index 1475c7a60..315a9ab1c 100644 --- a/app/src/config/editor.ts +++ b/app/src/config/editor.ts @@ -69,6 +69,18 @@ export const editor = { +
+
+ ${window.siyuan.languages.headingEmbedMode} +
${window.siyuan.languages.headingEmbedModeTip}
+
+ + +