zonble
9b485b799c
Implements excluding phrases.
2022-01-12 00:16:55 +08:00
zonble
144d133463
Adds Language Model Manager.
...
The reference of the global language models were stored in the class
InputMethodController, however, the global models are global but not a
part of the input method controller, and the input method controller
only use one of the models (McBopomofo/Plain Bopomofo). I guess it
somehow violates SRP and there should be a better place for the global
models.
2022-01-11 17:12:58 +08:00
zonble
f339948219
Fixes duplicated code and typos.
2022-01-11 13:46:29 +08:00
Weizhong Yang a.k.a zonble
11d33c0b42
Merge pull request #212 from zonble/dev/swiftify
...
Converts most of the Objective-C classes into Swift
2022-01-11 02:53:32 +08:00
Weizhong Yang a.k.a zonble
b6ad33967a
Merge pull request #211 from zonble/master
...
Fixes the bug that I forgot to create the user phrases folder.
2022-01-11 02:44:48 +08:00
zonble
df3914eeed
Fixes a minor bug in the new Swift app delegate.
2022-01-11 02:35:31 +08:00
zonble
a7b2edcf26
Converts AppDelegate to Swift.
2022-01-11 02:22:13 +08:00
zonble
52bf2d67c5
Updates copyright information.
2022-01-11 01:13:28 +08:00
zonble
61e2751702
Converts candidate UI to a Swift package.
2022-01-11 01:07:17 +08:00
zonble
867a828722
Fixes minor layout issues.
2022-01-11 00:47:48 +08:00
zonble
f7e927d67d
Starts to use Swift candidate UI.
...
There are bugs still.
2022-01-11 00:30:02 +08:00
zonble
a97cc5ca6c
Converts VerticalCandidateController to Swift.
2022-01-11 00:03:32 +08:00
zonble
5aafe64751
Starts to convert candidate UI to Swift.
2022-01-10 22:01:40 +08:00
zonble
ba6889fa63
Converts OVInputSourceHelper to Swift.
2022-01-10 22:01:40 +08:00
zonble
84849bdb3d
Converts the preference and non modal view controller to Swift.
2022-01-10 22:01:40 +08:00
zonble
75a0f68a9c
Fixes the bug that I forgot to create the user phrases folder.
...
There was a legacy user override model which creates a folder and a
plist file. If a user uses McBopomofo for years, the folder would
exist. However, when the old override model was removed, I forgot
to create the folder for the new user phrase file.
The bug would let the users with new installation of McBopomofo unable
to add user phrases.
2022-01-10 21:59:18 +08:00
zonble
6bdd2aab44
Fixes a bug on building the unigrams.
2022-01-09 13:00:19 -08:00
zonble
b4276f0488
Fixes a bug on building the vector for unigrams from both global language model and user phrases.
2022-01-09 13:00:19 -08:00
zonble
1e5bad20c2
Removes unused references.
2022-01-09 08:38:32 -08:00
zonble
5b72e48a4e
Minor fine-tunes on the preference window.
2022-01-09 08:38:32 -08:00
zonble
0af238ef79
Cleans-up unused logs.
2022-01-09 08:38:32 -08:00
zonble
3763688275
Fixes a typo.
2022-01-09 08:38:32 -08:00
zonble
a5247d958c
Makes it able to reload user phrases.
2022-01-09 08:38:32 -08:00
zonble
e909dc20b5
Uses user phrases in the block builder.
2022-01-09 08:38:32 -08:00
zonble
6f761ecbcd
Implements adding phrase from shift and arrow keys.
2022-01-09 08:38:32 -08:00
zonble
358462dff1
[WIP] Starts to work on the user phrases.
2022-01-09 08:38:32 -08:00
Weizhong Yang a.k.a zonble
39cdc7d73d
Merge pull request #207 from openvanilla/rebased-user-override-model
...
Implements an exponential decay-based user candidate override model, rebased from #135
2022-01-07 13:20:52 +08:00
ovadmin
789d2a5687
計算選字事件時,若遇到常用標點,將標點視為句尾
...
如此一來標點後的單字詞,在計算時,等同於句首第一詞。
2022-01-06 18:28:37 -08:00
ovadmin
aeb774a8ed
小幅重構重複的程式碼
2022-01-06 18:28:37 -08:00
ovadmin
2e8e78971c
傳統注音不要記住用戶選字
2022-01-06 18:28:37 -08:00
ovadmin
eef6f8c0ce
加大用戶選字詞模型的容量跟半衰期
2022-01-06 18:28:37 -08:00
ovadmin
3e0e859feb
將用戶選字記憶機制整合入 InputMethodController
2022-01-06 18:28:37 -08:00
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