From 172615b0e3c4c3113c583a9ff5bb0706d37f1011 Mon Sep 17 00:00:00 2001
From: Daniel <845765@qq.com>
Date: Mon, 8 Dec 2025 11:03:08 +0800
Subject: [PATCH 1/2] :art: Improve the behavior of `Jump to parent block` in
lists https://github.com/siyuan-note/siyuan/issues/16516
Signed-off-by: Daniel <845765@qq.com>
---
kernel/model/block.go | 24 ++++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/kernel/model/block.go b/kernel/model/block.go
index 1eae22dcd..1425cb146 100644
--- a/kernel/model/block.go
+++ b/kernel/model/block.go
@@ -230,14 +230,26 @@ func GetBlockSiblingID(id string) (parent, previous, next string) {
return
}
- if ast.NodeListItem != parentBlock.Type {
- if parentBlock = treenode.ParentBlock(parentBlock); nil != parentBlock {
- parent = parentBlock.ID
- if ast.NodeDocument == parentBlock.Type {
- parent = treenode.FirstLeafBlock(parentBlock).ID
- }
+ parentCount := 0
+ for ; nil != parentBlock; parentBlock = treenode.ParentBlock(parentBlock) {
+ if ast.NodeDocument == parentBlock.Type {
+ break
}
+
+ if ast.NodeList == parentBlock.Type || ast.NodeBlockquote == parentBlock.Type || ast.NodeSuperBlock == parentBlock.Type || ast.NodeCallout == parentBlock.Type {
+ parentCount++
+ continue
+ }
+
+ if ast.NodeListItem == parentBlock.Type {
+ if 1 > parentCount {
+ parentBlock = treenode.ParentBlock(parentBlock)
+ }
+ parentBlock = treenode.ParentBlock(parentBlock)
+ }
+ break
}
+ parent = treenode.FirstLeafBlock(parentBlock).ID
parentBlock = treenode.ParentBlock(current)
for ; nil != parentBlock; parentBlock = treenode.ParentBlock(parentBlock) {
From 617273990d529868cd92ae1acb1405559ab20eae Mon Sep 17 00:00:00 2001
From: Daniel <845765@qq.com>
Date: Mon, 8 Dec 2025 16:26:13 +0800
Subject: [PATCH 2/2] :art: Improve text
https://github.com/siyuan-note/siyuan/issues/16533
Signed-off-by: Daniel <845765@qq.com>
---
app/appearance/langs/ar_SA.json | 2 +-
app/appearance/langs/de_DE.json | 2 +-
app/appearance/langs/en_US.json | 2 +-
app/appearance/langs/es_ES.json | 2 +-
app/appearance/langs/fr_FR.json | 2 +-
app/appearance/langs/he_IL.json | 2 +-
app/appearance/langs/it_IT.json | 2 +-
app/appearance/langs/ja_JP.json | 2 +-
app/appearance/langs/ko_KR.json | 2 +-
app/appearance/langs/pl_PL.json | 2 +-
app/appearance/langs/pt_BR.json | 2 +-
app/appearance/langs/ru_RU.json | 2 +-
app/appearance/langs/zh_CHT.json | 2 +-
app/appearance/langs/zh_CN.json | 2 +-
14 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/app/appearance/langs/ar_SA.json b/app/appearance/langs/ar_SA.json
index 372a05f64..7b5e0dd5e 100644
--- a/app/appearance/langs/ar_SA.json
+++ b/app/appearance/langs/ar_SA.json
@@ -414,7 +414,7 @@
"confirmPassword": "لقد تذكرت كلمة المرور بالفعل",
"passwordNoMatch": "كلمات المرور التي تم إدخالها مرتين غير متطابقة",
"cloudConfigTip": "الرجاء التهيئة في [الإعدادات - السحابة]",
- "confirmUninstall": "هل أنت متأكد من أنك تريد إلغاء تثبيت ${name}؟",
+ "confirmUninstall": "تأكيد إلغاء التثبيت ${name}؟
سيؤدي إلغاء التثبيت إلى حذف جميع الإعدادات والبيانات المرتبطة. يُرجى توخي الحيطة!",
"scrollGetMore": "مرر لأعلى ولأسفل لتحميل المزيد",
"flashcardNewCard": "جديد",
"flashcardReviewCard": "قديم",
diff --git a/app/appearance/langs/de_DE.json b/app/appearance/langs/de_DE.json
index e48d97034..ff4a6aa5d 100644
--- a/app/appearance/langs/de_DE.json
+++ b/app/appearance/langs/de_DE.json
@@ -414,7 +414,7 @@
"confirmPassword": "Ich habe das Passwort bereits gemerkt",
"passwordNoMatch": "Die zweimal eingegebenen Passwörter stimmen nicht überein",
"cloudConfigTip": "Bitte in [Einstellungen - Cloud] konfigurieren",
- "confirmUninstall": "Sind Sie sicher, dass Sie ${name} deinstallieren möchten?",
+ "confirmUninstall": "Deinstallation von ${name} bestätigen?
Die Deinstallation entfernt alle zugehörigen Einstellungen und Daten. Bitte vorsichtig vorgehen!",
"scrollGetMore": "Scrollen Sie nach oben und unten, um mehr zu laden",
"flashcardNewCard": "Neu",
"flashcardReviewCard": "Alt",
diff --git a/app/appearance/langs/en_US.json b/app/appearance/langs/en_US.json
index 8099c9bb7..3ce56111d 100644
--- a/app/appearance/langs/en_US.json
+++ b/app/appearance/langs/en_US.json
@@ -414,7 +414,7 @@
"confirmPassword": "I have already remembered the password",
"passwordNoMatch": "The passwords entered twice do not match",
"cloudConfigTip": "Please configure in [Settings - Cloud]",
- "confirmUninstall": "Are you sure you want to uninstall ${name}?",
+ "confirmUninstall": "Confirm uninstall of ${name}?
Uninstalling will remove all related settings and data. Proceed with caution!",
"scrollGetMore": "Scroll up and down to load more",
"flashcardNewCard": "New",
"flashcardReviewCard": "Old",
diff --git a/app/appearance/langs/es_ES.json b/app/appearance/langs/es_ES.json
index cdce0017b..c36785667 100644
--- a/app/appearance/langs/es_ES.json
+++ b/app/appearance/langs/es_ES.json
@@ -414,7 +414,7 @@
"confirmPassword": "Ya he recordado la contraseña",
"passwordNoMatch": "Las contraseñas ingresadas dos veces no coinciden",
"cloudConfigTip": "Configure en [Configuración - Nube]",
- "confirmUninstall": "¿Está seguro de que desea desinstalar ${name}?",
+ "confirmUninstall": "¿Confirmar la desinstalación de ${name}?
La desinstalación eliminará todas las configuraciones y datos relacionados. ¡Proceda con precaución!",
"scrollGetMore": "Desplácese hacia arriba y hacia abajo para cargar más",
"flashcardNewCard": "Nueva Tarjeta",
"flashcardReviewCard": "Vieja Tarjeta",
diff --git a/app/appearance/langs/fr_FR.json b/app/appearance/langs/fr_FR.json
index 811a78a63..c3e5c085b 100644
--- a/app/appearance/langs/fr_FR.json
+++ b/app/appearance/langs/fr_FR.json
@@ -414,7 +414,7 @@
"confirmPassword": "J'ai déjà retenu le mot de passe",
"passwordNoMatch": "Les mots de passe saisis deux fois ne correspondent pas",
"cloudConfigTip": "Veuillez configurer dans [Paramètres - Cloud]",
- "confirmUninstall": "Êtes-vous sûr de vouloir désinstaller ${name} ?",
+ "confirmUninstall": "Confirmer la désinstallation de ${name} ?
La désinstallation supprimera toutes les configurations et données associées. Veuillez faire preuve de prudence !",
"scrollGetMore": "Faites défiler de haut en bas pour en charger plus",
"flashcardNewCard": "Nouvelle carte",
"flashcardReviewCard": "Ancienne carte",
diff --git a/app/appearance/langs/he_IL.json b/app/appearance/langs/he_IL.json
index fc09ee165..265c0e0d2 100644
--- a/app/appearance/langs/he_IL.json
+++ b/app/appearance/langs/he_IL.json
@@ -414,7 +414,7 @@
"confirmPassword": "אני כבר זוכר את הסיסמה",
"passwordNoMatch": "הסיסמאות שהזנת לא תואמות",
"cloudConfigTip": "אנא הגדר ב[הגדרות - ענן]",
- "confirmUninstall": "האם אתה בטוח שברצונך להסיר את ${name}?",
+ "confirmUninstall": "לאשר הסרה של ${name}?
ההסרה תמחק את כל ההגדרות והנתונים הקשורים. יש לפעול בזהירות!",
"scrollGetMore": "גלול למעלה ולמטה כדי לטעון יותר",
"flashcardNewCard": "חדש",
"flashcardReviewCard": "ישן",
diff --git a/app/appearance/langs/it_IT.json b/app/appearance/langs/it_IT.json
index 59efc5759..f708f309a 100644
--- a/app/appearance/langs/it_IT.json
+++ b/app/appearance/langs/it_IT.json
@@ -414,7 +414,7 @@
"confirmPassword": "Ho già memorizzato la password",
"passwordNoMatch": "Le password inserite non coincidono",
"cloudConfigTip": "Configura in [Impostazioni - Cloud]",
- "confirmUninstall": "Sei sicuro di voler disinstallare ${name}?",
+ "confirmUninstall": "Confermi la disinstallazione di ${name}?
La disinstallazione rimuoverà tutte le impostazioni e i dati correlati. Procedere con cautela!",
"scrollGetMore": "Scorri su e giù per caricare di più",
"flashcardNewCard": "Nuova",
"flashcardReviewCard": "Vecchia",
diff --git a/app/appearance/langs/ja_JP.json b/app/appearance/langs/ja_JP.json
index 058c54578..2855d2b6c 100644
--- a/app/appearance/langs/ja_JP.json
+++ b/app/appearance/langs/ja_JP.json
@@ -414,7 +414,7 @@
"confirmPassword": "パスワードはすでに覚えています",
"passwordNoMatch": "入力されたパスワードが一致しません",
"cloudConfigTip": "[設定] - [クラウド] で設定してください",
- "confirmUninstall": "${name} をアンインストールしてもよろしいですか?",
+ "confirmUninstall": "本当に ${name} をアンインストールしてもよろしいですか?
アンインストールすると関連するすべての設定とデータが削除されます。ご注意ください!",
"scrollGetMore": "さらに読み込むには上下にスクロールしてください",
"flashcardNewCard": "新しいカード",
"flashcardReviewCard": "古いカード",
diff --git a/app/appearance/langs/ko_KR.json b/app/appearance/langs/ko_KR.json
index d65c8e6c5..8dce7d03c 100644
--- a/app/appearance/langs/ko_KR.json
+++ b/app/appearance/langs/ko_KR.json
@@ -414,7 +414,7 @@
"confirmPassword": "비밀번호를 이미 기억했습니다",
"passwordNoMatch": "두 번 입력한 비밀번호가 일치하지 않습니다",
"cloudConfigTip": "[설정 - 클라우드]에서 구성하세요",
- "confirmUninstall": "${name}을(를) 제거하시겠습니까?",
+ "confirmUninstall": "정말로 ${name} 을(를) 제거하시겠습니까?
제거하면 모든 관련 설정 및 데이터가 삭제됩니다. 신중하게 결정하세요!",
"scrollGetMore": "위아래로 스크롤하여 더 불러오기",
"flashcardNewCard": "신규",
"flashcardReviewCard": "이전",
diff --git a/app/appearance/langs/pl_PL.json b/app/appearance/langs/pl_PL.json
index b2a2b4177..146329ec6 100644
--- a/app/appearance/langs/pl_PL.json
+++ b/app/appearance/langs/pl_PL.json
@@ -414,7 +414,7 @@
"confirmPassword": "Zapamiętałem już hasło",
"passwordNoMatch": "Wprowadzone dwa hasła się nie zgadzają",
"cloudConfigTip": "Proszę skonfigurować w [Ustawienia - Chmura]",
- "confirmUninstall": "Czy na pewno chcesz odinstalować ${name}?",
+ "confirmUninstall": "Czy na pewno odinstalować ${name}?
Odinstalowanie usunie wszystkie powiązane ustawienia i dane. Proszę zachować ostrożność!",
"scrollGetMore": "Przewiń w górę i w dół, aby załadować więcej",
"flashcardNewCard": "Nowa",
"flashcardReviewCard": "Stara",
diff --git a/app/appearance/langs/pt_BR.json b/app/appearance/langs/pt_BR.json
index 51c6c64e0..1a9091291 100644
--- a/app/appearance/langs/pt_BR.json
+++ b/app/appearance/langs/pt_BR.json
@@ -414,7 +414,7 @@
"confirmPassword": "Eu já lembrei a senha",
"passwordNoMatch": "As senhas inseridas não coincidem",
"cloudConfigTip": "Por favor, configure em [Configurações - Nuvem]",
- "confirmUninstall": "Tem certeza que deseja desinstalar ${name}?",
+ "confirmUninstall": "Confirmar desinstalação de ${name}?
A desinstalação removerá todas as configurações e dados relacionados. Proceda com cautela!",
"scrollGetMore": "Role para cima e para baixo para carregar mais",
"flashcardNewCard": "Novo",
"flashcardReviewCard": "Antigo",
diff --git a/app/appearance/langs/ru_RU.json b/app/appearance/langs/ru_RU.json
index 128fe9505..2323229d6 100644
--- a/app/appearance/langs/ru_RU.json
+++ b/app/appearance/langs/ru_RU.json
@@ -414,7 +414,7 @@
"confirmPassword": "Я уже запомнил пароль",
"passwordNoMatch": "Введенные два пароля не совпадают",
"cloudConfigTip": "Пожалуйста, настройте в [Настройки - Облако]",
- "confirmUninstall": "Вы уверены, что хотите удалить ${name}?",
+ "confirmUninstall": "Подтвердить удаление ${name}?
Удаление удалит все связанные настройки и данные. Пожалуйста, действуйте осторожно!",
"scrollGetMore": "Прокрутите вверх и вниз, чтобы загрузить больше",
"flashcardNewCard": "Новая",
"flashcardReviewCard": "Старая",
diff --git a/app/appearance/langs/zh_CHT.json b/app/appearance/langs/zh_CHT.json
index 933347449..de19e686d 100644
--- a/app/appearance/langs/zh_CHT.json
+++ b/app/appearance/langs/zh_CHT.json
@@ -414,7 +414,7 @@
"confirmPassword": "我已經牢記密碼了",
"passwordNoMatch": "兩次輸入的密碼不一致",
"cloudConfigTip": "請在 [設置 - 雲端] 中進行配置",
- "confirmUninstall": "確定卸載 ${name} ?",
+ "confirmUninstall": "確定卸載 ${name} ?
卸載會刪除所有相關設定和資料,請謹慎決定!",
"scrollGetMore": "上下滾動即可加載更多內容",
"flashcardNewCard": "新卡",
"flashcardReviewCard": "舊卡",
diff --git a/app/appearance/langs/zh_CN.json b/app/appearance/langs/zh_CN.json
index e332bb290..757f1322a 100644
--- a/app/appearance/langs/zh_CN.json
+++ b/app/appearance/langs/zh_CN.json
@@ -414,7 +414,7 @@
"confirmPassword": "我已经牢记密码了",
"passwordNoMatch": "两次输入的密码不一致",
"cloudConfigTip": "请在 [设置 - 云端] 中进行配置",
- "confirmUninstall": "确定卸载 ${name} ?",
+ "confirmUninstall": "确定卸载 ${name} ?
卸载会删除所有相关配置和数据,请谨慎决定!",
"scrollGetMore": "上下滚动即可加载更多内容",
"flashcardNewCard": "新卡",
"flashcardReviewCard": "旧卡",