Commit Graph
72 Commits
Author SHA1 Message Date
fanlusky 2bc321ecfb Add uppercase-first reverse auxiliary-code matching with dedicated caching for Shuangpin. 2026-08-16 02:40:14 +08:00
fanlusky 8ec9ec9f17 Add the feature that repeated smart punctuation input switches to Chinese punctuation. 2026-08-10 03:23:50 +08:00
fanlusky 6f50814266 Add Microsoft Shuangpin scheme. 2026-08-10 01:54:27 +08:00
fanlusky a2aedbf39f Support paired punctuation. 2026-08-10 00:38:09 +08:00
fanlusky dd113048f8 Add validation for dictionary insertion. 2026-08-09 22:27:16 +08:00
fanlusky 29242b2641 Also add short english words to cands. 2026-08-09 18:37:04 +08:00
fanlusky 32d9978fd5 Add some time and date styles. 2026-08-09 18:13:48 +08:00
fanlusky 33a86c11b6 Add date-time quick input (T-mode) feature, strengthen installation to not overwrite user's config.toml, and add a cold-start protection for FTB that "displays within the page ready / up to 6s grace period, then shows/hides according to actual status" (still rebuilds webview2 on upgrade). 2026-08-08 12:37:24 +08:00
fanlusky 23d78f161a Fix the issue where some database entries fail to replay during installation. 2026-08-04 23:25:21 +08:00
fanlusky 28b7f174e6 Fix the issue where words created from cloud candidates cannot be deleted. 2026-08-04 02:50:05 +08:00
fanlusky 4f608437a0 Fix UILess Mode issues to support Chinese input in Delta Force. 2026-08-04 01:09:38 +08:00
fanlusky 6a7b6c58d0 Fix the issue where the configuration for 9 candidates does not take effect. 2026-08-03 22:29:24 +08:00
fanlusky 5f85070f2b Add more auxiliary code schemes. 2026-08-03 01:12:45 +08:00
fanlusky 3747f42128 Fixed the issue where, after adding a manual segmentation symbol to the full pinyin xs'h, the preceding part does not automatically segment. 2026-08-03 00:45:32 +08:00
fanlusky b7f17facfa Expand the range of the candidate window font size setting slightly.
Fix the issue where AI predictions cannot be directly committed and instead trigger word-creation mode, and fix the issue where words generated by AI predictions cannot be deleted via right-click.
2026-08-03 00:07:20 +08:00
fanlusky aad3992541 Migrate some shortcuts to keyeventsink. 2026-08-02 22:57:21 +08:00
fanlusky a4206951a9 Fix the issue where the Chinese/English status between the tray icon and the FTB is not synchronized in VSCode multi-window scenarios, and also fix the issue where Chrome applications do not follow the default Chinese/English status when opened. 2026-08-02 21:47:54 +08:00
fanlusky 9fa82d8878 Add English input mode. 2026-08-01 23:15:02 +08:00
fanlusky 4848ac1cff Fix the issue where selecting candidates with the numeric keypad fails to commit and causes the interface to flicker and freeze. 2026-08-01 17:45:12 +08:00
fanlusky 70d40bfa10 Fix: 仓耳今楷 now is supported in cand wnd and settings wnd preview. 2026-08-01 15:33:00 +08:00
fanlusky de6b5affc0 Add shoudao shuangpin schema. 2026-08-01 04:30:15 +08:00
fanlusky 3b3b7304ec Preserve user configuration during upgrade. 2026-08-01 03:33:42 +08:00
fanlusky f70d210465 In auxiliary code mode, AI prediction should not send requests, just like cloud prediction. 2026-07-31 16:12:03 +08:00
fanlusky 4994aa884a fix(candidate): prefetch initial candidates before partial last page
Expand limited single-letter candidates before entering a partially filled
last page so pagination advances normally and the page is full on first display.
2026-07-29 22:23:33 +08:00
fanlusky 2983594211 test(shuangpin): cover multi-syllable suggestion storage
Add regression coverage for storing multi-syllable cloud and AI candidates
from their raw shuangpin sequence.
2026-07-29 20:45:28 +08:00
fanlusky a033f9d2c2 feat(composition): support phrase creation from incomplete pinyin
- continue phrase creation for abbreviated quanpin and shuangpin input
- preserve manual segmentation boundaries in the remaining input
- restrict helpcode detection to complete unsegmented pinyin
- accumulate and validate canonical pinyin before phrase insertion
- route completed phrases through canonical-pinyin storage
- add coverage for abbreviations, manual segmentation, and helpcodes
2026-07-29 19:53:21 +08:00
fanlusky 2edf16d01e feat: add word-to-character candidate selection
- add a disabled-by-default word-to-character setting
- commit the first or last Han character with [ and ]
- use the highlighted candidate for punctuation commits
- preserve punctuation behavior when no Han character is available
- add exact-text commit IPC support and related tests
2026-07-29 13:43:36 +08:00
fanlusky e41bee9a20 feat(candidate): support cross-page arrow navigation
- move down from the last candidate to the next page
- move up from the first candidate to the previous page
- preserve selection when expanding initial candidates
- keep navigation bounded at the first and last candidates
- add regression tests for cross-page selection
2026-07-29 12:18:13 +08:00
fanlusky 06173c1e25 fix(input): deduplicate manual separators during composition editing
- reject apostrophes adjacent to an existing manual separator
- add regression coverage for quanpin and shuangpin deduplication
- update the IME engine submodule
2026-07-29 11:57:19 +08:00
fanlusky 049ba5d20a fix(quanpin): preserve manual segmentation in preedit and candidate 2026-07-29 11:38:27 +08:00
fanlusky 21fb3a9e2e feat(settings): add user dictionary export support
- export Pinyin, Wubi, English, and quick-phrase dictionaries
- export unknown-source multiword Pinyin entries
- filter single-character Pinyin entries
- generate UTF-8 text files with dictionary-specific formats
- add coverage for insertion tracking and bounded ranking
2026-07-29 01:17:18 +08:00
fanlusky f24437ab8e fix: handle terminal IME deactivation fallback
Accept authenticated terminal deactivation notices over the Aux pipe when the
Main connection fails during teardown. Fence fallback notices by client and
focus token to prevent stale sessions from hiding the floating toolbar, and
add regression coverage for the validation policy.
2026-07-29 00:16:16 +08:00
fanlusky 025f966a90 perf: reuse persistent database connections for fixed candidates 2026-07-27 20:46:49 +08:00
fanlusky e8736d66b9 feat: integrate candidate ranking, pinning, and cache refresh 2026-07-27 20:25:27 +08:00
fanlusky d5523dd44d feat: preserve user dictionary changes across updates 2026-07-27 16:32:34 +08:00
fanlusky 02d5a3ff37 fix(candwnd): measure and size candidate wrap at 600 DIP
Force wrap-aware measure, serialize FineTune after measure content
updates, and preserve flip-up host height via MarginTop.

feat: lazily load single-letter Pinyin candidates

- query the top 24 single-letter candidates from the database
- load the complete candidate list on the first page-down action
- apply the same behavior to Shuangpin and Quanpin
- resolve Shuangpin initials according to the active profile
- preserve candidate frequency adjustment and pinning
- disable deletion for single-letter candidates
- add regression tests for Shuangpin v-to-zh mapping and lazy expansion
2026-07-27 16:12:46 +08:00
fanlusky 0dbe4c2c86 Add voice commit modes, InsertText IPC, and Ctrl+Shift+Alt hotkey fix.
Support tsf/sendinput/ctrl_v voice commit, route TSF inserts via worker
InsertText, handle WM_SYSKEYDOWN for Ctrl+Shift+Alt+digit candidate delete,
and skip watchdog when the IME profile is disabled.
2026-07-25 21:30:44 +08:00
fanlusky 4f859d012f fix: stabilize AI/cloud candidate apply to restore paging and prevent duplicate 🤖
Skip async AI/cloud refresh on paging and selection keys, early-exit when the
suggestion is already in the list, and dedupe series-cache inserts so repeated
cache hits no longer reset page_index or accumulate AI rows.
2026-07-24 00:37:23 +08:00
fanlusky 7f06a1a046 fix: sync tray floating-toolbar toggle from config
Refresh the menu toggle from general.floating_toolbar on show,
navigation, and config reload so it stays aligned with Settings.
Refs metasequoiaime/MetasequoiaImeTsf#17
2026-07-23 21:43:15 +08:00
fanlusky c92bff8734 Preliminarily support customizing preedit on the TSF side. 2026-07-21 13:00:15 +08:00
fanlusky 4765d72156 Integrate the handwriting recognition board into the server. 2026-07-20 01:57:31 +08:00
fanlusky 7775b97c09 Fix the issue where the candidate window cannot be pulled up when switching back from Microsoft's emoji panel, and deeply optimize the stability of IPC connections. 2026-07-16 21:41:09 +08:00
fanlusky 985ec87ea2 Add support for the Ziranma Shuangpin scheme. 2026-07-15 00:26:07 +08:00
fanlusky e417eaee64 Refactor to prepare for adding the Ziranma scheme. 2026-07-14 23:39:34 +08:00
fanlusky df6002c03e Add preliminary support for Chinese-English mixed input. 2026-07-14 19:00:09 +08:00
fanlusky fe1cc4a1e1 Add support for the Wubi input method. 2026-07-13 18:35:52 +08:00
fanlusky c325828bc9 Add a cloud icon to cloud candidates. 2026-07-11 10:52:38 +08:00
fanlusky e3317a248e Fix the issue where cloud prediction for engine and shuangpin is not stored in the database. 2026-06-25 23:21:28 +08:00
fanlusky e9f12a6a07 Add fallback query for full pinyin such as gei, dia, biang, yo. 2026-06-23 09:06:56 +08:00
fanlusky 2463d5486c The engine backend should also cache cloud prediction results, and ensure that filtering with auxiliary codes is consistent with legacy behavior. 2026-06-23 07:26:03 +08:00