Commit Graph

1842 Commits

Author SHA1 Message Date
ovadmin d672136843 實作簡單的用戶選字記憶模型
這個模型基本上只是根據游標前的兩個 unigram 記憶當前的用戶選字。當有超過
一個以上的用戶選字時,則要給每個選字評分。評分標準是選字頻率乘上一個透過
半衰期遞減的最近選字經歷時間。如此一來我們在「少用但最近選過」及「常用但
最近少選」之間取得一個平衡。半衰期透過經驗法則決定。

目前這個簡易模型並不存入磁碟,因此下一次重開機後就會洗掉重來。目前這樣選
擇純粹是因為模型有半衰期,因此長時間存放後還是會遺忘。

這個模型的好處是對既有詞庫提供詞的影響很小,對於連續單字詞的 override 有
還不錯的幫助。如此對於人名、地名、公司名等專有名詞,應該可以減少選字的頻
率。這個模型應用起來的缺點是,如果用戶修改的字詞原來是個雙字詞,例如先前
的兩個 unigram 分別是 A, BB ,而用戶想改的是 BB 的第二個字,使選完後的三
個字分別是 A, B', C,這個 C 往往是記不起來的,但如果一開始用戶逐字選取,
亦即在 BB 只出現 B 時就選取 B' 然後再打 C ,則 A, B', C 這個組合往往能被
正確記憶。實際發生原因在此不討論,但跟底層所用的組字網架的架構有關。確實
要改進的話得要從底層重新架構來下手,但至少目前這個模型給的建議偏保守,不
至干擾原有的預設選字。衡諸得失,這個模型提供一些邊際上的改善,應該還是值
得採用的。
2022-01-06 18:28:37 -08:00
ovadmin a17438b67a 修正一些選字機制 C++ 檔案 #include 不完整的問題 2022-01-06 18:28:37 -08:00
ovadmin 3760d24350 移除早期的候選歷史記憶機制
這個機制從未正式發布,設計本身也有很多缺陷,因此決定移除。
2022-01-06 18:28:29 -08:00
Weizhong Yang a.k.a zonble 8fd9808f56 Merge pull request #206 from zonble/dev/esc_to_clean_buffer
Adds an option to let users to clear entire buffer using ESC key
2022-01-05 01:18:43 +08:00
zonble c32e216a6f Updates the README file for system requirement. 2022-01-02 22:23:04 +08:00
zonble 69a6ac6d67 Updates CI settings. 2022-01-02 22:13:14 +08:00
zonble 23100153cc Adds an option to clear entire input buffer by ESC key.
This fixes #146.
2022-01-02 22:09:23 +08:00
zonble dae5246af6 Merge branch 'master' of github.com:openvanilla/McBopomofo 2022-01-02 21:32:23 +08:00
Lukhnos Liu 25ea443891 Correctly locate a candidate panel's screen
Previously only the x value was used to determine the screen to which a
candidate panel should below. That was incorrect. The entire point needs
to be considered.

This fixes the same issue that affected OpenVanilla:
https://github.com/openvanilla/openvanilla/issues/49
2021-11-24 23:22:29 -08:00
Lukhnos Liu 5ff3efb385 Revert "Stop using IMK's showPreferences:"
This reverts commit 69e463958e.
2021-11-24 21:16:20 -08:00
Lukhnos Liu 65b106ce88 Remove manual line wrapping in README
This makes sure that Chinese paragraphs flow correctly without the
extraneous space between the last character of a line and the first
character of its suceeding line that is still in the same paragraph.
2021-11-24 10:13:56 -08:00
Lukhnos Liu 28d56669d8 Update README 2021-11-24 10:09:47 -08:00
Lukhnos Liu c7225f9caf Add LICENSE.txt 2021-11-24 10:04:29 -08:00
Lukhnos Liu 9380f20754 Update README 2021-11-23 23:13:01 -08:00
Lukhnos Liu ad81de87a0 Bump version to 1.1 2021-11-23 22:55:21 -08:00
Lukhnos Liu 3a027ba8fb Update copyright years 2021-11-23 19:04:42 -08:00
Lukhnos Liu 75b4bfac31 Localize new strings
Also fine-tune the Chinese Conversion menu item text.
2021-11-23 19:04:42 -08:00
Lukhnos Liu 69e463958e Stop using IMK's showPreferences:
This turns out to be unreliable on macOS 12.
2021-11-23 19:04:42 -08:00
Lukhnos Liu c1bea8c382 Fix IME activation issues on macOS 12
We now let the Installer to call the TextInputSources API. Since macOS
12, users are prompted to allow enabling of third-party IMEs in
Preferences.app the momemnt TISRegisterInputSource or
TISEnableInputSource is called. By moving the activation to the
Installer, a user will clearly see that it's the Installer that wants to
enable the IME.

In addition, we had to make necessary changes so that on macOS 12 and
later, the Installer always enable the default input source. This is due
to the observation that the kTISPropertyInputSourceIsEnabled becomes
unreliable on macOS 12--it may be true even if the user has removed the
input mode from their active input mode list in Preferences.app.
2021-11-23 19:04:42 -08:00
Lukhnos Liu b85029dec1 Fix non-existent font in .xib 2021-11-22 20:51:24 -08:00
Lukhnos Liu b9a54a8614 Update to recommended Xcode settings 2021-11-22 20:21:49 -08:00
zonble 164705e6f3 Allows users to use left and right key to go to another candidate page in the vertical candidates list.
This fixes #61.
2021-11-20 22:43:23 -08:00
zonble 453d69201e Updates CI settings. 2021-11-20 22:43:23 -08:00
zonble e27f5babe1 Allows auto-commiting the first candidate when users input a punctuation in plan BPMF mode. 2021-11-20 22:43:23 -08:00
zonble 385638c3b9 Allows commit the first canidate while typing a punctuation in plain BPMF mode. 2021-11-20 22:43:23 -08:00
zonble c17d991718 Also applies Chinese conversion on popped text.
Fixes issue #172.
2021-11-20 18:14:08 -08:00
zonble a7627f8dc7 Allows users to use left and right key to go to another candidate page in the vertical candidates list.
This fixes #61.
2021-11-12 01:15:06 +08:00
zonble 2784a0814a Updates CI settings. 2021-11-12 00:56:11 +08:00
zonble 9a51910584 Merge branch 'master' of github.com:openvanilla/McBopomofo 2021-11-12 00:46:17 +08:00
Weizhong Yang a.k.a zonble a976e4c54a Merge pull request #170 from zonble/dev/selection_key
Adds selection key settings in the preference window.
2021-11-12 00:38:22 +08:00
zonble 21252e6c55 Removes NSUserDefault for selection key if a user chooses to use the default setting. 2021-11-12 00:36:41 +08:00
zonble da8e6c6fa5 Adds selection key settings in the preference window. 2021-11-12 00:02:01 +08:00
zonble e22efd4e90 Allows auto-commiting the first candidate when users input a punctuation in plan BPMF mode. 2021-11-11 23:02:18 +08:00
zonble dbf6e91d11 Allows commit the first canidate while typing a punctuation in plain BPMF mode. 2021-11-11 02:22:19 +08:00
Weizhong Yang a.k.a zonble c9f3e02f2c Merge pull request #167 from zonble/master
Add Chinese conversion function by bridging SwiftyOpenCC
2021-11-11 00:31:51 +08:00
zonble 723a8402ab Fixes typos. 2021-11-11 00:14:49 +08:00
zonble 36a5eee37f Updates CI settings. 2021-11-10 21:57:45 +08:00
zonble 1f8cd8d06f Updates SwiftOpenCC. 2021-11-10 21:38:04 +08:00
Weizhong Yang a.k.a zonble 789ea50213 Merge pull request #1 from Superbil/master
Fix wrong path about OpenCCDictionary.bundle
2021-04-19 01:10:49 +08:00
Superbil 64dd47f090 Fix wrong path about OpenCCDictionary.bundle 2021-04-17 07:21:30 +08:00
zonble c8bad0913b Removes unused code. 2021-03-01 22:48:46 +08:00
zonble f6c36fe325 Bridges SwiftyOpenCC to create a simple Chinese convertion function. 2021-03-01 22:43:02 +08:00
zonble 4e27b5ecfa Adopts modern Objective-C syntax. 2021-02-28 22:45:36 +08:00
zonble 6341270696 Coverts to Objective-C ARC. 2021-02-28 21:38:59 +08:00
zonble 0f05e245a5 Coverts to Objective-C ARC. 2021-02-28 21:30:10 +08:00
zonble aa8f36b92f Updates CI settings. 2020-12-21 00:34:25 +08:00
zonble 7626d21a90 Merge branch 'master' of github.com:openvanilla/McBopomofo 2020-12-21 00:31:49 +08:00
Lukhnos Liu b754acdf07 Bump to version 1.0 2020-10-28 12:42:55 -07:00
Weizhong Yang a.k.a zonble a2e55af30d Merge pull request #158 from lukhnos/icon-and-ui-update
Icon and UI update to prepare for the 1.0 release
2020-10-24 15:59:34 +08:00
Lukhnos Liu 9cbcee5b1f Bump to 1.0-beta3 to prepare for 1.0 release 2020-10-19 20:27:33 -07:00