From db2efbaa0dfdeaf30486636b6a5ead1ff35efb54 Mon Sep 17 00:00:00 2001 From: fanlusky <1730976608@qq.com> Date: Wed, 2 Sep 2026 21:13:13 +0800 Subject: [PATCH] Add an option for [ / ] page turning. --- .../settings/ime-settings/src/modules/config-sync.ts | 4 ++++ .../settings/ime-settings/src/modules/input.ts | 12 ++++++++++++ .../settings/ime-settings/src/partials/input.html | 4 +++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/ui-html/webview2/settings/ime-settings/src/modules/config-sync.ts b/ui-html/webview2/settings/ime-settings/src/modules/config-sync.ts index 5779f0a7..3e9439a9 100644 --- a/ui-html/webview2/settings/ime-settings/src/modules/config-sync.ts +++ b/ui-html/webview2/settings/ime-settings/src/modules/config-sync.ts @@ -160,6 +160,10 @@ function applyConfigData(data: Record): void { const checkbox = document.getElementById('pagingCommaPeriodCheckbox') as HTMLInputElement | null; if (checkbox) checkbox.checked = data.general.paging_comma_period; } + if (typeof data?.general?.paging_brackets === 'boolean') { + const checkbox = document.getElementById('pagingBracketsCheckbox') as HTMLInputElement | null; + if (checkbox) checkbox.checked = data.general.paging_brackets; + } if (typeof data?.general?.paging_page_up_down === 'boolean') { const checkbox = document.getElementById('pagingPageUpDownCheckbox') as HTMLInputElement | null; if (checkbox) checkbox.checked = data.general.paging_page_up_down; diff --git a/ui-html/webview2/settings/ime-settings/src/modules/input.ts b/ui-html/webview2/settings/ime-settings/src/modules/input.ts index 78f21b51..28a6c8eb 100644 --- a/ui-html/webview2/settings/ime-settings/src/modules/input.ts +++ b/ui-html/webview2/settings/ime-settings/src/modules/input.ts @@ -196,6 +196,13 @@ export function setupInput(): void { setupPageOptions(); setupFrequencyOptions(); setupToggleButton('wordToCharacterToggleBtn', (active) => { + if (active) { + const pagingBrackets = document.getElementById('pagingBracketsCheckbox') as HTMLInputElement | null; + if (pagingBrackets?.checked) { + pagingBrackets.checked = false; + updateConfig('general.paging_brackets', false); + } + } updateConfig('input.word_to_character', active); }); setupToggleButton('alwaysChinesePunctuationToggleBtn', (active) => { @@ -295,12 +302,17 @@ function setupPageOptions(): void { const configPaths: Record = { minus: 'general.paging_minus_equal', comma: 'general.paging_comma_period', + brackets: 'general.paging_brackets', tab: 'general.paging_tab', page: 'general.paging_page_up_down', arrow: 'general.candidate_arrow_navigation' }; const path = configPaths[checkbox.value]; if (path) updateConfig(path, checkbox.checked); + if (checkbox.value === 'brackets' && checkbox.checked) { + applyToggleState('wordToCharacterToggleBtn', false); + updateConfig('input.word_to_character', false); + } }); }); } diff --git a/ui-html/webview2/settings/ime-settings/src/partials/input.html b/ui-html/webview2/settings/ime-settings/src/partials/input.html index f4d805c6..0c600563 100644 --- a/ui-html/webview2/settings/ime-settings/src/partials/input.html +++ b/ui-html/webview2/settings/ime-settings/src/partials/input.html @@ -107,6 +107,8 @@
+ +
@@ -231,7 +233,7 @@
以词定字
-
开启后,按 [ 上屏高亮候选的首个汉字,按 ] 上屏末个汉字
+
开启后,按 [ 上屏高亮候选的首个汉字,按 ] 上屏末个汉字;与翻页方式中的 [ / ] 互斥